2012-06-16 9 views
7

Recién llegado a Jekyll aquí (anteriormente en Hyde).¿Cómo puedo depurar complementos que se ignoran silenciosamente?

  • Los archivos ruby ​​colocados en el directorio _plugins/aparentemente se ignoran silenciosamente.
  • Estoy usando la versión 0.11.2 de Jekyll, con ruby ​​1.8.7 en Ubuntu 12.04.

¿Se debería agregar un parámetro de configuración adicional para cargar estos complementos? El documento no lo dice; el valor predeterminado correcto debería ser buscar en _plugins, y deberían requerirse automáticamente. ¿Cómo se puede depurar la carga de complementos de Jekyll?

Respuesta

2

Para mi instancia de jekyll (también 0.11.2, pero con ruby ​​1.9.2p290 en una Mac), no tengo que agregar ninguna configuración adicional, pero puede intentar agregar la siguiente línea a su nivel superior " _config.yml "archivo.

plugins:  _plugins 

o, posiblemente,

plugins:  ./_plugins 

La forma más sencilla de comprobar que sus plugins están trabajando es eliminar todos ellos a excepción de uno que sabe que trabajar. He reunido lo siguiente que funciona como se esperaba en mi instalación.

  1. Crear un nuevo archivo en la raíz de su directorio de origen Jekyll llamado "plugin_test.md" con el siguiente contenido:

    --- 
    layout: default 
    title: Plugin Test 
    --- 
    
    the quick brown fox jumps over the lazy dog. 
    
    Testing plugin output of '_plugins/testplugin.rb': {% testplugin %} 
    

    Tenga en cuenta que puede que tenga que cambiar "diseño: por defecto" para lo que sea que estés usando en realidad.

  2. Crear un nuevo archivo en "_plugins/testplugin.rb" con el siguiente contenido: Jekyll

    module Jekyll 
        class TestPlugin < Liquid::Tag 
        def render(context) 
         "It's Working!" 
        end 
        end 
    end 
    
    Liquid::Template.register_tag('testplugin', Jekyll::TestPlugin) 
    
  3. ejecutar en su directorio de fuentes.

Todo lo que hace es reemplazar testplugin.rb instancias de la etiqueta de líquido {% testplugin %} con el texto "Está funcionando!". Si sus complementos están provocando, verá la salida

Testing plugin output of '_plugins/testplugin.rb': It's Working!" 

en la página "plugin_test.html" en la raíz del sitio de salida. Si ve:

Testing plugin output of '_plugins/testplugin.rb': 

significa que el complemento no se activó. Si te topas con eso, creo que es una señal de que algo está bastante fuera de control y recomendaría reinstalar a jekyll.

1

Sé que estoy un poco tarde, pero para los demás que aún se encuentran con esta pregunta, me gustaría agregar mi resolución: Reinicie el servidor para que el complemento recién agregado funcione. Así que pare jekyll serve (Ctrl C) y reinícielo de nuevo con jekyll serve.

Cuestiones relacionadas