VI - Fügen Sie etwas an der ersten Position / Zeichen einer Folge von Zeilen ein

290
bmz

Ich möchte ein Zeichen mitreißen und es an der ersten Stelle der Zeilenfolge einfügen. Zum Beispiel muss ich vor 7 Zeilen einer Datei ein "#" einfügen.

Kann mir jemand helfen?

0

2 Antworten auf die Frage

2
agold

Hinweis: Diese Antwort funktioniert nur für VIM, nicht für VI.

Sie können es in einer Spalte ziehen:

  1. Start im normalen Modus (nicht einfügen).
  2. Gehen Sie zur ersten Zeile und Spalte (wo Sie den Text einfügen möchten).
  3. Drücken Sie Ctrl+ V, um den vertikalen Auswahlmodus aufzurufen.
  4. Wenn Sie alle Zeilen ausgewählt haben, vor denen Sie Ihren Text einfügen möchten, drücken Sie Shift+ I.
  5. Jetzt kannst du entweder
    1. fügen Sie Ihren Text zerrte mit Ctrl+ R, 0(oder einem anderen Register).
    2. oder schreibe einen beliebigen Text.
  6. Wenn Sie fertig sind, drücken Sie Esc, und in allen ausgewählten Zeilen wird derselbe Text angezeigt.

Randbemerkung : Sie können Ihre Vi (m) -Fragen auch unter : vi.stackexchange.com stellen

Das ist für * vim *, was nicht * vi * ist. Thomas Dickey vor 8 Jahren 0
Vielen Dank für Ihre Antwort!! Ich denke, dass es eine Stufe von Gott ist !! BEEINDRUCKEND!! bmz vor 8 Jahren 0
2
Thomas Dickey

Es hängt weitgehend davon ab, was Sie anrufen vi. Wenn es wirklich original-vi ist, dann können Sie dies tun

  • Typisierung ylzu „reißen“, ein Zeichen an der Cursorposition ausgehend, geht eine Zelle nach rechts.
  • Bewegen Sie den Cursor in die erste Zeile, in der Sie Text einfügen möchten
  • wiederholtes Tippen 0PEnter, durch die sieben Zeilen gehen.

In original-vi konnten Sie nur einen Linienbereich im Ex- Modus beeinflussen. Der Ex- Modus viakzeptiert einen Bereich, aber den analogen Befehl

:1,7P 

würde das nicht putein Zeichen, aber Versuch, etwas zu tun mit Linien . Stattdessen würden Sie im Ex- Modus einen Ersatz machen, z.

:1,7s/^/X/ 

Es ist jedoch nicht möglich, einen Registerwert (die von Ihnen gezogenen Zeichen ) in der Ersetzung zu verwenden.

Lesen Sie weiter:

Vielen Dank für Ihre Antwort!! Ich werde die erste Methode Ihrer Antwort verwenden ... bmz vor 8 Jahren 0