Estoy intentando agregar una nueva publicación a mi sitio de Jekyll, pero no puedo verla en las páginas generadas cuando la ejecuto jekyll serve
.
¿Cuáles son algunas de las razones habituales por las que no se genera una publicación de Jekyll?
_posts
directorio.YEAR-MONTH-DAY-title.MARKUP
(tenga en cuenta la MARKUP
extensión , que generalmente es.md
o.markdown
)future: true
en _config.yml
(documentación)published: false
en su portada. Ponlo entrue
.:
personaje. Reemplácelo con:
. 3.8.3
(y probablemente en otros lanzamientos 'recientes').
future:true
sin ningún espacio después:
en_config,yml
conduce a ERR: Archivo de configuración: (NO VÁLIDO).future: true
la mayoría se utilizará en su lugar..markdown
extensión al nombre del archivo. Lo sé porque acabo de perder 5 minutos de mi vida por eso.Puede usar
jekyll build --verbose
para ver el proceso de construcción en detalle.Salida de ejemplo:
del registro que encontré jeklly omitido
2018-01-14-boot-android-on-charge.md
porque tiene una fecha futura.fuente
Una posible razón es que lo
date
especificado en la materia preliminar no contiene un desplazamiento de zona horaria, en cuyo caso se establece de forma predeterminada en UTC, no en la zona horaria de la máquina local como cabría esperar. Perdí una hora en esto hasta que UTC "alcanzó" mi zona horaria local actual, BST.No he encontrado una respuesta definitiva a esto, pero creo que la fecha en el asunto principal debe darse en UTC con un desplazamiento de zona horaria (que por defecto es cero si se omite).
También lo
date: 2018-05-03 12:34:27
es en UTC, independientemente del lugar del mundo en el que se encuentre y deltimezone
lugar en el que se encuentre_config.yml
.Así que tenga cuidado de especificar fechas y horas como esta:
fuente
date: 2018-05-03 12:34:27 +01:30
también parece funcionar. Tenga en cuenta los dos puntos adicionales.O también puede ser el caché del navegador si no está buscando en la carpeta _site sino directamente en la página principal del blog con la lista de publicaciones.
fuente
He escrito pruebas de Rspec para mi blog que expresan estas reglas:
Esto puede ser útil para otros, ya que estaba perdiendo mucho tiempo debido a errores tipográficos en la fecha, etc.
Estas pruebas junto con el resto de la configuración de Rspec se pueden ver en contexto aquí .
fuente
Solo para agregar una razón más, cuando mueves un artículo de
_drafts
a_post
, a veces necesitas eliminar el_site
para que el artículo se vuelva a generar.En mi caso, a menudo sucede que
_site
no se eliminará por completo antes de la regeneración, por lo que el nuevo artículo no aparecerá.De todos modos
rm -rf _site
ybundle exec jekyll serve
funciona :)fuente
Si no puede realizar el seguimiento del archivo en
--verbose
y si el archivo se ignora silenciosamente a continuación, pruebe a quitarcollections_dir
en elconfig.yml
archivo. Eso me resolvió el problema.fuente
Mi publicación tampoco apareció y el error fue que en mi nombre usé un punto, por ejemplo
2017-10-18-test.2.md
.Esto no se acepta, debe usar
2017-10-18-test2.md
.fuente
Si ha revisado su tema principal, y todo parece estar bien, e incluso
jekyll build --verbose
no revela nada (en mi caso, simplemente actuó como si el archivo no existiera, ni siquiera lo enumerara como excluido), verifique la codificación de su archivo. Aparentemente, debe estarUTF-8
sin firma. Si esUTF-8 BOM
(oUTF-8 with Signature
como lo llaman algunos editores de texto), será ignorado en silencio. Para empeorar las cosas, algunos editores mostrarán ambos tipos como justosUTF-8
, lo que hará que la diferencia sea aún más difícil de detectar.fuente