Як підкреслити заголовки? (reStructuredText, Markdown, стиль asciidoc)


13

Різні мови розмітки простого тексту: reStructuredText, Markdown, asciidoc (також інші) , використовуйте підкреслення для позначення заголовків.

Chapter 1 Title
===============

Section 1.1 Title
-----------------

Subsection 1.1.1 Title
~~~~~~~~~~~~~~~~~~~~~~

Section 1.2 Title
-----------------

Chapter 2 Title
===============

Чи є зручний спосіб додати їх у vim?

додайте символ з довжиною, що відповідає рядку вище.


Це не відповідає безпосередньо на ваше запитання, але варто сказати, що деякі ярлики розмітки (наприклад, Markdown) також підтримують ведучого #символу замість заголовка рівня 1, ##для рівня 2 тощо. Так я пишу Markdown, і я вважаю це зрозумілішим так чи інакше.
Ендрю Фер’є

@Andrew Ferrier, я не використовую розмітку і питання не стосується конкретно розмітки, це лише приклад розмітки, яка може використовувати такі заголовки. Я перерахував 3-кратні розмітки, особливо щоб уникнути обговорення особливостей будь-якої мови розмітки.
ideaman42

Я розумію. Це був просто випадковий коментар для кожного, хто це робить. Ваше питання цілком справедливий, я згоден.
Ендрю Фер’є

Відповіді:


22

Наївний підхід (ні плагіни, ні сценарії) не був би EscYpVr=.

Пояснення:

  • Yp дублює поточний рядок і кладе курсор на нижній рядок.
  • V вибирає другий рядок у режимі Visual Line.
  • r=замінює всі символи на рядку =символом.

Можна, звичайно, :noremapпослідовність натискань клавіш на свій смак.

наприклад:

" Add Heading: Control-H
nnoremap <C-h> YpVr

... залишаючи останнього символу, щоб ви могли ввести те, що вам потрібно для заголовка.


2
Це ніяк не наївно.
romainl

2
@romainl це лише наївно, поки не придумаєш щось коротше, я думаю
Dhruva Sagar
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.