A markdown linter for Bear

Francesco Puppo

Bear를 위한 마크다운 린터

Bear는 지금 나와 있는 마크다운 앱 중에서도 정말 아름다운 앱이에요. 가장 아름답다고 해도 과언이 아니죠. 기능은 꽤 제한적인데, 바로 그 덕분에 팀이 이렇게 완성도 높은 앱을 만들 수 있었어요.

하지만 마크다운은 금방 지저분해지곤 해요. 빈 줄이 여러 개 생기거나, 제목 계층이 뒤죽박죽이 되거나, 스마트 쿼트 같은 일관성 문제들이죠. 보통 사람이라면 신경도 안 쓸 일이지만, 저는 정말 너무 거슬리더라고요.

온라인에는 마크다운 린터가 많지만, Bear의 노트 데이터베이스와 연동되는 건 하나도 없었어요.

마침 Bear CLI와 Claude Code가 나온 김에 직접 해결해 보기로 했어요.

bear-lint는 새로 출시된 Bear CLI를 이용해 터미널에서 Bear 노트 하나 혹은 여러 개의 마크다운을 바로 고칠 수 있게 해줘요.1

단일 노트를 린트하려면 bear-lint <note-id>라고 입력하면 돼요…

단일 노트를 린트하는 bear-lint 스크린샷

…혹은 bear-lint --all로 모든 노트를 한 번에 린트할 수도 있어요.

모든 노트를 린트하는 bear-lint 스크린샷

같은 해시태그가 달린 노트만 골라 린트할 수도 있어요. bear-lint --all "#tag"를 사용하면 돼요.

노트를 직접 건드리지 않고 변경 내용을 먼저 확인하고 싶다면 -n/--dry-run을 추가하면 돼요.

스크립트를 실행해도 파일의 수정일은 바뀌지 않아요. 그래서 노트 순서는 그대로 유지돼요.

변경된 내용을 정리한 요약 노트를 Bear에 남기고 싶다면 -o를 추가해 보세요. #bear-lint 태그가 달린 노트로 생성돼요.

Bear 요약 노트 스크린샷

이 도구가 노트에 직접 쓰는 방식이라 출시 전에 제 라이브러리로 여러 번 돌려봤어요. 제대로 된 테스트 스위트도 갖춰 뒀고, 두 번 연속으로 실행해도 스스로 작업을 되돌리거나 중복 적용하지 않는지까지 확인했어요. 그래도 뭔가 잘못된 부분이 있다면 알려 주세요.

Github에서 확인해 보세요!

각주

  1. 그래서 Bear 2.8 이상이 필요해요

원문은 Francesco Puppo님이 에 게재했습니다.

이 글은 muse-spark-1.2-contributor 모델을 사용해 번역했습니다.