Если вы нажали на эту статью, вы, вероятно, знаете, что это за две технологии, но если нет, вот краткое объяснение:
Obsidian — это многофункциональный редактор уценок. Но это не просто редактор уценок. Это способ управления знаниями. Он отлично подходит для гибкой и нелинейной организации ваших мыслей.
Obsidian работает на всех платформах. Таким образом, вы можете писать статьи практически с любой платформы.
Я делаю в нем все свои заметки уже пару месяцев, и это потрясающе!
Hugo — это сверхбыстрый генератор статических веб-сайтов, созданный на golang. Я использую Hugo для своего блога уже почти 2 года. Недавно я сменил тему своего блога. Узнайте больше об изменениях New Look, новый старт.
В этой статье я не буду показывать, как настроить эти две технологии, а просто как заставить их работать вместе.
Если вы не хотите узнавать, как я настраиваю весь этот блог с помощью Hugo, Cloudflare и render.com, прочтите:Как я настраиваю этот блог бесплатно (домен, хостинг, SSL). Полное руководство
Если вам не нужно хорошее руководство по использованию обсидиана, прочтите: Начало работы — obsidian.md
Мои цели при настройке:
Мой текущий рабочий процесс работает следующим образом:
Если вы хотите пропустить часть путешествия, вы можете сразу пойти в The Sauce
Я расскажу о нескольких ошибках, которые я допустил при настройке.
Первой идеей, которая у меня возникла, было создать простую символическую ссылку (кстати, я использую Linux), которая связывала бы две папки вместе.
По сути у меня есть две папки:
blog/ vault/
Папка блога содержит все папки блога, а хранилище является моим личным хранилищем.
Символическая ссылка свяжет эти папки
blog/content vault/Blog
Однако проблема с символической ссылкой заключается в том, что содержимое папки не отображается в моем репозитории git. Это означает, что люди не могут предлагать изменения ни в одной из моих статей
Я хотел синхронизировать свои папки. Я попробовал написать пару bash-скриптов, которые автоматически синхронизировали две папки с помощью cronjob. Однако постоянная работа в фоновом режиме — это пустая трата ресурсов, когда я не пишу. Просто запустить скрипты через cli не так уж и гладко.
По сути, я это настроил так: у меня есть две папки:
blog vault
Папка блога содержит все необходимые файлы Hugo, а также имеет подкаталог Content, в котором хранятся все файлы блога с уценкой.
Я создал в своем хранилище новую папку под названием «Блог»
blog/content vault/Blog
После этого я скопировал все свои файлы из каталога контента в блог.
Тогда я начал писать эту самую статью
Мне нужен был способ настроить простой шаблон, который бы содержал все необходимое.
Это довольно просто.
Читайте о том, как настраивать шаблоны Шаблоны - obsidian.md
Я создал файл под названием «Сообщение в блоге» в папке «Шаблоны»
Шаблон сообщения в моем блоге содержит следующее:
--- title: "{{Title}}" description: date: "{{date:YYYY-MM-DD}}T{{time:HH:mm:ss}} 00:00" draft: true --- **If you enjoyed this article consider [supporting me](https://4rkal.eu.org/donate)**
У меня есть все необходимое, включая заголовок, описание и дату в формате, который запрашивает Хьюго.
Я также добавил небольшой текст пожертвования, который размещаю внизу каждой статьи.
Это значит, что я могу автоматически вставить этот шаблон в любой файл и начать писать!
Теперь я хочу, чтобы все мои файлы из моего каталога хранилища/блога были скопированы в блог/контент
Благодаря полезному пользователю Discord я нашел плагин obsidian-shellcommands.
ПРИМЕЧАНИЕ: этот плагин в настоящее время не очень хорошо работает с версией obsidian в формате Flatpak (поскольку Flatpak изолирует среду). Использование другой альтернативы (.deb или appimage), похоже, работает.
Он позволяет запускать команды оболочки в фоновом режиме с помощью горячей клавиши.
Для настройки выполните следующие действия:
В Linux/MacOS это:
cp -a ~/folder1/. ~/folder2/
в моем случае это cp -a ~/Documents/vault/Blog/. ~/Documents/blog2/content/
В Windows, скорее всего, это:
robocopy "%USERPROFILE%\folder1" "%USERPROFILE%\folder2" /E /COPYALL
После этого нам нужно установить горячую клавишу, которая будет запускать команду
Нажмите значок ( ), чтобы перейти к настройкам горячих клавиш и назначить горячую клавишу
Моя горячая клавиша — CTR 0 просто потому, что она была доступна.
Теперь каждый раз, когда я запускаю горячую клавишу, она копирует все мои файлы в папку Hugo, готовую к публикации
Я также хочу иметь возможность автоматически публиковать свои статьи. Но я хочу, чтобы это происходило нажатием горячей клавиши.
Я написал небольшой скрипт, который делает именно это:
#!/bin/bash cd ~/Documents/blog hugo git add . git commit -m "new" git push -u origin main
Этот скрипт создаст мой веб-сайт, зафиксирует его и отправит в репозиторий GitHub, где он будет взят и опубликован. Прочтите «Как я бесплатно настроил этот блог (домен, хостинг, SSL)» Полное руководство, чтобы узнать, как бесплатно настроить свой собственный блог.
Не забудьте сделать скрипт исполняемым, запустив
chmod x ./ВАШСКРИПТ.sh
Затем создайте новую команду оболочки для плагина командной оболочки (как мы делали раньше) и введите путь к вашему скрипту.
В моем случае это:
~/Documents/blog2/push.sh
Затем введите горячую клавишу, и все готово!
Теперь я могу просто открыть свое обсидиановое хранилище, создать новый файл, вставить свой шаблон, и вся информация будет введена автоматически.
Затем я пишу свою статью внутри обсидиана
Запустите мою горячую клавишу и скопируйте все файлы в каталог Hugo
Нажмите еще одну клавишу, и мой блог опубликован!
Если вам понравилась эта статья, поддержите меня
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3