node.js
?export
in the URL or Rasterizer
starter.md.html Default web template with monospace/'ASCII' fallback |
slate.md.html Dark mode API documentation style |
company/whitepaper/company-whitepaper.md.html, company-whitepaper.css, company-logo-256.png, company-background.png Corporate whitepaper template for online viewing and PDF generation. Download all four files and then replace the logos with your own. Matches the Company API template. |
company/api/company-api.md.html, company-api.css, company-logo-512.png Corporate API template for online viewing. Download all three files and then replace the logo with your own. Matches the Company whitepaper template. |
journal.md.html For daily project journaling |
newsmag.md.html A template in the style of a news magazine, with drop caps, multiple subtitles, and modern fonts. |
website.md.html Simple website example with a left-hand navigation menu and top banner |
apidoc.md.html API documentation style (by Aras Pranckevičius) |
latex.md.html LaTeX article formatting with fast load (no flashing). Note that you can use LaTeX math in any Markdeep document. This template is for those who like LaTeX's default style as well. |
dark.md.html Black background with aggressive styling and fast load (no flashing) |
slides.md.html Template for generating PDF slideshows. See also Markdeep-slides |
.md.html
. <!-- Markdeep: --><style>body{visibility:hidden;white-space:pre;font-family:monospace}</style><script src='markdeep.min.js' charset='utf-8'></script><script src='https://morgan3d.github.io/markdeep/latest/markdeep.min.js' charset='utf-8'></script><script>window.alreadyProcessedMarkdeep||(document.body.style.visibility='visible')</script>
The overriding design goal for Markdown's formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it's been marked up with tags or formatting instructions.
?noformat
to the end of its URL. config.cson
file. Add the following entry: markdown-mode.el
in ~/emacs.d/
and add the following lines to your ~/.emacs
file: fn + return
for insert. Or, in Emacs, use M-x overwrite-mode
to toggle overwriting.C-x (
, some key strokes, and then C-x )
. Press C-x e
to play back the macro, and keep repeating e
to keep executing it. I use this to eliminate the manual work of repetitive actions, for example, adding a space on the left of an object and deleting one on its right to shift the object right.http://foo.bar/index.md.html?export
shows the HTML output. noformat
export
window.markdeepOptions
object to determine its behavior. The legal options are: mode
'markdeep'
- the default: process the document as Markdeep'script'
- do not modify the document'html'
- process the document as HTML with embedded Markdeep nodes'doxygen'
- process special tags in Doxygen documentationlang
<meta>
tag in the document.) Look at the value of the global variable FRENCH
in the source code to see the structure of this Object. tocStyle
'auto'
- Adjust based on the length of the document. (Default)'none'
- Do not show a table of contents'short'
- Show a short table of level-1 headers on a line across the top of the document'medium'
- Float a small-font full table of contents to the right of the abstract'long'
- Insert a full table of contents in normal font size as the first section after the abstractscrollThreshold
scrolled
class should be added to the body
element. This is useful for creating CSS styles for web page headers that present differently when the document is first shown versus scrolled down to the contents. The default is 80. definitionStyle
'auto'
- Adjust based on the longest definition in each list. (Default)'short'
- Always format as a table, where definitions are in a column on the left.'long'
- Always format using a hanging indent, where the definitions are under the terms.hideEmptyWeekends
true
. detectMath
true
. If true, when LaTeX math surrounded by $..$
, (..)
, or begin{..}..end{..}
is encountered, the MathJax processor is automatically loaded from their CDN. Set to false
if you don't use math notation, host MathJax locally and include it using a script tag yourself, or use an alternative math processor. showLabels
false
. Display all labels for Figures, Listings, and Tables, as well as URLs for images with captions, the document itself, and links. This is useful when printing proofs of book chapters. sortScheduleLists
true
. Sort schedules in order of increasing date, regardless of the order in which events appear in the source document. captionAbove
diagram
, image
, listing
, and table
to Booleans. Each defaults to false
, meaning that captions appear below (after) the objects. Set values to true to move the captions above (before) the objects. Example: markdeepOptions.captionAbove.listing = true
. In the Markdeep source document, captions must always appear after the object. This option only affects where they appear when the document is viewed. onLoad
linkAPIDefinitions
false
. If true, inline code referencing a `variable` or `function()` is linked to a definition list that also uses inline code formatting for that `variable` or `function(args..)`. There must be no space between a function name and the opening paren. Names must be fully qualified. inlineCodeLang
'Python'
or 'C++'
. If set, `inline code`
set off in back-ticks is be syntax highlighted using that language. A specific span can be forced to a language by using the HTML syntax, e.g., <code lang=Python>..</code>
. Does not affect fenced code blocks. smartQuotes
true
. If true, double ASCII quotation marks are converted to proper Unicode quotation marks by detecting which side of a word they are on. # OS X:
/Applications/Google Chrome.app/Contents/MacOS/Google Chrome --headless --print-to-pdf=output.pdf input.md.html
# Windows:
C:Program FilesGoogleChromeApplicationchrome.exe --headless --print-to-pdf=output.pdf input.md.html
# Linux:
google-chrome --headless --print-to-pdf=output.pdf input.md.html
http
or https
protocol URL, or a file
protocol URL. You may need to host the markdeep.min.js
script in the same directory as your content for local files, depending on your browser and system configuration. join.py
to concatenate multiple Markdeep PDF chapters for a thesis or book with the single-line command: '/System/Library/Automator/Combine PDF Pages.action/Contents/Resources/join.py' -o merged-file.pdf file1.pdf file2.pdf ..
?export
option produces raw HTML export in a browser, which you can then manually copy or save. For automated HTML export, see this guide that uses Firefox and another JavaScript file. markdeep-rasterizerby Romain Guy.
body
tag: <script>window.markdeepOptions = {mode: 'html'};</script>
<script src='markdeep.min.js'></script>
<markdeep>
tags as Markdeep (which may include embedded diagrams enclosed in asterisks), <diagram>
tags as Markdeep diagrams (which do not need enclosing asterisks), and leave any other content in the document unmodified as HTML. <pre>
and <pre>
tags. Doxyfile
: HTML_FOOTER = footer.html
EXAMPLE_PATH = markdeep-dir
ALIASES='copy{1}=htmlonly <script>document.write('<div style='display:none;visibility:hidden;'>');</script> endhtmlonly image html 1 n htmlonly <script>document.write('</div>');</script> endhtmlonly '
markdeep-dir
is the location of your optional Markdeep overview documentation files relative to the Doxyfile
. footer.html
is your custom footer, which must include the following lines: <script>window.markdeepOptions = {mode: 'doxygen'};</script>
<script src='markdeep.min.js'></script><script src='https://morgan3d.github.io/markdeep/latest/markdeep.min.js'></script>
<pre>
and <pre>
tags to add Markdeep content. Regular markdown will continue to be processed by Doxygen outside of those tags as well. htmlinclude
command. To make Doxygen copy images referenced from your Markdeep documents to your documentation output directory, use the copy
command in any Doxygen file. architecture.png
, make a mainpage.dox
that contains: /** mainpage
copy{architecture.png}
htmlinclude mainpage.md.html */
<script>window.markdeepOptions = {mode: 'script'};</script>
<script src='markdeep.min.js'></script><script src='https://morgan3d.github.io/markdeep/latest/markdeep.min.js'></script>
window.markdeep
: function format(src, elementMode)
elementMode
defaults to true, which surpresses page titles and a table of contents. Set elementMode = false
if processing a whole document at once. Section captions are unaffected by this argument. function formatDiagram(str, alignment)
alignment
is an optional String value for the float
attribute of the SVG node. It may be 'left'
, 'right'
, or undefined
. function stylesheet()
Returns the Markdeep default stylesheet used for short documents. Markdeep adds extra spacing around the title when formatting a large document.
https://morgan3d.github.io/markdeep/VERSION/markdeep.min.js
You can modify the Markdeep line at the bottom of a document to hardcode to a specific version instead of the default version of 'latest
'. https://morgan3d.github.io/markdeep/latest/markdeep.min.js
. <code lang=language>..</code>
. inlineCodeLang
option for syntax highlighting all inlined code. [x]
or [X]
for completed tasks. markdeepOptions.smartQuotes
for disabling proper double quote conversion.(insert .. here)
. insert..here
features. (insert..here)
in html mode. (insert..here)
. linkAPIDefinitions
no longer links APIs that appear in headers. body
tag generated by Markdeep now has the ID md
to allow style files to distinguish between HTML mode and Markdeep mode output. `
to prevent inline code processing. <style>.md .imagecaption,.md .tablecaption,.md .listingcaption{width:100%}</style>
at the bottom of the document.class=pixel
support for pixel-art images.[]
..md svg.diagram .opendot
to be solid white again.linkAPIDefinitions
option for creating Doxygen-link internal links when writing code documentation.2 x 4 x 6
→ 2 × 4 × 6.definitionStyle
for controlling definition list layout. markdeepOptions.scrollThreshold
and .md body.scrolled
for CSS to detect scrolling. .tocTop
hidden link in the table of contents for CSS to expose for websiteswebsite.md.html
templateslate.md.html
templatejournal.md.html
template◌--○ ◍--●
code
not break within words. export
mode now preserves newlines. thetai
, thetao
, d{x}
Latex macros. <title>
that don't render correctly in browser tabs. <big>
.#
in them. *
pagebreak
requiring other characters on the same line[x]
github style task lists (insert .. here)
statements in a documentapidoc.md.html
sample not flash the raw source on load(include here)
with implicit email links. figure
variants Warmist
apidoc.css
style. <--
and -->
arrows in body text. apidoc.css
stylesheet and corresponding template by Aras Pranckevičius. <p>
tags being generated near section headers. <http://..>
to force it to be part of the URL. tocNumber
to support hiding them. (insert)
to use cloudflare. wkhtmltopdf
instructions to work around bugs in their 0.12.4 version. <a>
tags to work around a longstanding wkhtmltopdf
bug. captionAbove
option for figures, listings, and tables. (insert X here)
statements triggering multiple tables of contents. showURLs
to showLabels
and made it display both labels and URLs. Contentstext in the table of contents.
un
Latex macro for units in math. pagebreak
, newpage
, and page breaks with ++++++++
.dark.css
style sheet print with a white background. markdeep.min.js
script with a trailing ?
, to force updates under new aggressive browser caching Figure [dinosaur](a)
showURLs
option protect
accidentally generating sequences that look like dimensions. youtu.be
URL shortened videoslang
advanced optiontocStyle
advanced option__FILE__
, from being parsed as linesmarkdeepOptions.lang
and <meta ..>
(#)
?export
option to extract raw HTML font-rendering: antialiased;
for lighter fonts max-width
and width
on images style
tags<code>
blocks from processing ~~~~
code blocks appropriately for listings, while leaving ````
blocks unadorned:
-indented lines script
tag workaround for C++ template/Java generic syntax in code examples with capitalized classes markdeepOptions.detectMath
>
arrows in html mode x
into × in cases such as '1920×1080'md
class <head>
to make it easier to override _.- -._
?
and &
<em>
and <strong>
tags to allow reinterpretation of *em*
vs. _em_
syntax.>
and <
__
corners in diagrams