Wie kann man mehrere Registerkarten Linien in Vi Paste? [geschlossen]
Frage
Ich möchte etwas einfügen ich von meinem Schreibtisch in eine Datei zu öffnen in Vi geschnitten haben.
Aber wenn ich die Tabs einfügen einbetten auf dem jeweils andere auf der Seite.
Ich denke, es ist eine Art visuellen Modus ändern, aber den Befehl nicht finden kann.
Lösung
Wenn Sie mit Klar vi:
Sie haben wahrscheinlich autoindent
auf. Um es auszuschalten, während das Einfügen:
<Esc> :set noai
<paste all you want>
<Esc> :set ai
Ich habe in meinem .exrc
die folgenden Abkürzungen:
map ^P :set noai^M
map ^N :set ai^M
Beachten Sie, dass diese die tatsächlichen Steuerzeichen sein müssen - setzen Sie sie mit Strg - V Strg - P und so weiter.
Wenn Sie mit vim:
Mit der paste
Option.
autoindent
zu deaktivieren wird es auch andere Optionen wie textwidth
und wrapmargin
einzufügen freundliche Standardeinstellung
<Esc> :set paste
<paste all you want>
<Esc> :set nopaste
Sie können auch einen Schlüssel festgelegt, die Paste-Modus zu wechseln. Meine .vimrc
hat die folgende Zeile:
set pastetoggle=<C-P> " Ctrl-P toggles paste mode
Andere Tipps
Wenn Sie VIM verwenden, können Sie „* p verwenden (das heißt doppelte Anführungszeichen, Sternchen, Buchstaben p).
Ich fand, dass, wenn ich mit Registerkarten Zeilen kopieren Sie zuerst in einen Texteditor und dann von dort zu vim recopy, dann die Laschen korrekt sind.