jekyll búsquedas

propósito

  • anotar las diferentes formas de buscar en jekyll

evaluación de metodo

  • que sea rapido

  • que tarde poco en indexar las nuevas entradas

    • en window.data
    • en feed.xml
    • meter algo como qwertypoiuy que no esta y a buscar
  • sigo con esta serie de entradas

    • sigo con esta entrada
    • decido llevarlo todo a esta entrada.

metodos

metodo con lunr.js

  • la de lunr.js descrita por cloudcannon
  • habia una funcionalidad que sacaba en negrita lo buscado ….
  • es de cloudcannon
  • la tengo en
C:\nube\MEGA\programacion\HtmlCssEstatico\jekyll\edition-jekyll-template>bundle exec jekyll serve --port 4006
  • usa lunr.js
  • la implemento en parabúsquedas
    • funciona la marca en lo encontrado

parabúsquedasLunr_jsSeleccion

  • se puede cambiar el numero de caracteres que muestra en
contentPreview = getPreview(query, item.content, 270),
  • al probarlo en notas-programacion da problemas y no encuentra nada
    • cambio en la parte donde se genera el json para buscar
{% raw %}
"content": {{ page.content | strip_html | replace_regex: "[\s/\n]+"," " | strip  | replace: ":" , " " | jsonify }},
"content": {{ item.content | strip_html | replace_regex: "[\s/\n]+"," " | strip | jsonify }}
{% endraw %}
  • y no tengo claro que funcione
  • deja de encontrar ….
  • intento quitar los emojis
  • linea 4176
  • lo que hay en aerobatic funciona mejor de lo que tengo desarrollado y con emojis
    • lo corrijo con la solución planteada en el reposicorio y la solución documentada en el repositorio bitbucket y ahora sale smile en vez de todo el html que daba problemas.
    • cuando sea estable lo pongo en el resto .
  • que no funciona con sitios privados
  • tiene anuncios
  • sigo con esta entrada
  • y este tutorial
  • inicio de comprobacion

inicioComprobacionGoogleConsole

comprobacionGoogleConsole

  • se ha comprobado correctamente pero o tarda mucho o no funciona 😠

metodo de kushagragour

  • con super-search.js y los
  • feed.xml

medoto de algolia

  • sigo el tutorial
  • me pide instalar DevKit
  • descargo DevKit-mingw64-64-4.7.2-20130224-1432-sfx
  • pero lo veo más complicado que lo que pensaba y hay que confiar en terceros.
  • algolia
    Re: Help me improve my documentation search :) Maxime Locqueville<documentationsearch@algolia.com> Ayer, 19:36 Hi there, Your website seems to be password protected so I can not configure the crawler. Docsearch works only with public accessible website.

metodo de sitesearch360

metodo de aerobatic

  • es un plugin nuevo de aerobatic
  • de fecha 05/05/2017
  • lo implemento pero me da un error al desplegar
    • 400
      • BAD REQUEST
      • No keyword search index exists for this app
      • no es un 404 parece que no encuentra sitemap.xml o no esta indicado donde buscar
  • cambio aerobatic.yml
id: dbf3aa20-6227-41c5-81ec-6a51a2e6e804
plugins:
  - name: basic-auth
    path: /
    options:
      username: $BASIC_AUTH_USERNAME
      password: $BASIC_AUTH_PASSWORD
  - name: custom-errors
    options:
      errors:
        404: errors/404.html
  - name: form-submit
    path: /contact-us
    method: post
    options:
      formName: contact-us
      redirectUrl: /pages/contact/thank-you
      recaptchaSecret: $6LfbTx4UAAAAAApFLsQDMhFwWDGZltxvogk3WLlH
      targets:
        - name: email
          subject: Demo contact-form submission
          recipients: [javieriranzo@hotmail.com]
  - name: keyword-search
    path: /search
    method: get
  - name: webpage
deploy:
  alerts:
    default:
      # You can specify one or both of these keys
      email:
        to: [javieriranzo@hotmail.com]
      
scanner:
  keywordSearch: {}
  • por
id: dbf3aa20-6227-41c5-81ec-6a51a2e6e804
plugins:
  - name: basic-auth
    path: /
    options:
      username: $BASIC_AUTH_USERNAME
      password: $BASIC_AUTH_PASSWORD
  - name: custom-errors
    options:
      errors:
        404: errors/404.html
  - name: form-submit
    path: /contact-us
    method: post
    options:
      formName: contact-us
      redirectUrl: /pages/contact/thank-you
      recaptchaSecret: $6LfbTx4UAAAAAApFLsQDMhFwWDGZltxvogk3WLlH
      targets:
        - name: email
          subject: Demo contact-form submission
          recipients: [javieriranzo@hotmail.com]
  - name: keyword-search
    path: /search
    method: get
  - name: webpage

scanner:
  keywordSearch: {}

deploy:
  alerts:
    default:
      # You can specify one or both of these keys
      email:
        to: [javieriranzo@hotmail.com]
  • para ver si en el siguiente despliegue funciona.

metodo de christianfei

  • otra forma de buscar que parece interesante
  • el tutorial
  • lo clono en C:\nube\MEGA\programacion\HtmlCssEstatico\jekyll\Simple-Jekyll-Search>

metodo con instantSearch

  • el script esta en el github de christian
  • resuelve la búsqueda de forma interactiva.
  • es rapida
  • el indice ya esta montado, no se crea al entrar en la página por lo que es más rápido.
  • modifico el ejemplo para que busque en posts y pages no solo en el título sino tambien en el contenido.
    • un pequeño problema con una página con dos date: 2016-11-05
    • a producción
    • en la wiki del autor tratan dos problemas que me he encontrado

sitio para probar

git remote add origin https://javieriranzo3@github.com/javieriranzo3/parabúsquedas.git
git config remote.origin.url https://javieriranzo3:pelos678@github.com/javieriranzo3/parabúsquedas.git

con tapir

  • en un blog de Pascal que usa tapir pero no creo que funcione con web protegidas dado que usa un feed que se indexa en su web.

metodo de Charles Michael

  • post de Charles Michael
  • proporciona el servicio de indexación mandandole un email a través de github pero de momento sólo vale para sitios hospedados en githubPages

pendiente

  • hacer una page sobre los métodos de búsqueda
    • esta page 😄

problemas

  • mucha atención a cuando realmente cambian los archivos y la búsqueda pues se puede quedar la versión anterior, pensar que esta correcto y luego dar el problema.
  • búsquedaEnPosts.html:4173 Uncaught SyntaxError: Unexpected identifier
    • son los emojis que no se porque salen en window.data como class emoji y sin escapar las comillas
    • quito el inclusión e jemojis en el _config.yml y en Gemfile pues en parabúsquedas no los tiene y funciona bien
  • el almacen de datos a buscar en el metod avanzao search_1 es window.data y en el anterior es window.store
  • net::ERR_QUIC_PROTOCOL_ERROR
    • pero no se vuelve a repetir