This page lists specific formatting instructions for tldr
pages.
The basic format of each page should match the following template:
# command-name
> Short, snappy description.
> Preferably one line; two are acceptable if necessary.
> More information: <https://example.com>.
- Example description:
`command -opt1 -opt2 -arg1 {{arg_value}}`
- Example description:
`command -opt1 -opt2`
There actually is a linter/formatter that enforces the format above. It is run automatically on every pull request, but you may install it to test your contributions locally before submitting them:
npm install tldr-lint
tldrl -f {{page.md}}
For other ways to use tldrl
, such as linting an entire directory, check out (what else!)
tldr tldrl
.
Your client may be able to preview a page locally using the --render
flag:
tldr --render {{page.md}}
User-provided values should use the {{token}}
syntax
in order to allow tldr
clients to highlight them.
Keep the following guidelines in mind when choosing tokens:
{{source_file}}
or {{wallet.txt}}
.snake_case
for multi-word tokens.iostat {{2}}
rather than iostat {{interval_in_secs}}
.{{filename}}
rather than {{file_name}}
.{{path/to/<placeholder>}}
,
except when the location is implicit.get {{/path/to/remote_file}}
.{{path/to/file_or_directory}}
.Extensions
unrar x {{compressed.rar}}
.{{.ext}}
, but only if an extension is required.
For instance, in find.md
's example "Find files by extension" (find {{root_path}} -name '{{*.ext}}'
)
using {{*.ext}}
explains the command without being unnecessarily specific;
while in wc -l {{file}}
using {{file}}
(without extension) is sufficient.ddrescue --force --no-scrape /dev/sda /dev/sdb
write ddrescue --force --no-scrape {{/dev/sdX}} {{/dev/sdY}}
and use the {{/dev/sdXY}}
placeholder for block devices instead of /dev/sda1
.{{arg1 arg2 ...}}
If one of multiple options is possible, write it as {{either|or}}
.In general, tokens should make it as intuitive as possible to figure out how to use the command and fill it in with values.
Technical wording on description lines should use the backtick
syntax.
Use backticks on the following:
package.json
, /etc/package.json
..dll
.ls
.When declaring a list of 3 or more items, use a serial comma, also known as the Oxford comma, since omitting it can create ambiguity.
Delete the Git branches, tags and remotes.
The example above does not use a serial comma, so this could mean one of two things:
tags
and remotes
.This can be resolved by inserting a comma before the "and" or "or" in the final element in the list.
Delete the Git branches, tags, and remotes.
When Chinese words, Latin words and Arabic numerals are written in the same sentence, it takes more attention to copywriting.
The following guidelines are applied to Chinese (zh) and traditional Chinese (zh_TW):
列出所有 docker 容器
rather than 列出所有docker容器
.宽度为 50 个字
rather than 宽度为50个字
.容量 50 MB
rather than 容量 50MB
.50°C
and 50%
rather than 50 °C
and 50 %
.开启 shell,进入交互模式
rather than 开启 shell ,进入交互模式
嗨,你好。
rather than 嗨, 你好.
将代码转化为 Python 3.
rather than 将代码转化为 Python 3。
Facebook
rather than facebook
, fb
or 脸书
.In order to maintain readability and normalization, please comply the 6 rules above as much as possible when translating pages into Chinese.
For more information and examples of Chinese-specific rules, check out Chinese Copywriting Guidelines.