위키like 문서 환경 세팅 유랑기

hoodiiens-TEXT·2022년 5월 7일
1

시작은 개인 개발용 기획서 작성, 또는 소설에 쓸 세계관 작성용 앱 찾기였다. 하지만 세상에 그런건 없었고 최대한 생각한 것과 유사한 환경을 구축하기 위해 고군분투 했던 1~2달 간의 유랑기를 기록한다.

요구 사항

  • 마크다운으로 작성가능한 환경(혹은 그에 준하거나 높은 편의성을 제공하는 텍스트 에디팅 솔루션)
    • 위지위그 텍스트 편집 툴은 바로 보기 좋고 직관적이지만 컨플루언스 or MS-Office 사용 시 늘 아쉬운 점은 전체 포매팅을 바꿔야 할 때 하나하나 바꿔줘야 하는 노가다가 필요하고, 내가 의도하지 않은대로 동작하는 경우가 많다. 어느 정도 적절하면서 심플한 문서 구조를 지원하며, 일괄적으로 바꿀 수 있는 마크 다운 에디팅 환경은 1순위 조건이었다.
  • 커스텀 가능한 에디팅 환경과 프리뷰
    • 폰트와 사이즈, 줄 간격에 좀 예민하다. 내가 원하는 줄 간격, 폰트, 하이라이트 컬러 등을 설정할 수 있어야 했다. 특히 에디터에 민감하다. 난D2Coding성애자이기 때문에 에디터에서도 폰트, 테마, 신탁스 컬러링을 커스텀할 수 있는 기능이 필요했다.
  • 위키 식 페이지 관리
    • 페이지를 나눠 작성하고 그 사이에 링크를 편하고 자유롭게 설정할 수 있어야 한다.
  • 편하고 간단한 이미지 첨부
    • 아무렇게나 드래그 드롭으로 넣고 위치 크기 조정하는 정도는 바라지 않았다.
      파일을 업로드하거나 문서 폴더에 넣고, 문서에서 다시 이미지 넣는 스크립트 넣고, 이미지 경로 넣는 등의 수고를 줄여줘야 한다.
  • 우선 비공개. 필요 시 공개로 전환이 용이하도록
    • 일단은 취미 생활의 일환이니까 혼자 쓰고 혼자 관리하고 싶었다. 나중에 마음이 바뀌면 가능한 쉽게 공개 플랫폼에 큰 품을 들이지 않고 전환할 수 있었으면 좋겠다 싶었다.
  • 가급적 무료일 것
    • 이건 일단 취미다. 취미는 저렴할 수록 좋다. 만약 솔루션만 충분히 좋다면 월5$까지 지출은 할 수도 있다고 기준을 잡았다.
  • 버저닝
    • 타자의 신이 찾아와서, 글을 마구잡이로 쓰다 보면 텍스트가 난잡해지고, 다시 정리할 필요가 있다. 그리고 그동안 어떠게 글이 변해왔는지 확인하고 필요하다면 구버전으로 되돌릴 수 있는 방법이 필요했다. 앞서 마크 다운 환경이 필요한 것도 md파일 내부는 plaintext에 가깝기 때문에 버전 비교에서 변경점을 확인하고 수정하기 용이한것도 있다.
  • 지속적인 유지/보수/업데이트가 될 만한 플랫폼
    • 내가 원하는 기능이 더 늘어날 수 있고, 호환성도 영구하다고 장담할 수 없다. 지속적인 유지 보수가 이루어지는 툴이 필요했다.
  • 멀티 플랫폼 지원 : Windows와 MacOS면 충분
    • 폰으로 장문의 글을 쓰는걸 좋아하지 않는다. 오타가 많이 나기도 하고 편집 속도도 느리고. 가장 중요한 점은 아무리 세상이 좋아져도 키보드의 달그락 거리는 소리가 나는 좋다

시작. RPG 세계관 설정용 각종 웹 서비스, 앱

처음엔 RPG 세계관 설정용 템플릿 같은걸 찾아 봤었다.

  • http://www.makewith.me/
    • RPG 베이스의 소설 설정용 템플릿을 많이 지원한다. 하지만 마크 다운이 아니고, 폰트가 한정적. 모바일 서비스가 베이스라 웹으로 보면 모바일 화면을 3열로 배치한 구성이다. 내가 원하는 사용성은 아니라 패스
  • https://www.worldanvil.com/
    • TRPG용 세계관 작성 서비스. 역사 타임라인, 동물(계통도도 지원) 다른 문서로의 링크 지원. 인터랙티브한 맵등 생각할 수 있는 RPG용 기능들이 모두 있다. 하지만 영어의 압박이 있고, 기능들이 탄탄한 만큼 제한도 강해 패스. 유료 서비스도 미묘하게 비쌌다.

이 때 쯤 들어서 내가 원하는 건 좀 더 자유롭게 작성 가능한 문서or위키에 가깝다고 생각이 들었다.

데스크탑 설치형 위키

  • https://zim-wiki.org/ 거의 최적 솔루션에 가까웠던 프로그램.
  • 마크 다운에 가까운 포매팅을 지원하지만 위지위그에 가까운 편집 환경이라 탈락.
  • 저장되는 문서 파일은 txt라 깃 프로젝트에 넣어 사용한다면 변경 점 관리는 쉬워 보였다.
  • 깃헙 프로젝트를 보면 지속적인 관리는 예상됨. 간단한 텍스트 편집과 위키가 필요하다면 고려해볼 만한 솔루션

