Wie kann ich Vim dazu bringen, alle Zeilen in einem Listenelement einzurücken - nicht nur die zweite?

17

Die nOption der Vim- formatoptionsEinstellung rückt die zweite Zeile eines Listenelements so ein, dass sie mit der Einrückung der ersten Zeile übereinstimmt. Die dritte und die folgenden Zeilen werden jedoch nicht eingerückt.

1. Doing a list. This is my list. I am writing
   a list. It's quite a long list. It's really
long. I can't believe how long it is. And
this just the first item!

2. Another list item.

Ich möchte wirklich, dass alle Zeilen wie folgt eingerückt werden :

1. Doing a list. This is my list. I am writing
   a list. It's quite a long list. It's really
   long. I can't believe how long it is. And
   this just the first item!

2. Another list item.

Ist dies möglich, indem entweder die eigenen Optionen von Vim, ein Skript oder ein externes Formatierungsprogramm wie par verwendet werden?

Reich
quelle

Antworten:

16

Ich denke, nur die Einstellung "Autoindent" sollte das beheben. Das tut es für mich.

set ai
garyjohn
quelle
2
Funktioniert auch für mich und ich bin dumm, dass ich es nicht selbst herausgefunden habe, zumal es genau dort in der Dokumentation für die Einstellung 'n' steht! Vielen Dank.
Rich
@akira Yup. Ich bin ein Idiot. Ich glaube, meine Verwirrung war, dass ich, weil Vim die zweite Zeile einrückte, davon ausging, dass ich bereits autoindenteingeschaltet war und dass das in der Frage beschriebene Verhalten das entworfene Verhalten war. Ich denke jedoch, dass das Handbuch klarer formuliert werden könnte, um Idioten wie mir zu helfen. :)
Rich
Eine ausführlichere Lösung finden Sie in der Antwort von @ akira .
Clint Pachl
5

in deinem fall würde ich das machen:

 :set autoindent       " just for interactive indenting (see answer of @Rich) 
 :set fo+=2n           " :help fo-table
 :set tw=47            " your text shall wrap at xyz

(das tw=47ist wichtig für ..) und formatieren Sie dann einen Absatz neu, indem Sie drückengqap

Anmerkung: Ich konnte den Paragrap auch nicht wiederholen =, vielleicht hat jemand anderes das herausgefunden.

Akira
quelle
Vielen Dank, dass Sie mich an den a pAntrag zum Formatieren von Zeilen erinnert haben. Ich benutze immer die richtige Zahnspange, die ähnlich ist. Vergessen Sie nicht , Sie einen Zähler, zum Beispiel hinzufügen können, formatieren Sie die nächsten drei Absätze: g q 3 }.
Clint Pachl