vimscript получает номер первой и последней видимой строки - PullRequest
4 голосов
/ 30 мая 2011

Я знаю, что могу перейти к первой и последней видимой строке текущего буфера с H и L соответственно.Но как я могу передать номера строк переменным?

Ответы [ 2 ]

8 голосов
/ 30 мая 2011
let topline = line("w0")
let botline = line("w$")
0 голосов
/ 30 мая 2011

Возможно, есть лучший способ, но если ничего другого, вы можете использовать H и L, чтобы переместиться туда и ``, чтобы вернуться и получить.Что-то вроде

norm 'H'
let top=line('.')
norm '``L'
let bottom=line('.')
norm '``'

или вы можете использовать getpos() для сохранения и setpos() для восстановления позиции, но я не уверен, что вы можете избежать уничтожения предыдущей позиции (команда :keepmarks должна сделатьэто, но в документации сказано, что это работает только в каком-то особом случае).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...