요즘, 대부분의 문서를 마크다운으로 작성하고 있습니다. 한컴 한/글로 작성하는 문서들도 과제를 할 때에는 조금 있지만 [Atom 에디터](https://atom.io/)를 쓰기 시작하면서, Github에 이번학기 노트정리를 올리기 시작하면서 정말로 마크다운을 많이 쓰기 시작했습니다. 정확히는, Github flavored markdown 이지만요. 1
## 마크다운
뭔 얘기인지 못알아들으시는 분들이 대부분이셨을 겁니다. 마크다운이란, 문서를 쓸 때 그 의미를 표현할 수 있는 문법 중 하나입니다. 위키문법 비슷한 것인데요, ...아 내가 왜 이걸 설명하고 있지
[가서 읽으세요.](http://rigvedawiki.net/r1/wiki.php/%EB%A7%88%ED%81%AC%EB%8B%A4%EC%9A%B4)
귀찮으신 분들을 위해 예를 들자면 단락 제목에 쓰인 `##`
는 2단계 단락 제목을 의미합니다. `#`
의 갯수에 따라 제목의 깊은 단계가 결정됩니다. 덧붙이자면 이 글도 마크다운로 쓰고 있습니다. *물론 **모양 강조는 수동으로** 하고있습니다. 이 부분은 후술할 겁니다.*
## 그거 왜 써요?
이런 걸 굳이 불편하게시리 왜 쓰냐면, 사실 **이게 더 편해서** 그렇습니다.
문서의 모양을 위해 워드프로세서 같은 시각적인 편집기를 쓸 수도 있지만, 일일히 클릭하고 그러기 귀찮죠. 그리고, 문서 편집기는 보는것도 힘들고 수정하는것도 힘들잖아요. 문서를 여는데도 plain text보다 오래걸리고요. 호환도 문제가 있고... ...여러가지 문제가 있습니다.
그에 비해, **평범한 텍스트에 의미를** 담으면서, 그러면서도 기존의 위키문법처럼 드럽게 어렵거나 하지 않고 **가독성**도 좋다면! 안 쓸 이유가 없죠.
거기에, 이걸 보기 좋은 모양으로 바꿔주는 툴은 널리고 널렸으니까요. 일단 Github 같은데서도 기본적으로 강조해주고, 요즘 작성되는 대부분의 Readme 파일은 모두 마크다운 형태를 띄고 있습니다.
사실 HTML도 일단은 그러기 위해서 나온건데, `<h1>이렇게 제목을 쓰면</h1>`
일일히 태그를 열고 닫는 걸 다 쓰기 힘들고 귀찮고, 또 **가독성도 개판**이죠.
![이 문서의 HTML모양](
)
## Github flavored markdown
사실 마크다운만으로도 충분히 좋긴 한데, 문법상 기능이 부족한 면이 좀 있습니다. 프로그램 코드를 공유하는 사이트인 Github 에서는 그래서 자체적으로 문법을 추가 / 개선한 버전을 공개했다... 라고 표현하면 되려나요? 아무튼 **기트허브판 마크다운** 이라고 생각하시면 쉽습니다.
가장 큰 점으로는,
```cpp
using namespace std;
int main() {
cout << "Hello World!" << endl;
return 0;
}
```
코드를 블록 형태로 표시할 수 있다던가, 거기다 문법 강조를 추가할 수 있다던가 *(물론 위 부분은 제가 에디터로 수동으로... 윽)* 가 있고요, 그 외에 표를 표현하는 기능 등이 없는데 이런 점이 추가되어 있습니다. 그외에도 좀 있죠. 체크 리스트라던가...
| 제목 | |
제목 2 | |
| 내용 1 | |
내용 2| |
깃헙 마크다운의 표는 이런 모양이지만 별 관심 없으실듯 (웃음)
+ 수정 : 사실 깃헙에서 문서를 볼 때에는 이러한 문법 정보는 숨기고 최종 결과물만 보여줍니다. 이렇게요.
![노트필기 저장소의 readme](
)
그 외에 뭔 얘기를 하려고 했더라...
## 티스토리에서 마크다운을 사용하지 않는 이유
2017.08.14 추가: 브라우저 확장기능 "마크다운 히어"라면 가능합니다.
> 이렇게 좋은데 안 쓸 이유가 어디있겠습니까.
라고 하면 있습니다. 티스토리에서 마크다운을 쓰기에는 불편한 점이 많습니다. 제가 원하는 마크다운으로 하는 블로깅은,
- - 원본 마크다운 문서가 보존되어야 함
- - 그러면서도 서버사이드에서 동작해야 함
- - **(어떤 경우에도 최종 사용자가 마크다운으롣 된 문서를 보아서는 안 됨)**
이러한 점을 만족해야한다고 생각합니다. 근데 그게 안 되거든요. 티스토리의 서버쪽 프로그램은 티스토리 프로그램을 관리하는 쪽, 그러니까 운영 / 개발진 측에서 다루는 거고, 이러한 기능을 추가하려면 가벼운 노력이 아닌 상당한 노력이 들 겁니다. 검토도 필요하고 할 일이 매우 많겠죠. 이러한 점을 알고있기에 징징댈 수도 없고요,
### 두 번째 사유 : 클라이언트 단에서 자바스크립트로 변환하는 방법은 왜 안 쓰나
그렇다고 클라이언트 사이드에서 동작하도록 스크립트를 추가하자니 뭔가 *더럽다는 느낌*이 들어서 말이죠. 마크다운을 사용자가 보는 시점에 HTML 문서로 변환한다면, 원래 지원하지도 않는데 괜히 끼워넣자니 고생도 심할테고, **스킨 바꿀때마다 다시 다 설정해줘야** 할테고 말이죠... 개뻘짓이죠.
### 첫 번째 사유 : 애초에 글을 쓸 때 변환해서 보내면 되지 않느냐 :
또 다른 방법이 있습니다만 이것도 별로 하고싶지 않네요. 어차피 여러분이 보시는 글은 위에 잠깐 보여드렸던 것처럼 HTML, 즉 웹의 표현법으로 된 문서입니다. 마크다운으로 된 글을 변환기를 통해 HTML로 바꿔서 HTML 편집 버튼을 눌러서 저장하면 쉽지만, 문제는,
그러면 **원본 마크다운 문서가 보관이 힘들잖아요.**
이것도 뻘짓이라고 생각합니다. 뭐 마크다운이 그렇게 좋으면 하겠습니다만 그럴 바에야 아예 블로깅을 안 하거나 블로그에 이미 있는 훌륭한 편집기를 쓰고 말겠죠.
![블로그에 이미 있는 훌륭한 에디터](
)
어... 그래서 위에서 얘기한다고 했던게 이건데요. 현재 보시고 계시는 이 글은 마크다운을 바로 체험하실 수 있도록 마크다운으로 쓰고 있지만 이걸 티스토리가 강조해주지는 않거든요. 그래서 저 훌륭한 에디터로 일일히... 수정을... 가하고 ... 있...습니.....(orz / 뭐 가독성도 떨어지고 보기 싫긴 한데 어차피 이 글에만 그 짓을 할 거고요. 별 상관 없겠죠. 의도가 의도다보니. 그 전에 스킨 가독성부터가 어느정도 개판이라서요. 하핳
## 프로그래머가 아닌 자가 Atom 에디터를 탐내는 이유
할 얘기는 슬슬 다 한 거 같으니 논외로 넘어가볼까요.
윈도우에 있는 메모장 프로그램도 있지만 보통 텍스트 편집 좀 한다는 사람들은 그런 거 잘 안 쓰죠. editplus(에딧플러스), notepad++(노트패드쁠쁠) 등을 쓰죠. 저도 노트패드++을 써왔습니다. 문법 강조도 되고 참 편했어요.
근데 노트패드++의 문제점이 있는데요, 마크다운 문법을 강조를 할 수는 있는데 내장된 기능이 아니라 직접 만드는데 고생이 조금 있었어요. 뭐, GUI 기반 편집이라 크게 어려움은 없었지만요. *(스샷을 올리려고 했는데 노트북에나 있네요. 호모나 세상에)*
근데 세상에... 내츄럴 본 개발자용! 개발자를 위한! 개발자로 인한! **해킹 가능한 편집기** *(여기서는 해킹이 **개조, 기능추가 등**을 의미합니다)* 가 있다지 뭐에요! 이게 [아톰](https://atom.io/)이에요. 기술적으로는 node (Node.JS 랑 nw.js 로 추정, 즉 크롬) 기반이고요. 그래서 설치해봤는데요.
![마크다운 강조된 모습의 미리보기 기능이 있는 atom 에디터](
)
어쩜 이렇게 어여쁠수가! 마크다운 미리보기 기능이 있네요! (단축키 : Ctrl + Shift + M) 현재는 업데이트로 미리보기 저장시 CSS도 같이 저장된다고 합니다. 필기하는 걸 옆에서 다른 분들이 보시더니 따라하시더라고요. 하지만 마크다운을 쓸 줄 모르면 그림의 떡이라는 사실이 안타까울 뿐입니다... 이렇게나 좋은데...
아 참, 스크린샷에서 언급된 [CJK 소프트랩 이슈는 이 쪽](https://github.com/atom/atom/issues/1783)입니다. 검색해봤더니 이미 누가 이슈를 열어놨더라구요. (이런 나님 깃헙 초보같으니 (orz
사실 아톰을 쓰면서도, Javascript는 잘 못하는지라 기능 추가 등의 면에서는 다른 분들이 만든 걸 가져다쓰고 있을 뿐이라 조금 아쉽긴 합니다. (웃음)
## 마크다운으로 하는 노트필기에 대한 잡담
제일 처음에 언급했던거 같은데, 이번학기 들어서 컴퓨터로 노트필기를 하게 되었습니다. 주로 노트북으로요. [저장소는 이 쪽이고요.](https://github.com/softblow/note-2015-01) 그에 따른 짧은 소감도 달아볼까 합니다.
수업 중 노트필기를 할 때, 대부분 **목록으로 만들어서 내용을 구조화**하는 편입니다. 이렇게 하면 기록하면서도 내용이 정리가 되거든요. *(사실 개인적인 취향...?)*
다만 안타까운 점은, 노트라면 그림을 그리거나 밑줄을 긋거나 하는 등의 편집이 자유로운텐데, 그러한 게 안 되고요, 특히 그림을 삽입할 때 **그림을 그려서 → 별도의 파일로 삽입** 해야 한다는 점이 상당히 번거롭더라구요. 위에서 삽입된 그림마다 `![]()
` 이런 문법 보셨죠?
그럼에도 불구하고, **필기 속도 자체가 굉장히 빨라지니까**, 더 많은 수업내용을 기록하게 되더군요. 원래부터 애초에 수업 내용의 대부분을 정리해서 기록하는 편이지만, 일일히 그걸 펜으로 쓰고있는 것보다 시간이 절약되니까요. 문제는 그 시간에 그만큼 더 쓰게 된다는 점이... ...글쎄요. 양이 많아진다는 점에서 이게 잘 하고 있는건지?
## 마무리
그런 거 없습니다. 할 말은 다 했네요. 앞으로도 마크다운 잘 쓸 거구요. 티스토리는 부디 위의 요구사항 두 가지를 만족하는 내장 마크다운 기능을 제공하실 수 있도록 지원해주시길. 아니면 옮겨갈지도 모르겠네요. 사실 블로그도 요즘 잘 안하니 별 상관은 없지만요.
어이구야 어느새 마무리글을 써버렸네
그럼 20k 트위터에서 봅시다
- 2017.08 추가: 요즘은 Visual Studio Code를 씁니다. Atom 안 깔아요. [본문으로]