Как установить и сбросить относительный номер для всех буферов? - PullRequest
1 голос
/ 18 марта 2020

Что касается номеров строк, при обычном редактировании файлов я предпочитаю иметь следующую настройку

set number
set relativenumber

, потому что формирователи говорят мне, где я, а последний помогает мне использовать j * 1005. * и k эффективно.

Однако, когда отлаживается с gdb, я часто хочу установить точки останова; поэтому я хотел бы отключить последний параметр, выполнив команду set norelativenumber в глобальной области видимости, чтобы все редактируемые мной файлы отображали действительные номера строк.

В этом отношении

  • Я вроде знаю, как вызвать действие (когда я выполняю команду :Termdebug, я должен также выполнить set norelativenumber),
  • , но, это вопрос , я не знаю, как применить эту настройку ко всему буферу (ну, не ко всему буферу, поскольку мне не нужны числа ни в окне gdb, ни в окне вывода программы, ни в справке , если я открою один и т. д.);
  • кроме того, я не уверен, как обработать случай, когда я выйду из отладчика (в этом случае я должен установить заново set relativenumber глобально). *

Ответы [ 2 ]

3 голосов
/ 18 марта 2020

Попробуйте:

bufdo set norelativenumber

bufdo, windo, tabdo разрешают операции со всеми буферами, windows и tabs соответственно. Вы также можете посмотреть на https://vim.fandom.com/wiki/Run_a_command_in_multiple_buffers

Cheers

0 голосов
/ 19 марта 2020

Ответ от Csaba Dunai полезен, поскольку он дает ссылку и некоторую информацию для размышлений.

С другой стороны, предлагаемое решение на самом деле не является решением для простая причина (я не думал об этом), что number и relativenumber не локальны для буферов, а локальны для windows. Поэтому, если windows открыты на других вкладках, команда для go будет следующей:

tabdo windo set norelativenumber

Что касается всего рабочего процесса, о котором я думал, я нашел решение, которое кажется работать довольно хорошо в настоящее время. Это в обзоре кода здесь .

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