Как создать расширение жидкого тега, которое возвращает имя файла в Jekyll - PullRequest
9 голосов
/ 23 июля 2011

Это довольно простые вещи, я думаю, но я не мог понять, как это сделать.

То, что я хочу сделать, очень просто.

Используя систему плагинов Jekyll, яхочу расширить тег Liquid, чтобы вернуть имя файла сообщения.

{{% page.filename %}}

будет анализировать что-то вроде

jekyll-plugin.markdown

Ответы [ 2 ]

3 голосов
/ 25 июля 2011

Ну, это не совсем тот метод, который вы ищете, но вы можете просто включить имя файла в заголовки yaml для файла. Вероятно, это плохой выбор для файлов, которые вы будете перемещать и настраивать, но, поскольку кажется, что ответов не так много, может быть, этого достаточно.

1 голос
/ 06 июля 2012

Я думаю, что понял.Здесь я проверяю, есть ли в файле строка, содержащая «Filename:».Если нет, он помещает его во вторую строку с переменной имени файла.

#!/bin/bash
for file in $(ls *.md)
do
if grep -Fq "filename: " $file
then
   # code if not found
   echo "File: $file already processed"
else
    # code if found
    echo "Adding the line on file: $file"
    awk -v n=2 -v s="filename: $file" 'NR == n {print s} {print}' $file > tmp.txt
    mv tmp.txt $file
fi

done

...