서버 설치형 위키

여기서부턴 어느 정도 서버 구축 지식과 환경 구성에 대한 노력이 들어간다.

  • mediawiki
    • 일단 세팅이 어렵고, 필요해 비해 너무 무겁고, 문법이 복잡하다.
  • Dokuwiki
    • 가볍고 내가 가진 NAS에서 손쉽게 설정이 가능했지만, 드럽게 안 이쁘다. 마크다운은 플러그인으로 지원하지만, 에디팅 하면서 프리뷰를 볼 수가 없는 것 같다.
  • wiki.js
    • 도커를 통해 비교적 쉽게 세팅 가능
    • 위키 서비스가 기본적으로 제공하는 버저닝, 문서 관리등 용이
    • 찾아본 오픈 소스형 위키 중엔 가장 이쁘고 기능도 많고, 위지위그도 지원하지만, 마크다운도 매우 잘 지원했다.
    • 그러나, 문서를 만들 때 마다 문서 제목과 페이지 네임을 별도로 입력해야 했다. 문서 만들 때마다 매번 이러면 곤란하다.
    • 그리고 가장 치명적인 에디터 폰트 커스텀 불가. 앞서 말했다 시피 나는 한글을 지원하는 고정폭 폰트인 D2Coding 글꼴 성애자다. 깃헙에서 프로젝트 포킹해서 코드를 뒤져 봤지만 내 실력으로 에디터 폰트 수정이 불가능해 포기했다.

내 최적의 솔루션 : VSCode + Markdown Preview Enhaced 플러그인 + GitHub

  • 마크 다운 완벽 지원
  • 프리뷰 포맷 커스텀 지원
  • VSCode의 당연하다면 당연한 막강한 에디터 기능 지원
    - 폰트, 사이즈 조정.
    • 각종 텍스트 편집 기능 (줄 복사. 이동
    • 들여쓰기 방식(스페이스 or Tab) 등 지정
    • 기타 등등
  • 프리뷰 뷰에서 PDF,Ebook,HTML등 다양한 포맷으로 익스포트 가능
  • 위키형 링크 지원(상대 경로와 파일 이름으로 링크 가능)
  • 체크 리스트, 다이어그램, 코드 블록 등 내 다른 작업등에서 쓸 수 있는 기능들 제공
  • 이미지 헬퍼라는 기능으로 이미지 집어 넣기 가능
  • github에 연동해 프로젝트와 버저닝 관리 기능이 매우 편함. VSCode와 한몸처럼 작동함
  • 그런데 환경 세팅 중 치명적 단점 발견
    • 마크 다운 프리뷰를 띄워둔 상태에서 다른 .md 파일을 열면 프리뷰 탭 그룹에서 열림.(편집 그룹, 프리뷰 그룹 분리 불가)
    • 플러그인 코드 뒤져 봄. 그냥 파일 열기만 수행하는 걸 확인
    • VScode 깃헙 이슈 페이지에 가서 원하는 탭에서 파일 열게 해달라고 기능 요청
    • "그거 비슷한 역할의 기능(원하지 않는 탭은 잠궈 더 이상 해당 탭 그룹에서 파일이 열리지 않도록 함)이 있는데 한번 써보지 않을래?"답변 옴
    • 써봤는데 정상적으로 작동 안함. "이거 이렇게 작동 안하는데요"추가 제보했더니 검토자가 코어 단의 코드에서 버그를 발견."와우 매우 큰 버그였는데 그레이트한 제보였다"하는 칭찬과 함께 고쳐줌
    • 해결!

현재 사용 현황

  • Github에 세계관 문서용 프라이빗 리포지토리 생성
  • VSCode, Markdown Preview Enhaced 플러그인 사용
  • markMarkdown Preview Enhaced 스타일 셋 수정하여 내눈에 이쁜 자간과 폰트 사이즈, 폰트로 커스텀
  • 글을 준내 쓰다가 저장하고 한번 씩 리포지토리에 모두 커밋
  • 편-안
  • 추가로 회사 업무 Todo-List도 같은 방식으로 사용 중.
    • Markdown Preview Enhaced 기능으로 프리뷰 모드에서 체크 박스를 클릭하면 .md 파일이 수정됨. 일감 관리하기 편함

미래

  • wiki.js가 커스텀 기능이 개발되고, 좀 더 유저가 많이 건드려서 편의성을 보강할 수 있다면, 그 쪽으로 옮겨가지 않을까 한다.
  • vsCode도 결국 사용하는 pc마다 환경을 설정해줘야 하고, git의 버전 관리는 문서가 아니라 결국 코드 텍스트 버저닝을 위한 것이니 조금 손이 가는 부분도 있기도 하니 아무래도 웹 기반으로 쓸 수 있는게 좋지 않을까 한다.
    - 하나 아쉬운게 이미지 넣는건 쉬운데, 크기 조절이 안된다. 손수 조절해줘야 하는 단점이 있음
profile
space and rule setter

0개의 댓글