sublime plugin pandoc converter
pandoc 사용
특정 문서 format 을 다른 문서 format 으로 변활할 때 사용한다.
여기서는 html 을 markdown 으로 변경하기 위한 용도로 사용하려 한다.
- https://pandoc.org/ : pandoc homepage
설치
홈페이지에서 download 를 해도 되고, chocolatey 를 사용해서 설치해도 된다.
choco install pandoc
version 확인
pandoc --version
사용
기본적으로 stdin 에서 input 을 받는다. 그래서 <
를
이용해서 input 을 넣어주고, output 을 >
을 이용해서 file
에 넣었다.
# markdown file 을 html 형식으로 변환
pandoc -f markdown -t html < test.md > a.html
file 을 직접 읽어서 html 로 변환하는 방법은 아래와 같다.
pandoc test.md -f markdown -t html -o test.html
만약 html 의 전체 구조를 만들고 싶으면 -s
option(standalone) 를 사용하면 된다.
pandoc test.md -f markdown -t html -o test.html -s
markdown
다양한 markdown 변형을 이용할 수 있다.
- markdown_phpextra (PHP Markdown Extra)
- markdown_github (deprecated GitHub-Flavored Markdown)
- markdown_mmd (MultiMarkdown)
- markdown_strict (Markdown.pl)
- commonmark (CommonMark)
- gfm (Github-Flavored Markdown)
- commonmark_x (CommonMark with many pandoc extensions)
Sublime Text Plugin
plugin 을 사용하면 sublime 에서 작성중인 특정 format 의 글을 다른 format 으로 손쉽게 바꿀 수 있다.
latex 수식넣기
이 때 달러 사인 사이에($...$
) latex 를 넣으면 pandoc 이
수식을 html 로 그려준다. 다만 모든 기호가 다 되는 것은 아닌듯 하다.
그래서 option 에 --mathjax
를 넣고 html 로 rendering 하고,
그 것을 mathjax 를 이용해서 변환해서 보여주는 방법이 나은 듯 싶다.
// sublimeText pandoc setting
{
"user": {
...
"pandoc-path": "d:/a/apps/Pandoc/pandoc.exe",
// transformations
"transformations": {
...
"HTML 5": {
"new-buffer": 1,
"scope": {
"text.html.markdown": "markdown"
},
"syntax_file": "Packages/HTML/HTML.tmLanguage",
"pandoc-arguments": [
"--to=html5",
"--no-highlight",
"--mathjax"
]
},
...
}
}
sublime package setting
- 2020-11-20 기준으로 pandoc 의 option 이 변경됐다. 그래서 package 를 쓰면 warning 이 뜨면서 실행이 안된다. 이 때 package setting 을 변경하면 된다.
c:\Users\<user_name>\AppData\Roaming\Sublime Text 3\Packages\Pandoc\Pandoc.sublime-settings
에서 option 을 변경해 주면 된다.- 또는 Preference --> Package Settings 에 가면 Pandoc 이 있다.
그것을 열어서 변경해도 된다.
// Pandoc.sublime-settings
{
// There are 2 possible top level settings keys, "user" and "default". If you
// use "default" in your user settings file, the default settings will be
// overwritten, but if you use "user" your settings will be merged into the
// default settings.
"user": {
// path to the pandoc binary. Default locations per platform:
// - mac
// "pandoc-path": "/usr/local/bin/pandoc",
// - windows
// "pandoc-path": "C:/Users/[username]/AppData/Local/Pandoc/pandoc.exe",
"pandoc-path": "c:/Users/username/AppData/Local/Pandoc/pandoc.exe",
// transformations
"transformations": {
// label of transformation, to appear in sublime quick panel. This should
// be a name related to the format of the output.
"Markdown (Pandoc)": {
// additional arguments passed to pandoc
// - --from is automatically set, see "scope" above
// - --to=FORMAT or one of its aliases is required
// @see http://johnmacfarlane.net/pandoc/README.html#options
"pandoc-arguments": [
"--to=markdown",
"--wrap=none",
"--markdown-headings=atx"
]
}
}
}
}
댓글 없음:
댓글 쓰기