Gibt es eine Tastenzuordnung, die die aktuelle Zeilennummer der gerade bearbeiteten Zeile ausgibt? Oder noch besser: Können wir Formeln erstellen, die auf der Ausgabe der Schlüsselzuordnung basieren?
Ich möchte die Zeilennummer erhalten und dem aktuellen Text 1
hinzufügen.
Die Antwort wurde von @ZyX in einem Kommentar zu einer anderen Antwort gegeben:
Sie haben
<C-r>
im Einfügemodus für diese Art von Dingen:
nnoremap <F1> i<C-r>=line('.')+1<CR><Esc>
Ctrl+Girá dizer-lhe o número da linha e até mesmo a coluna em que o cursor se foundra. Der Benutzer kann den Text für das Dokument und den Inhalt des Dokuments abrufen.
Was meinst du mit "Ausgabe"? Du kannst tun:
:echo line(".") + 1
Um die aktuelle Zeilennummer plus 1 anzuzeigen, können Sie einen Tastendruck mit map
binden, z.
:noremap <F1> :echo line(".") + 1<cr>
So fügen Sie die Daten tatsächlich in den Puffer ein:
:noremap <F1> :execute "normal! i" . ( line(".") + 1 )<cr>
Sie können die visuelle Breite der aktuellen Cursorposition mit virtcol('.')
abrufen. fügen Sie dies über das Ausdrucksregister in den Puffer ein, z. im Einfügemodus mit <C-R>=virtcol('.')<CR>
Beachten Sie, dass sich die Breite von der Anzahl der Zeichen unterscheidet, wenn die Zeile doppelt breite Zeichen, <Tab>
oder nicht druckbare Zeichen enthält.
:set ruler
. (Funktioniert nur in vim
) ReferenzEs zeigt die aktuelle Zeile und Spalte der bearbeiteten Zeile (Zeile, in der sich der Cursor befindet) in der rechten unteren Ecke der Witwe.
1,1 <position>
Top
.Bot
.All
.Um es dauerhaft zu machen, fügen Sie set ruler
in ~/.vimrc
-Datei hinzu (wenn die Datei nicht vorhanden ist, erstellen Sie eine).
:set number
. (Funktioniert sowohl in vi
als auch in vim
) ReferenzZeigt die Zeilennummer vor jeder Zeile an.