|
1 |
| -# remark-latex |
| 1 | +# @paperist/remark-latex |
2 | 2 |
|
3 |
| -[![standard-readme compliant][standard-readme-badge]][standard-readme] |
4 | 3 | [![LICENSE][license-badge]][license]
|
5 | 4 | [![NPM][npm-badge]][npm]
|
6 |
| -[![CircleCI][circleci-badge]][circleci] |
| 5 | +[![standard-readme compliant][standard-readme-badge]][standard-readme] |
7 | 6 |
|
8 | 7 | [npm]: https://www.npmjs.com/package/@paperist/remark-latex
|
9 | 8 | [license]: https://3846masa.mit-license.org
|
10 |
| -[circleci]: https://circleci.com/gh/Paperist/remark-latex |
11 | 9 | [standard-readme]: https://github.com/RichardLitt/standard-readme
|
12 | 10 |
|
13 | 11 | [npm-badge]: https://img.shields.io/npm/v/@paperist/remark-latex.svg?style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAbUExURcwAAOeIiP////G7u/ri4tIZGdpFReJsbPC3t075sZwAAAAvSURBVCjPY2CgDWAThIMEsACjEhwIUCZg0dGCIqASwMAxMgXAgSzOwMAOC2TqAwBvzR4JxLaP0gAAAABJRU5ErkJggg==
|
14 | 12 | [license-badge]: https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAIGNIUk0AAHomAACAhAAA%2BgAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAVUExURSBTICJcIiNgIiZoJTuhNyt3Kf///%2BCqxSgAAAAGdFJOUwpclbn%2B4Fj6/H8AAAABYktHRAZhZrh9AAAACXBIWXMAAA3XAAAN1wFCKJt4AAAAB3RJTUUH4AkEEjEV7MDQQwAAAGBJREFUCNc1TUEKgDAMi07vE/Q%2BRD8g%2B4BbvAvi/79iMjDQJm1CC6BbDzRsZI3incIpYeYFhCaYnLiyPYnYkwWZFWoFHrSuttCmmbwXh0eJQYVON4JthZTxCzzAmyb8%2BAAKXBRyN6RyZQAAAABJRU5ErkJggg==
|
15 |
| -[circleci-badge]: https://img.shields.io/circleci/project/Paperist/remark-latex/master.svg?style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAAIGNIUk0AAHomAACAhAAA%2BgAAAIDoAAB1MAAA6mAAADqYAAAXcJy6UTwAAAAGYktHRP///////wlY99wAAAAHdElNRQfgCQQSJS8EYt6kAAAAiklEQVRIx2M41nqs9Xi9WDQh%2BjQQnDnz%2BS5x9KS9xJrLgN/CSXtJs5h0BzHQ1mLCDmEgL4jJpyl0AOG4JTYE4Q6gdqIi1UMM2F1OrE9xBy2xDmGgrs8wHU5nB2CGBNEOQPcBoaigThQA08AgS4QDkA3pXRChe4SBskqHiiUhreoEsmtDyhxEfKIFAG4yoGuqR9fTAAAAAElFTkSuQmCC |
16 | 13 | [standard-readme-badge]: https://img.shields.io/badge/standard--readme-OK-green.svg?style=flat-square
|
17 | 14 |
|
18 | 15 | > [wooorm/remark] plugin for latex
|
|
21 | 18 |
|
22 | 19 | ## Table of Contents
|
23 | 20 |
|
| 21 | +<!-- TOC depthFrom:2 depthTo:3 updateOnSave:false --> |
| 22 | + |
24 | 23 | - [Install](#install)
|
25 | 24 | - [Usage](#usage)
|
| 25 | + - [CLI](#cli) |
| 26 | + - [Syntax](#syntax) |
| 27 | + - [Configure](#configure) |
26 | 28 | - [Contribute](#contribute)
|
27 | 29 | - [License](#license)
|
28 | 30 |
|
| 31 | +<!-- /TOC --> |
| 32 | + |
29 | 33 | ## Install
|
30 | 34 |
|
31 | 35 | ```
|
32 |
| -npm i remark @paperist/remark-latex |
| 36 | +npm i remark remark-cli @paperist/remark-latex |
33 | 37 | ```
|
34 | 38 |
|
35 | 39 | ## Usage
|
36 | 40 |
|
37 |
| -```js |
38 |
| -const remark = require('remark'); |
39 |
| -const latex = require('remark-latex'); |
| 41 | +### CLI |
| 42 | + |
| 43 | +See [here][remark-cli] for more details. |
| 44 | + |
| 45 | +```bash |
| 46 | +remark -u @paperist/remark-latex document.md -o document.tex |
| 47 | +``` |
| 48 | + |
| 49 | +If you configure via `rc` file, you should type below. |
| 50 | + |
| 51 | +```bash |
| 52 | +remark -r ./remarkrc.yml document.md -o document.tex |
| 53 | +``` |
| 54 | + |
| 55 | +[remark-cli]: https://github.com/wooorm/remark/tree/master/packages/remark-cli#cli |
| 56 | + |
| 57 | +### Syntax |
| 58 | + |
| 59 | +Inspired by [pandoc-crossref]. |
| 60 | + |
| 61 | +[pandoc-crossref]: https://github.com/lierdakil/pandoc-crossref |
| 62 | + |
| 63 | +#### Image label |
| 64 | + |
| 65 | +```md |
| 66 | +{#fig:label} |
| 67 | +``` |
| 68 | + |
| 69 | +#### Equation label |
| 70 | + |
| 71 | +```md |
| 72 | +$$ math $$ {#eq:label} |
| 73 | +``` |
| 74 | + |
| 75 | +#### Table caption / label |
| 76 | + |
| 77 | +```md |
| 78 | +| a | b | c | |
| 79 | +|:---:|:---:|:---:| |
| 80 | +| 1 | 2 | 3 | |
| 81 | + |
| 82 | +: Caption {#tbl:label} |
| 83 | +``` |
| 84 | + |
| 85 | +#### Section label |
| 86 | + |
| 87 | +```md |
| 88 | +# Section {#sec:section} |
| 89 | +``` |
| 90 | + |
| 91 | +#### Code block label |
| 92 | + |
| 93 | +**Not implemented** |
40 | 94 |
|
41 |
| -const markdown = ` |
42 |
| -# Introduction |
| 95 | +#### References |
43 | 96 |
|
44 |
| -This paper proposes ... |
45 |
| -`; |
| 97 | +##### From label (e.g. Figure) |
46 | 98 |
|
47 |
| -remark().use(latex).process(markdown, (err, vfile) => { |
48 |
| - if (err) { |
49 |
| - console.error(err); |
50 |
| - } |
51 |
| - console.log(vfile); |
52 |
| -}); |
| 99 | +```md |
| 100 | +[@fig:label1] or [@fig:label1;@fig:label2;...] |
53 | 101 | ```
|
54 | 102 |
|
| 103 | +##### BibTeX |
| 104 | + |
| 105 | +```md |
| 106 | +[@jones99] or [@jones99;@smith06;...] |
| 107 | +``` |
| 108 | + |
| 109 | +### Configure |
| 110 | + |
| 111 | +#### Fields |
| 112 | + |
| 113 | +| Field | Description | |
| 114 | +| :----------: | :----------------------------------------------------- | |
| 115 | +| baseTemplate | The document template | |
| 116 | +| documentInfo | The data passed to the base template | |
| 117 | +| imageConfigs | `\includegraphics` configs | |
| 118 | +| templatesDir | Template folder for AST (See [`templates`][templates]) | |
| 119 | + |
| 120 | +[templates]: https://github.com/Paperist/remark-latex/tree/master/src/templates |
| 121 | + |
| 122 | +##### Templates |
| 123 | + |
| 124 | +You can use [ejs] template. |
| 125 | +remark-latex read `baseTemplate` and bind `documentInfo` to output. |
| 126 | + |
| 127 | +[ejs]: https://github.com/mde/ejs |
| 128 | + |
| 129 | +```latex |
| 130 | +%% TeX Template written by ejs format. |
| 131 | +
|
| 132 | +\author{<%= author %>} |
| 133 | +\title{<%= title %>} |
| 134 | +
|
| 135 | +\begin{document} |
| 136 | +
|
| 137 | +\maketitle |
| 138 | +
|
| 139 | +%% Render results will be exported as `body`. |
| 140 | +<%= body %> |
| 141 | +
|
| 142 | +\end{document} |
| 143 | +``` |
| 144 | + |
| 145 | +#### `remarkrc` |
| 146 | + |
| 147 | +You can configure via `rc` file (e.g. `remarkrc.json`, `remarkrc.yml`). |
| 148 | +See also [here][remarkrc]. |
| 149 | + |
| 150 | +```yml |
| 151 | +# Required |
| 152 | +output: true |
| 153 | +plugins: |
| 154 | + - "@paperist/remark-latex" |
| 155 | + |
| 156 | +# Optional |
| 157 | +# NOTE: You should put remark-latex configs under `latex`. |
| 158 | +settings: |
| 159 | + latex: |
| 160 | + baseTemplate: latex/template.tex |
| 161 | + imageConfigs: |
| 162 | + width: 0.9\linewidth |
| 163 | + documentInfo: |
| 164 | + title: A Survey on Markdown |
| 165 | + author: |
| 166 | + - John Smith |
| 167 | +``` |
| 168 | +
|
| 169 | +[remarkrc]: https://github.com/unifiedjs/unified-engine/blob/master/doc/configure.md |
| 170 | +
|
| 171 | +#### YAML Frontmatter |
| 172 | +
|
| 173 | +You can configure each files via YAML Frontmatter. |
| 174 | +See also [here][yaml-frontmatter] |
| 175 | +
|
| 176 | +
|
| 177 | +```md |
| 178 | +--- |
| 179 | +baseTemplate: ../latex/template.tex |
| 180 | +--- |
| 181 | + |
| 182 | +# Hello World |
| 183 | +Lorem ipsum dolor sit amet... |
| 184 | +``` |
| 185 | + |
| 186 | +[yaml-frontmatter]: https://github.com/wooorm/remark-frontmatter |
| 187 | + |
55 | 188 | ## Contribute
|
56 | 189 |
|
57 | 190 | PRs accepted.
|
58 | 191 |
|
59 | 192 | ## License
|
60 | 193 |
|
61 |
| -MIT © 3846masa |
| 194 | +![3846masa] MIT (c) 3846masa |
| 195 | + |
| 196 | +[3846masa]: https://www.gravatar.com/avatar/cfeae69aae4f4fc102960f01d35d2d86?s=50 |
| 197 | + |
0 commit comments