8 Stimmen

Wie kann man: den Vim-Cursor einer bestimmten Zeile im Fenster zuweisen und den Text unter dieser Cursorposition scrollen lassen?

Sie können die Cursorlinie in der Mitte des Bildschirms belassen und den Text darunter rollen lassen, indem Sie scrolloff auf eine sehr große Zahl einstellen. Bsp:

:let &scrolloff = 999

Hier erfahren Sie mehr darüber, wie das funktioniert:

:help scrolloff

Ich liebe diese Funktion und benutze sie ständig, aber ich hätte gerne die Möglichkeit, den Cursor an anderen Stellen als in der Mitte des Bildschirms zu halten. Ich hätte zum Beispiel gerne die Möglichkeit, den Cursor am oberen Rand des Fensters zu halten und die Datei unter ihm durchlaufen zu lassen. Ich bin mir ziemlich sicher, dass es nichts gibt, was von Haus aus in vim verfügbar ist, um dies zu tun, also habe ich mich gefragt, ob jemand ein leichtes Vim-Skript-Snippet gefunden hat, um dies zu tun (oder ob jemand ein solches Skript finden kann)?


Hier ist mein kleiner .vimrc-Hilfscode, um die Position des Cursors schnell zu ändern:

" SCROLLFIX SHORTCUTS
function! ToggleMyScrollFix()
  if ( g:scrollfix == 5 )
    let g:scrollfix = 50
  elseif ( g:scrollfix == 50 )
    let g:scrollfix = 95
  elseif ( g:scrollfix == 95 )
    let g:scrollfix = 5
  else
    let g:scrollfix = 50
  endif
endfunction
nnoremap  <silent> zz :call ToggleMyScrollFix()<CR>lh

5voto

thedz Punkte 5396

Überprüfen Sie die Scrollfix-Plugin . Ich habe es vor ein paar Jahren benutzt, also weiß ich nicht, ob es immer noch mit den neuesten Snapshots von Vim funktioniert -- aber schlimmstenfalls sollte es Ihnen einen ziemlich guten Start geben, um es so zu modifizieren, dass es für Sie funktioniert.

0voto

Brian Carper Punkte 68444

Sie könnten dies tun:

nmap <C-Down> <C-E><Down>
nmap <C-Up> <C-Y><Up>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X