마크다운은 마크업 언어의 일종으로 메모에 유리한 장점을 갖고 있다. 마크다운이란 무엇인지, 마트다운과 마크업 언어의 관계, 메모 작성에 마크다운이 좋은 이유, 마크다운 지원 생산성앱에 대한 이야기이다.
'마크다운' 이란
'마크다운' 이란 말을 처음 들은 것은 노션을 사용하면서부터인 것 같다. 메모앱을 여러 개 사용해 봤었지만 노션은 작성방식이 특이했다. 문장 앞에 특정 문자열을 입력해서 서식을 지정할 수가 있었다. 문자열을 붙이는 규칙이 '마크다운 문법'이라는 설명을 접했던 것이 처음이었다. Evernote, Ticktick에서도 노션과는 조금 다르지만 비슷한 규칙으로 마크다운 문법을 사용할 수 있었다. 그래서 '마크다운'을 디지털 문서작성 도구 중 일부가 지원하는 편집 규칙' 정도로 이해하고 있었다. 사용해 보니 기록에 상당한 장점이 있어 지금 소개를 하게 되었고 '마크다운'이 무엇인지도 찾아보았다. 나무위키의 설명을 쉬운 말로 바꿔서 설명하면 이렇다. '마크다운'이란 디지털 문서 작성에 사용하는 컴퓨터 언어의 일종으로 두 명의 개인 개발자가 만들었다. 기존에 있던 비슷한 컴퓨터 언어인 HTML과 비교해서 문서를 쉽게 읽고 쓸 수 있도록 하려는 것이 '마크다운'을 만든 의도이다. 우리가 컴퓨터 소프트웨어를 설치할 때 종종 보게 되는 README 파일을 만드는데 많이 사용하고 마크다운 형식으로 작성한 문서는 스크립트를 사용해서 HTML로 변환하는 것도 가능하다. 설명에서 '마트업 언어'라는 용어가 눈에 띄었다. 대구를 이루는 마크다운과 마크업. 그런데, 마크다운이 마크업의 반대되는 개념이 아니라 마크업의 하위 종류가 된다고 하니 이상했다. 다음 단락에서 '마크업 언어'에 대한 간단한 개념과 마크다운이라는 이름을 붙인 이유에 대해 정리해 보았다.
마크업 언어와 마크다운
마크업 언어와 마크다운은 맟 상반도는 두 개의 개념처럼 보인다. 하지만 '마크다운'은 마크업 언어의 일종이라고 한다. 마크다운이 마크업어인 셈이다. (말로 해 놓고 보니 이상하긴 하다.) 그럼 '마크업 언어'는 뭘까? 마크업 언어는 당연하게도 컴퓨터 언어의 일종이다. (마크다운이 컴퓨터 언어라고 설명했으니 상위 분류인 마크업 언어도 컴퓨터 언어가 되는 셈) 문서의 구조와 형식을 지정하는 규칙이라고 한다. 여기서 말하는 '문서'는 우리가 웹브라우저나 컴퓨터 문서 뷰어 소프트웨어에서 보는 '디지털 문서'를 의미한다. (여러 곳에서 설명을 찾아보았는데 종이 문서와 혼동될 수 있다는 생각 자체가 없는 듯 다들 '문서'라고만 표현하고 있었다. 나처럼 나이 든 사람만 이상하게 느끼는 걸까?) 예시로는 HTML 문법이 있다. HTML 문법은 웹브라우저가 인식할 수 있도록 웹페이지를 만드는 언어라고 생각했는데 '마크업 언어'라는 관점에서는 '완성된 문서 성과품'을 만드는 도구로 취급되는 것 같다. 우리가 보통 윈도우 메모장에서 사용하는 서식이 없는 단순 텍스트를 문서의 '내용'이라고 한다면 '마크업 언어'는 이 내용에 형식과 구조를 적용시킨 최종적인 문서 결과물을 만들어내는 도구인 것이다. HTML은 텍스트의 양 끝단에 정해진 문자열(태그)을 붙이는 방식으로 글씨 크기, 색깔, 줄간격, 표형식 등을 지정한다. 이렇게 작성된 HTML 문서 파일을 웹브라우저처럼 해당 형식을 지원하는 프로그램에서 열면 지정된 형식으로 표현된 문서를 볼 수 있다. 작성 단계에서는 '내용' 텍스트 문서에 HTML 태그들이 잔뜩 붙여진 형태가 된다. '마크업'이라는 표현은 원래 인쇄 업계에서 인쇄 시 참조할 사항을 원판 등에 표시하는 데서 유래했다고 한다. (내가 찾은 출처에서는 단지 '인쇄 업계의 용어'라고만 되어 있었지만 아마도 이런 의미였을 거라고 생각된다.) 기능이나 형태에 있어서 HTML과 같은 마크업 언어와 동일한 개념이다. 여기까지 찾아보고 나니 '마크다운'이라는 이름이 어떻게 붙여지게 됐는지 짐작이 간다. 마크다운은 HTML과 다르게 문장의 앞에만 태그 문자열을 붙인다. 그리고 규칙이 되는 문자열 자체도 입력이 편리하게 단순화되어 있다. 예를 들어 HTML에서 제목 서식은 크기에 따라 H1, H2, H3와 같이 입력되지만 마크다운에서는 # 기호를 1개~3개까지 붙여서 입력한다. 이렇게 되면 키보드 입력 시 손을 들어 이동시키는 동작이 줄어든다. 문서 전체로 보면 감소량은 상당해질 것이다. 그리고 다 작성된 문서를 열람할 때에도 태그가 문장 앞에만 달린 경우에는 일반 문서처럼 읽기가 상대적으로 훨씬 용이하다. 다시 말해 일반적인 마크업 언어(HTML)에 비해서 문서의 작성과 읽기가 용이해지는 것이다. 일반적인 마크업 업어의 형식과 부담을 줄인(Down) 마크 언어. 그래서 '마크다운'이라고 이름 붙인 것 아닐까? 확인할 곳은 없지만 강력하게 추정한다.
메모 작성에 마크다운이 좋은 이유
아마도 마크다운을 만든 사람은 웹페이지를 만들기 위한 초고를 텍스트로 작성하고 이를 HTML 코드를 붙이거나 에디터 프로그램을 사용해서 작성 결과를 일일이 확인해 가며 작업을 했을 것이다. HTML 코드의 형식은 표시하고자 하는 문장의 양 끝에 태그를 입력하는 방식인데 마크다운은 앞쪽에만 코드를 붙여주면 된다. HTML로 변경이 가능한 이유는 문장 앞에 붙은 고드에 따라 양쪽에 HTML 코드를 붙여주는 기능을 프로그램화했기 때문일 것이다. 이렇게 만들고 보니 HTML보다 일반 문서의 형태에 가까운 것이 되었고 마크다운 에디터에서 즉시 형식을 반영해서 보여주는 기능을 더하니 워드프로세서에 가까운 활용이 가능해진 것으로 보인다. 원래 웹사이트를 만들던 사람들이야 HTML보다 간단한 마크다운으로 문서를 작성하고 HTML로 변환시키는 것도 의미가 있겠고 그 자체를 기록물로 작성하고 열람하는 것이 작업 과정에서 편리한 면이 있겠지만 일반인들은 이걸 왜 쓰는 걸까? 이런저런 설명을 했지만 일반인 입장에서는 그냥 메모장에 텍스트를 쓰는 것과 본질적으로는 동일한데 서식을 넣기 위해서 문장에 기호를 붙이는 것보다 그냥 워드나 원노트 같은 에디터 프로그램을 사용하는 것이 편하지 않을까? 더구나 마크다운 에디터가 자동으로 적용된 서식을 보여주는 기능을 지원하지 않는 경우는 마크다운 코드로 문서를 작성한 후 에디터의 '미리보기' 기능이나 별도의 변환 도구를 사용해야만 코드가 적용된 결과를 볼 수가 있다. 이에 대한 답은 마크다운을 지원하는 에디터 프로그램(Notion, Evernote, Ticktick, Obsidiian 등)을 사용해 보면 알기 쉽다. 메튜에서 편집 기능을 지원하지만 마크다운 코드를 사용하면 메뉴를 일일이 선택할 필요 없이 문장을 쓰듯이 메튜 형식을 지정하면서 문서를 작성할 수 있다. 한마디로 키보드에서 손을 뗄 필요 없이 작업을 할 수 있는 것이다. 일반 워드 프로그램에서도 단축키를 사용해서 작성 효율을 높이는 것을 생각해 보면 쉽게 이해할 수 있다. 또 다른 장점은 편집프로그램에 귀속되지 않는 범용 문서를 작성할 수 있다는 것이다. 한국 행정기관에서 일반적으로 많이 사용하는 HWP 문서를 예로 들자면 해당 프로그램 사용이 많지 않은 조직에서 인허가 업무를 하다 보면 서식이 맞지 않아 불편을 겪는 일을 자주 보게 된다. 애플 기기 사용이 하나의 취향처럼 여겨지는 요즘에 와서는 직장 업무 때문에 윈도우PC를 하나 더 구매해서 쓴다는 사람들도 보게 된다. 메신저 단체 대화방에서 문서를 공유해야 할 때는 열람 편의성을 고려해 많은 경우 PDF 형식을 선택한다. 더욱 문제가 되는 경우는 개인 기록물 DB를 특정 형식으로 쌓는 경우다. 아이폰이 스마트폰을 널리 퍼트리기 이전에 palm pilot 이라는 개인 정보 관리 기기가 있었다. palm OS라는 모바일 기기 특성에 특화된 OS를 기반으로 다양한 메모 앱들이 개발되었었고 지금 스마트폰으로 그렇게 하는 것처럼 온갖 정보들을 축적해 이동 중에 열람하면서 활용했었다. 현재는 당시의 기록들을 열람하고 활용하기가 상당히 불편하고 오류라도 발생할 경우는 앱 개발사가 이미 사라진 상황이라 해결이 불가능할 수도 있다. 그런데 마크다운은 형식을 지원하는 다양한 편집 플랫폼이 존재하고 설사 지원 플랫폼이 단 하나도 없는 경우라 할지라도 코드 원문으로도 내용 확인이 수월하기 때문에 데이터 손실 위험을 대폭 줄일 수가 있다. 마크다운 자체에 대한 장점은 여러 가지가 있겠지만 메모 작성의 관점에서는 이 두 가지 장점이 가장 크다고 생각된다.
마크다운 지원 생산성앱
끝으로 마크다운 지원 생산성앱을 몇 가지 언급하는 것으로 글을 마무리하고자 한다. 나무위키에서 마크다운 항목을 찾아보면 GitHub, 위키, 블로그 등을 소개하고 있는데 개인적으로는 Notion, Evernote, Obsidian, Simplenote, Tiicktick 등을 추천한다. 각 서비스별로 마크다운 문법이 조금씩 다르기도 하고 순수한 마크다운 문법과 차이가 있기도 하지만 기본적인 사용법은 대동소이하다.