Wie unterstreiche ich Titel? (reStructuredText, Markdown, ASCII-Stil)

13

Verschiedene Markup-Sprachen für Klartext: reStructuredText, Markdown, ASCIIIDOC (auch andere) . Verwenden Sie eine Unterstreichung, um Titel zu kennzeichnen.

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

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

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

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

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

Gibt es eine bequeme Möglichkeit, diese in vim hinzuzufügen?

Fügen Sie ein Zeichen mit einer Länge hinzu, die der obigen Zeile entspricht.

ideasman42
quelle
Es beantwortet Ihre Frage nicht direkt, aber es ist zu erwähnen, dass einige Markup langs (z. B. Markdown) #stattdessen auch einen Hauptcharakter für eine Überschrift der Stufe 1, ##für Stufe 2 usw. unterstützen. Auf diese Weise schreibe ich Markdown und finde es klarer sowieso so.
Andrew Ferrier
@ Andrew Ferrier, ich verwende kein Markdown und die Frage bezieht sich nicht speziell auf Markdown, es ist nur ein Beispiel für ein Markup, das solche Titel verwenden kann. Ich habe 3x verschiedene Markups aufgelistet, um eine Diskussion über die Besonderheiten einer der Markup-Sprachen zu vermeiden.
ideasman42
Ich verstehe. Es war nur ein zufälliger Kommentar für jeden, der es tut. Ihre Frage ist völlig gültig, ich bin damit einverstanden.
Andrew Ferrier

Antworten:

22

Ein naiver Ansatz (keine Plugins oder Skripte) wäre EscYpVr=.

Erläuterung:

  • Yp dupliziert die aktuelle Zeile und setzt den Cursor in die untere Zeile.
  • V Wählt die zweite Zeile im visuellen Zeilenmodus aus.
  • r=Ersetzt alle Zeichen in der Zeile durch das =Zeichen.

Sie können :noremapdiese Tastenfolge natürlich nach Ihrem Geschmack einstellen.

z.B:

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

... lassen Sie das letzte Zeichen weg, damit Sie für den Titel eingeben können, was Sie wollen.

200_erfolg
quelle
2
Das ist keineswegs naiv.
Romainl
2
@romainl es ist nur naiv, bis Sie es auf etwas kürzeres abbilden, denke ich
Dhruva Sagar