Фрагменты кода
Фрагмент кода можно добавить в текст или вынести в отдельный блок.
В тексте
Чтобы добавить фрагмент кода в текст, используйте символ `.
`Фрагмент кода` в тексте.
Результат:
Фрагмент кода в тексте.
Если текст содержит двойные фигурные скобки, но не предполагает подстановку переменной, добавьте перед конструкцией not_var.
Префикс not_var работает только для фрагментов кода, состоящих из символов .-|(),_, a-z, A-Z, 0-9 и пробелов.
Совет
Рекомендуется использовать не более 100 символов, так как текст в таком фрагменте не переносится. Для большего числа символов оформите код отдельным блоком.
Отдельным блоком
Чтобы оформить фрагмент кода как отдельный блок, отделите его от остального текста с двух сторон символами ```.
Для подсветки синтаксиса укажите в начальной строке язык, на котором написан код. Например:
```sql
price= '2000'
size= '24'
color= 'primary'
variant= 'detailed'
```
Список поддерживаемых языков
- apache;
- bash;
- coffeescript;
- cpp;
- cs;
- css;
- diff;
- go;
- http;
- ini;
- java;
- javascript;
- json;
- kotlin;
- less;
- lua;
- makefile;
- xml;
- markdown;
- nginx;
- objectivec;
- perl;
- php;
- plaintext;
- properties;
- python;
- ruby;
- rust;
- scss;
- shell;
- sql;
- swift;
- typescript;
- yaml.
Ознакомиться с полным перечнем доступных языков можно в GitHub.
Включение кода из файла
Чтобы включить содержимое локального файла как блок кода, используйте директиву {% code %}:
{% code "./examples/main.ts" lang="typescript" %}
Путь без начального / разрешается относительно Markdown-файла с директивой. Путь с начальным / разрешается относительно корня входной директории документации. Параметр lang задаёт язык блока для подсветки синтаксиса. Если параметр не указан, язык блока остаётся пустым.
По умолчанию из всех непустых строк удаляется общий отступ. Чтобы сохранить исходные отступы, добавьте параметр keep-indents:
{% code "./examples/main.ts" keep-indents %}
Параметр lines позволяет включить часть файла по двум подстрокам-маркерам, разделённым -. Строки с маркерами в результат не включаются:
{% code "./examples/main.ts" lines="[BEGIN example]-[END example]" %}
Если начальный или конечный маркер не найден, CLI выводит предупреждение и использует соответственно начало или конец файла. Если конечный маркер расположен раньше начального, CLI выводит предупреждение и создаёт пустой блок кода.
Директива читает только локальные файлы внутри входной директории. Внешние HTTP- и Git-источники, автоматический выбор именованных регионов и jsonpath не обрабатываются OSS CLI. Отсутствующий файл или выход пути за пределы входной директории приводят к ошибке сборки.
Отображение номеров строк
Если необходимо включить отображение номеров строк в блоке кода, используйте ключевое слово showLineNumbers.
Пример использования:
```sql showLineNumbers
price = '2000'
size = '24'
color = 'primary'
variant = 'detailed'
```
Результат:
1 price = '2000'
2 size = '24'
3 color = 'primary'
4 variant = 'detailed'
Перенос строк по умолчанию
Чтобы включить перенос строк (soft wrap) по умолчанию в блоке кода, используйте ключевое слово wrap.
Пример использования:
``` wrap
Очень длинная строка в блоке кода, которая точно не поместится в длину, если её искусственно не свернуть
```
Результат:
Очень длинная строка в блоке кода, которая точно не поместится в длину, если её искусственно не свернуть
Префикс командной строки
Используйте параметр prompt="<значение>", чтобы исключить префикс командной строки ($, #, >>>, mysql> и др.) из выделения и копирования через виджет.
Пример использования:
```bash prompt="$"
$ npm install
$ npm run build
```
Результат:
npm install
npm run build
Совет
Эта возможность особенно полезна для сниппетов. Если блок кода содержит только команды, без их вывода, то пользователь может скопировать всё содержимое одной кнопкой и вставить в терминал — не выделяя строки по отдельности.