Я начал использовать уценку, чтобы делать заметки.
Я использую отмеченный, чтобы просмотреть мои заметки уценки и его красиво.
Но поскольку мои записи становятся длиннее, мне становится трудно найти то, что я хочу.
Я знаю, что уценка может создавать таблицы, но может ли она создавать оглавление, переходить к разделам или определять разделы страницы в уценке?
В качестве альтернативы, есть читатели / редакторы уценки, которые могли бы делать такие вещи. Поиск был бы хорошей возможностью, чтобы иметь тоже.
Короче говоря, я хочу сделать его своим замечательным инструментом для создания заметок и функций, таких как написание книги и т. Д.
\tableofcontents
. Если колесо будет изобретено заново, предпочтительнее будет скопировать хорошие детали... contents::
.Ответы:
MultiMarkdown Composer , кажется, генерирует оглавление, чтобы помочь при редактировании.
Также может существовать та или иная библиотека, которая может генерировать оглавления : см. Расширение оглавления Python Markdown .
источник
Вы можете попробовать это.
источник
## Example ## "Example2" ## Third Example<a name="third-example" />
это единственный способ, которым я мог заставить его глотать пространства до сих пор. Конечно, третий тег будет интерпретирован как -#Third
- с последующим пробелом - затем словом Пример - в вашем фрагменте выше? Дефисы не работают вообще. Спасибо1. [Einführung](#einfuhrung)
Вот полезный метод. Должен производить кликабельные ссылки в любом редакторе MarkDown.
Производит:
Оглавление
Это введение
Некоторый вводный текст, отформатированный в стиле заголовка 2
Какой-то параграф
Первый абзац текста
Подпункт
Это подпункт, отформатированный в стиле заголовка 3
Еще один абзац
Второй абзац текста
источник
## <a name="foo" /> Foo
Для пользователей кода Visual Studio хорошая идея - использовать плагин Markdown TOC .
Чтобы установить его, запустите VS Code Quick Open ( Control/⌘+ P), вставьте следующую команду и нажмите ввод.
А для генерации оглавления откройте командную палитру ( Control/⌘+ Shift+ P) и выберите
Markdown TOC:Insert/Update option
или используйте Control/⌘+ MT.источник
[Section Foo](#foo-header-title)
и это даже работает вне режима предварительного просмотра (то есть в простой уценке).Вы можете попробовать этот скрипт ruby для генерации оглавления из файла уценки.
источник
ifndef
,include
иendif
, среди других директив препроцессора, в список запрещенных слов. Кроме того, определение списка вне области действия цикла избавляет от необходимости повторного создания его с каждой итерацией. Кроме того, это подберет комментарии любого языка, который использует#
синтаксис комментариев, включая Ruby, что не очень хорошо. Я готов отредактировать, если хотите. Однако это отличное начало и хорошо сработало для моих целей. Спасибо!#
), а не с setext (подчеркнутыми).title.parameterize
на href, спасибо!Существует два способа создания оглавления (резюме) в документе уценки.
1. Вручную
2. Программно
Вы можете использовать, например, скрипт, который генерирует для вас сводку, посмотрите на мой проект на github - sumrizeMD -
Я пробовал также другой скрипт / модуль npm (например, doctoc ), но никто не воспроизводит оглавление с рабочими якорями.
источник
Если вы используете markdown extra, не забудьте добавить специальные атрибуты в ссылки, заголовки, заборы кода и изображения.
https://michelf.ca/projects/php-markdown/extra/#spe-attr
источник
Якорные теги, созданные разными парсерами Markdown, не являются четными.
Если вы работаете с анализаторами Markdown GFM (GitHub Flavored Markdown) или Redcarpet, я написал плагин Vim для обработки оглавления.
особенности
Создайте оглавление для файлов Markdown.
Поддерживаемые парсеры Markdown:
Обновить существующее оглавление.
Автоматическое обновление существующего оглавления при сохранении.
Скриншоты
Применение
Создать оглавление
Переместите курсор на строку, к которой вы хотите добавить оглавление, затем введите команду ниже, которая вам подходит. Команда сгенерирует заголовки после курсора в оглавление.
:GenTocGFM
Создайте оглавление в стиле ссылки GFM.
Эта команда подходит для файлов Markdown в репозиториях GitHub, таких как README.md, и файлов Markdown для GitBook.
:GenTocRedcarpet
Создайте оглавление в стиле ссылки Redcarpet.
Эта команда подходит для Jekyll или где-либо еще, использующего Redcarpet в качестве парсера Markdown.
Вы можете посмотреть здесь, чтобы узнать различия между токовыми ссылками в стиле GFM и Redcarpet.
Обновить существующее оглавление вручную
Как правило, вам не нужно этого делать, существующее оглавление будет автоматически обновляться при сохранении по умолчанию. Если вы хотите сделать это вручную, просто используйте
:UpdateToc
команду.Загрузки и документы
https://github.com/mzlogin/vim-markdown-toc
источник
Кроме того, можно использовать
pandoc
, в «швейцарский армейский нож» для преобразования « из одного формата в другой разметки» . Он может автоматически генерировать оглавление в выходном документе, если вы предоставите--toc
аргумент.Подсказка: если вы хотите оглавление в
html
выводе, вам также необходимо указать,-s
какой из них генерирует отдельный документ.Пример командной строки оболочки:
источник
Для тех из нас, кто создает
README.md
файлы в Atom (как я нашел эту ветку):https://atom.io/packages/markdown-toc
источник
Если вы хотите использовать инструмент javascript / node.js, взгляните на markdown-toc .
источник
Вы можете сгенерировать его, используя эту строку. Предполагается, что ваш файл уценки называется
FILE.md
.источник
Я только что написал расширение для
python-markdown
, которое использует его парсер для извлечения заголовков и выводит оглавление в виде неупорядоченного списка в формате Markdown с локальными ссылками. Файлmd_toc.py)... и это должно быть помещено в
markdown/extensions/
каталог в установке уценки. Затем все, что вам нужно сделать, это ввести<a>
теги привязки сid="..."
атрибутом в качестве ссылки - так для входного текста, например:... расширение можно назвать так:
... и затем вы можете вставить этот ток в свой документ уценки (или иметь ярлык в текстовом редакторе, который вызывает скрипт в текущем открытом документе, а затем вставляет полученное оглавление в тот же документ).
Обратите внимание, что более старые версии
python-markdown
не имеют__main__.py
модуля, и, следовательно, вызов командной строки, как указано выше, не будет работать для этих версий.источник
Как уже упоминалось в других ответах, существует несколько способов автоматического создания оглавления. Большинство из них с открытым исходным кодом и могут быть адаптированы к вашим потребностям.
Однако мне не хватало визуально привлекательного форматирования оглавления с использованием ограниченных параметров, предоставляемых Markdown. Мы придумали следующее:
Код
Внутри вашего документа вы бы поместили целевые маркеры подразделов так:
В зависимости от того, где и как вы используете Markdown, должно также работать следующее и предоставлять более приятный код Markdown:
Пример рендеринга
преимущества
Вы можете добавить столько уровней глав и подразделов, сколько вам нужно. В оглавлении они будут отображаться как вложенные неупорядоченные списки на более глубоких уровнях.
Нет использования упорядоченных списков. Они создали бы отступ, не связали бы номер и не могут быть использованы для создания десятичной классификационной нумерации, такой как «1.1.».
Нет использования списков для первого уровня. Здесь использование неупорядоченного списка возможно, но не обязательно: отступы и маркеры просто добавляют визуальный беспорядок и здесь никакой функции, поэтому мы вообще не используем список для первого уровня ToC.
Визуальный акцент на разделах первого уровня в оглавлении жирным шрифтом.
Короткие значимые маркеры подразделов, которые выглядят «красиво» в строке URL браузера, например,
#heading--1-1
а не маркеры, содержащие преобразованные фрагменты фактического заголовка.В коде используются заголовки H2 (
## …
) для разделов, заголовки H3 (### …
) для подзаголовков и т. Д. Это облегчает чтение исходного кода, поскольку## …
обеспечивает более четкую визуальную подсказку при прокрутке по сравнению со случаем, когда разделы начинаются с заголовков H1 (# …
). Это все еще логически непротиворечиво, поскольку вы используете заголовок H1 для самого заголовка документа.Наконец, мы добавляем хорошее горизонтальное правило, чтобы отделить оглавление от фактического содержания.
Подробнее об этой методике и о том, как мы ее используем в форуме Discourse , см. Здесь .
источник
Я написал скрипт Python, который анализирует файл уценки и выводит оглавление в виде списка уценки: md-to-toc
В отличие от других скриптов, которые я нашел, md-to-toc правильно поддерживает дубликаты заголовков. Он также не требует подключения к Интернету, поэтому он работает с любым md-файлом, а не только с теми, которые доступны в публичном репо.
источник
В Visual Studio Code (VSCode) вы можете использовать расширение Markdown All in One .
После установки выполните следующие действия:
источник
Я только начал делать то же самое (делать заметки в Markdown). Я использую Sublime Text 2 с плагином MarkdownPreview . Встроенный анализатор уценки поддерживает
[TOC]
.источник
Typora генерирует оглавление , добавляя
[TOC]
к вашему документу.источник
На Gitlab уценка поддерживает это:
[[_TOC_]]
источник
Просто используйте ваш текстовый редактор с плагином.
Ваш редактор вполне может иметь пакет / плагин, чтобы справиться с этим для вас. Например, в Emacs вы можете установить генератор TOC markdown-toc . Затем, как вы редактируете, просто несколько раз позвоните
M-x markdown-toc-generate-or-refresh-toc
. Это стоит связывания ключей, если вы хотите делать это часто. Хорошо генерировать простое оглавление без загрязнения документа HTML-якорями.Другие редакторы имеют похожие плагины, поэтому популярный список выглядит примерно так:
источник
На основе ответа альбертодебортоли создана функция с дополнительными проверками и заменой знаков препинания.
источник
MultiMarkdown 4.7 содержит макрос {{TOC}}, который вставляет оглавление.
источник
Для меня решение, предложенное @Tum, работает как брелок для оглавления с 2 уровнями. Однако для 3-го уровня это не сработало. Он не отображал ссылку, как для первых двух уровней,
3.5.1. [bla bla bla](#blablabla) <br>
вместо этого он отображает простой текст .Мое решение - это дополнение к решению @Tum (которое очень просто) для людей, которым нужно оглавление с 3 уровнями или более.
На втором уровне простая вкладка правильно сделает отступ для вас. Но он не поддерживает 2 вкладки. Вместо этого вы должны использовать одну вкладку и добавлять столько,
сколько вам нужно, чтобы правильно выровнять 3-й уровень.Вот пример использования 4 уровней (выше уровней, ужасно становится):
Это дает следующий результат, где каждый элемент оглавления является ссылкой на соответствующий раздел. Обратите также внимание на то
<br>
, чтобы добавить новую строку вместо того, чтобы находиться на той же строке.Оглавление
1.1. Подзаголовок
1.1.1. Sub-подзаголовок
1.1.1.1. Sub-Sub-подзаголовок
заглавие
Заголовок 1
Подзаголовке
Заголовок 2
Sub-подзаголовок
Заголовок 3
Sub-Sub-подзаголовокЗаголовок 4
источник
В зависимости от вашего рабочего процесса, вы можете посмотреть на страпдаун
Это форк оригинала ( http://strapdownjs.com ), который добавляет генерацию таблицы содержания.
В репозитории есть конфигурационный файл apache (возможно, он еще не обновлен должным образом), чтобы обернуть простую уценку на лету, если вы предпочитаете не писать в html-файлы.
источник
Я не уверен, какова официальная документация для уценки. Перекрестная ссылка может быть написана только в квадратных скобках
[Heading]
или в пустых скобках[Heading][]
.Оба работают с использованием pandoc . Поэтому я создал быстрый скрипт bash, который заменит $ TOC в файле md своим TOC. (Вам понадобится envsubst, который может не входить в ваш дистрибутив)
источник
Если вы используете Eclipse, вы можете использовать ярлык Ctrl+ O(контур), это покажет эквивалент оглавления и позволит искать в заголовках разделов (автозаполнение).
Вы также можете открыть представление Outline (Окно -> Показать представление -> Outline), но в нем нет автозаполненного поиска.
источник
Используйте toc.py, который представляет собой крошечный скрипт на python, который генерирует оглавление для вашей уценки.
Применение:
<toc>
куда вы хотите поместить оглавление.$python toc.py README.md
(Используйте имя файла уценки вместо README.md )Ура!
источник
Я использовал https://github.com/ekalinin/github-markdown-toc, который предоставляет утилиту командной строки, которая автоматически генерирует оглавление из документа уценки.
Нет плагинов, или макросов или других зависимостей. После установки утилиты просто вставьте выходные данные утилиты в то место документа, в котором вы хотите найти оглавление. Очень прост в использовании.
источник
Если ваш файл Markdown должен отображаться в репозитории на bitbucket.org, вы должны добавить его
[TOC]
в то место, где вы хотите получить оглавление. Затем он будет сгенерирован автоматически. Больше информации здесь:https://confluence.atlassian.com/bitbucket/add-a-table-of-contents-to-a-wiki-221451163.html
источник
Существует скрипт Ruby с именем mdtoc.rb, который может автоматически генерировать оглавление GFM Markdown, и он похож, но немного отличается от некоторых других скриптов, размещенных здесь.
Имеется входной файл Markdown, например:
Он генерирует это оглавление:
Смотрите также мой пост в блоге на эту тему.
источник