What is LazyDown ?

LazyDown is a simple Markdown editor on Mac OS X. Features live preview, sync scroll, auto save, powerful actions, auto pair, custom themes and CSS, HTML and PDF export, enhanced CJK support and more.

btn_buynowcc_lg

Requires OS X 10.7+ / Yosemite Ready

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-15-%e4%b8%8b%e5%8d%883-33-37

Features

Markdown Rendering

Hoedown is used internally to render Markdown into HTML. This makes LazyDown’s live preview both efficient and very configurable. It also supports lots of non-standard syntactic features, including the very widely-used fenced code blocks with language identifiers. You can find all the available configurations in the Preferences.

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-15-%e4%b8%8b%e5%8d%885-50-45

Additional Rendering Tools

%e5%b1%8f%e5%b9%95%e5%bf%ab%e7%85%a7-2016-12-15-%e4%b8%8b%e5%8d%885-51-33

LazyDown provides various tools that add additional processing to the rendered HTML, including:

  • TeX-like math syntax, including $$...$$, \\[...\\], \\(...\\), and (optionally) $...$ blocks.
  • GFM task lists.
  • Jekyll front-matter.

… and more.

Syntax Highlighting

LazyDown offers syntax highlighting in fenced code blocks with language identifiers through Prism.

macdown-syntax-highlighting-demo

Currently the following language IDs are supported:

Language ID Notes
abap
actionscript
apacheconf Configuration syntax for the Apache HTTP Server.
apl
applescript
asciidoc
aspnet ASP.NET markup in .aspx files.
autohotkey
autoit
bash
basic
batch
bison
brainfuck
c
c++ Alias to cpp.
clike Generic syntax for C-like languages.
coffee Alias to coffeescript.
coffee-script Alias to coffeescript.
coffeescript
cpp C++
crystal
cs Alias to csharp.
csharp C#
css
d
dart
diff
docker
eiffel
elixir
erlang
fortran
fsharp
gherkin
git Syntax used in Git commit messages.
glsl
go
groovy
haml
handlebars
haskell
haxe
html Alias to markup.
http Syntax used in HTTP requests and responses.
icon
inform7
ini Windows INI format.
j
jade
java
javascript
jl Alias to julia.
js Alias to javascript.
json Alias to javascript.
jsx
julia
keyman
kotlin
latex
less
lolcode
lua
makefile
markdown
markup Generic *ML syntax, e.g. HTML, XML, etc.
matlab
mel
mizar
monkey
nasm The Netwide Assembler.
nginx
nim
nix
nsis
obj-c Alias to objectivec.
objc Alias to objectivec.
objective-c Alias to objectivec.
objectivec Objective-C.
ocaml
oz
parigp
parser
pascal
perl
php
powershell
processing
prolog
puppet
pure
py Alias to python.
python Python 2.
q
qore
r
rb Alias to ruby.
rest
rip
roboconf
ruby
rust
sas SAS. Not an alias to sass.
sass SASS (SASS)
scala
scheme
scss SASS (SCSS)
sh Alias to bash.
smalltalk
smarty
sql
stylus
swift Apple’s Swift programming language. Not the parallel scripting language.
tcl
textile
twig
typescript
verilog
vhdl
vim
wiki
xml Alias to markup.
yaml YAML

Contributing to the Language List

LazyDown accepts pull requests on aliases to existing languages, but not new syntax highlighting rules. If you wish to provide additional language definitions and/or themes, please visit Prism’s project page and submit them there. I will include updates from Prism after your pull request is accepted.

Auto-completion

I am spoiled, as a programmer, by some pretty advanced auto-completion various IDEs offer. I implemented LazyDown’s auto-completion to suit my own need. Hope it suits you too—or you can turn it off if you wish to.