"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 내 Obsidian + Hugo 블로그 설정(단축키를 사용한 자동 게시)

내 Obsidian + Hugo 블로그 설정(단축키를 사용한 자동 게시)

2024-08-29에 게시됨
검색:368

My Obsidian   Hugo blogging setup (Auto publishing with hotkeys)

이 글을 클릭하셨다면 아마도 이 두 기술이 무엇인지 아실 것입니다. 하지만 모르신다면 여기에 간단한 설명이 있습니다:

흑요석

Obsidian은 기능이 가득한 마크다운 편집기입니다. 하지만 단순한 마크다운 편집기가 아닙니다. 지식을 관리하는 방법입니다. 유연하고 비선형적인 방식으로 생각을 정리하는 데 좋습니다.

Obsidian은 모든 플랫폼에서 작동합니다. 따라서 기본적으로 모든 플랫폼에서 기사를 작성할 수 있습니다.

몇 달 동안 모든 메모를 이 안에 기록했는데 정말 놀랍습니다!

휴고

Hugo는 golang으로 제작된 초고속 정적 웹사이트 생성기입니다. 나는 거의 2년 동안 내 블로그에 Hugo를 사용해 왔습니다. 최근 블로그 테마를 바꿨습니다. 변화된 New Look, 새로운 시작에 대해 자세히 알아보세요.

설정

이 기사에서는 이 두 가지 기술을 설정하는 방법이 아니라 두 기술을 함께 작동시키는 방법만 보여 드리겠습니다.

hugo, cloudflare 및 render.com을 사용하여 이 전체 블로그를 설정하는 방법을 배우고 싶지 않다면 이 블로그를 무료로 설정하는 방법(도메인, 호스팅, SSL) 전체 가이드를 읽어보세요.

흑요석 사용 방법에 대한 좋은 가이드를 원하지 않는다면 다음을 읽어보세요:시작하기 - obsidian.md

목표

내 설정 목표는 다음과 같습니다.

  1. 단일 흑요석 금고 사용
  2. 블로그 게시물에 사용할 수 있는 사용하기 쉬운 흑요석 템플릿이 있습니다.
  3. 개인용 볼트 폴더를 비공개로 유지하세요.
  4. 흑요석 단축키를 사용하여 자동 게시합니다.
  5. 사람들이 변경 사항을 제안할 수 있도록 모든 마크다운 파일을 공개 github 저장소에 보관하세요.

기존 설정

현재 작업 흐름이 작동하는 방식은 다음과 같습니다.

  1. 콘텐츠 폴더에서 기사를 편집합니다.
  2. hugo 명령을 실행합니다.
  3. github로 푸시하세요.
  4. Render.com은 자동으로 변경 사항을 선택하여 제공합니다.

여행

여행 부분을 건너뛰고 싶다면 The Sauce로 바로 이동하세요.

이 설정을 하면서 몇 가지 실수를 겪었습니다.

실수 #1

제가 가진 첫 번째 아이디어는 두 폴더를 함께 연결하는 간단한 심볼릭 링크(저는 Linux btw를 사용합니다)를 만드는 것이었습니다.

기본적으로 두 개의 폴더가 있습니다:

blog/
vault/

블로그 폴더에는 모든 블로그 폴더가 포함되어 있으며 저장소는 내 개인용 저장소입니다.

심볼릭 링크는 이러한 폴더를 연결합니다.

blog/content
vault/Blog

그러나 심볼릭 링크의 문제는 폴더 내용이 내 git 저장소에 표시되지 않는다는 것입니다. 즉, 사람들은 내 글에 대한 변경을 제안할 수 없습니다.

실수 #2

내 폴더를 동기화하고 싶었습니다. 나는 cronjob을 사용하여 두 폴더를 자동으로 동기화하는 몇 가지 bash 스크립트를 작성해 보았습니다. 그러나 계속해서 백그라운드를 실행하는 것은 글을 쓰지 않을 때 자원 낭비입니다. 단순히 cli를 통해 스크립트를 실행하는 것은 그렇게 순조롭지 않습니다.

소스

기본적으로 제가 설정한 방식은 두 개의 폴더가 있는 것입니다:

blog
vault

블로그 폴더에는 필요한 모든 Hugo 파일이 포함되어 있으며 모든 마크다운 블로그 파일을 보관하는 content라는 하위 디렉터리도 있습니다.

내 볼트 안에 Blog라는 새 폴더를 만들었습니다.

blog/content
vault/Blog

그 후 콘텐츠 디렉터리의 모든 파일을 블로그로 복사했습니다.

그런 다음 바로 이 기사를 쓰기 시작했습니다.

흑요석 템플릿

필요한 Hugo 머리말을 모두 포함하기 위해 간단한 템플릿을 설정할 방법이 필요했습니다.

아주 쉽습니다.

템플릿 설정 방법 알아보기 템플릿 - obsidian.md

내 템플릿 폴더에 Blog Post라는 파일을 만들었습니다.

내 블로그 게시물 템플릿에는 다음이 포함되어 있습니다.

---
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 플러그인을 찾았습니다.

참고: 이 플러그인은 현재 flatpak 버전의 흑요석에서 잘 작동하지 않습니다( flatpak은 환경을 격리하기 때문에). 다른 대안(.deb 또는 appimage)을 사용하는 것이 효과적인 것 같습니다.

핫키를 사용하여 백그라운드에서 쉘 명령을 실행할 수 있습니다.

이를 설정하는 단계는 다음과 같습니다.

  1. 플러그인 설치
  2. 플러그인 활성화
  3. 플러그인 옵션으로 이동
  4. 새 셸 명령을 클릭합니다.
  5. 이제 한 폴더에서 다른 폴더로 파일을 복사하려면 셸 명령을 입력해야 합니다.

Linux/MacOS의 경우:

cp -a ~/폴더1/. ~/folder2/

제 경우에는 cp -a ~/Documents/vault/Blog/입니다. ~/문서/blog2/content/

창에서는 아마도 다음과 같습니다:

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 ./YOURSCRIPT.sh

그런 다음 (이전에 했던 것처럼) shellcommand 플러그인에 대한 새 셸 명령을 생성하고 스크립트 경로를 입력하세요.

내 경우에는 다음과 같습니다.

~/Documents/blog2/push.sh

그런 다음 단축키를 입력하면 완료됩니다!

결론

이제 흑요석 금고를 열고, 새 파일을 만들고, 템플릿을 삽입하면 모든 정보가 자동으로 입력됩니다.

그런 다음 흑요석 안에 기사를 씁니다.

내 단축키를 실행하고 모든 파일을 Hugo 디렉터리에 복사하세요.

다른 키를 누르면 내 블로그가 게시됩니다!

이 기사가 마음에 드셨다면 저를 지원해 보세요.

릴리스 선언문 이 기사는 https://dev.to/4rkal/my-obsidian-hugo-blogging-setup-auto-publishing-with-hotkeys-365d?1에 복제되어 있습니다. 침해가 있는 경우에는 [email protected]으로 문의하시기 바랍니다. 그것을 삭제하려면
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3