#html #unix #markdown
#HTML #unix #markdown
Вопрос:
Мне нужно обрабатывать Markdown в командной строке, поэтому реальных языковых ограничений нет.
Дополнительные функции, такие как красивые кавычки и тире, являются желанным дополнением. Блоки кода необходимы, но я думаю, что они являются частью ядра.
Я хочу выводить только в формате HTML, и я работаю в среде Unix.
Ответ №1:
Pandoc позволяет конвертировать Markdown в HTML (и обратно!) и многое другое.
Комментарии:
1. Отличный документ, имхо, один из лучших в любом месте (сама по себе зрелость — это просто старость)
Ответ №2:
$ pandoc --help
pandoc [OPTIONS] [FILES]
Input formats:
native, json, markdown, markdown lhs, rst, rst lhs,
textile, html, latex, latex lhs
Output formats:
native, json, html, html lhs, s5, slidy, docbook,
opendocument, latex, latex lhs, context, texinfo,
man, markdown, markdown lhs, plain, rst, rst lhs,
mediawiki, textile, rtf, org, odt, epub
Options:
-f FORMAT, -r FORMAT --from=FORMAT, --read=FORMAT
-t FORMAT, -w FORMAT --to=FORMAT, --write=FORMAT
-s --standalone
-o FILENAME --output=FILENAME
-p --preserve-tabs
--tab-stop=NUMBER
--strict
--normalize
--reference-links
-R --parse-raw
-S --smart
-5 --html5
-m[URL] --latexmathml[=URL], --asciimathml[=URL]
--mathml[=URL]
--mimetex[=URL]
--webtex[=URL]
--jsmath[=URL]
--mathjax[=URL]
--gladtex
-i --incremental
--offline
--xetex
--chapters
-N --number-sections
--listings
--section-divs
--no-wrap
--columns=NUMBER
--ascii
--email-obfuscation=none|javascript|references
--id-prefix=STRING
--indented-code-classes=STRING
--toc, --table-of-contents
--base-header-level=NUMBER
--template=FILENAME
-V KEY:VALUE --variable=KEY:VALUE
-c URL --css=URL
-H FILENAME --include-in-header=FILENAME
-B FILENAME --include-before-body=FILENAME
-A FILENAME --include-after-body=FILENAME
-T STRING --title-prefix=STRING
--reference-odt=FILENAME
--epub-stylesheet=FILENAME
--epub-cover-image=FILENAME
--epub-metadata=FILENAME
-D FORMAT --print-default-template=FORMAT
--bibliography=FILENAME
--csl=FILENAME
--natbib
--biblatex
--data-dir=DIRECTORY
--dump-args
--ignore-args
-v --version
-h --help
$ pandoc --version
pandoc 1.8.2
Compiled with citeproc support.
Compiled with syntax highlighting support for:
Actionscript, Ada, Alert, Alert_indent, Ansys, Apache,
Asn1, Asp, Awk, Bash, Bibtex, Boo, C, Changelog, Cisco,
Cmake, Coffeescript, Coldfusion, Commonlisp, Cpp, Cs,
Css, Cue, D, Desktop, Diff, Djangotemplate, Doxygen,
Doxygenlua, Dtd, Eiffel, Email, Erlang, Fortran, Fsharp,
Fstab, Gap, Gdb, Gettext, Gnuassembler, Go, Haskell,
Haxe, Html, Idl, Ilerpg, Ini, Java, Javadoc, Javascript,
Json, Jsp, Latex, Lex, LiterateHaskell, Lua, M3u,
Makefile, Mandoc, Matlab, Maxima, Mediawiki, Metafont,
Mips, Modula2, Modula3, Monobasic, Nasm, Noweb,
Objectivec, Objectivecpp, Ocaml, Octave, Pango, Pascal,
Perl, Php, Pike, Postscript, Prolog, Python, R,
Relaxngcompact, Rhtml, Ruby, Scala, Scheme, Sci, Sed,
Sgml, Sql, SqlMysql, SqlPostgresql, Tcl, Texinfo,
Verilog, Vhdl, Winehq, Wml, Xharbour, Xml, Xorg, Xslt,
Xul, Yacc, Yaml
Copyright (C) 2006-2011
Ответ №3:
Я использую python с http://www.freewisdom.org/projects/python-markdown / пока без каких-либо проблем, и у него простой механизм расширения.
Ответ №4:
Существует также Discount, реализация Дэвидом Парсонсом C языка Markdown text to html Джона Грубера. Скидка состоит из нескольких инструментов командной строки, включая markdown
, mkd2html
, makepage
mktags
и theme
.
Ответ №5:
Также рекомендую Pandoc с приведенными ниже преимуществами:
- подсветка синтаксиса кода в pandoc markdown отлично подходит для html, и она растет!
- поддержка pandoc markdown аналогична markdown на github
- другой формат вывода, помимо html, который, вероятно, вам понадобится позже, например, электронная книга
Он мощный!
Ответ №6:
Я не уверен, какой из них является наиболее поддерживаемым, и я, безусловно, пристрастен, используя его здесь чаще всего, но тот, который использует SO, также доступен на github, это проект markdownsharp, написанный на C # и довольно хорошо поддерживаемый.
Он исправляет многие ошибки в оригинальной реализации markdown, обнаруженные пользователями SO при задании вопросов, как и большинство других вещей, просто проект, который возник из необходимости. При этом некоторые из способов работы markdown разработаны в соответствии со спецификацией, но не обязательно интуитивно понятны, это прерогатива сопровождающих в отношении того, какие действия там предпринимать, интуитивный против spec…so возможно, вам придется немного скорректировать любую реализацию, чтобы получить именно то, что вы хотите в некоторых крайних случаях.
Комментарии:
1. Включает ли он bin для использования в командной оболочке? Также… Может ли он работать в Unix?
2. @Pepijn — Загружается только исходный код, но вы можете скомпилировать его, если у вас установлен .Net 4 (который вам все равно понадобится для запуска консольного приложения), не уверен, подходит ли вам этот вариант или нет… просто отвечаю в контексте вопроса «без языковых ограничений» 🙂 Лучшим подходом, IMO, было бы включить проект рядом с вашей консолью one…so вы можете более легко применять обновления, которые приходят вместе.
3. Так что для меня это, по крайней мере, означало бы Mono. Однако это может оказаться хорошим вариантом для других, поэтому я отдам вам предпочтение, но не / моему / принятому решению.
4. @Pepijn — Справедливо 🙂 Однако я бы отредактировал вопрос, предоставив немного больше информации о целевой среде, это поможет вам получить лучшие ответы 🙂
5. Выполнено. Пока есть только один другой ответ.