Как отключить клавиши навигации в vim?

Вопрос или проблема

Этот вопрос уже задавался и был решен, но я не могу заставить решения работать для меня. (История моей жизни!)

Немного фона: я недавно приобрел новый ноутбук, HP “Elitebook”. На правой стороне клавиатуры находятся клавиши навигации “home”, “pg up”, “pg dn” и “end”. Из-за моего неуклюжего набора текста я часто нажимаю эти клавиши случайно, что имеет нежелательные последствия. Я никогда не использую такие клавиши намеренно, поэтому просто хотел бы их отключить.

Следуя совету, данному в предыдущем ответе, на который я сослался выше, я добавил следующие строки в мой файл .exrc:

nmap <Up> <Nop>
nmap <Down> <Nop>
nmap <Home> <Nop>
nmap <End> <Nop>

Клавиши “home” и “end”, кажется, отключены как и предполагалось. Однако, клавиши “pg up” и “pg dn” работают как обычно.

Я пробовал различные варианты, например, заменяя “Down” на “PageDown” или на “kPageDown”. Ничего, кажется, не помогает.

Может кто-нибудь направить меня в верном направлении? Спасибо.

Если это имеет какое-либо значение, я использую Ubuntu 24.04 с окружением Mate.

Я только что нашел, что если использовать файл .vimrc вместо .exrc, все работает как надо.

Я начал использовать .exrc вместо .vimrc много лет назад. Не могу вспомнить почему. Что-то не работало с .vimrc, что работало с .exrc.

Но теперь все, кажется, работает с .vimrc, что работало с .exrc, и (как указано выше) даже лучше!

Извините за шум.

Ответ или решение

Чтобы отключить клавиши навигации в Vim, пользователи могут столкнуться с проблемой корректной настройки, особенно когда используются различные конфигурационные файлы, такие как .exrc и .vimrc. Основное отличие между этими двумя файлами заключается в том, что .exrc — это устаревший формат, который может не поддерживать все современные функциональности Vim, в то время как .vimrc — это основная конфигурация для Vim, обеспечивающая более широкий набор возможностей.

Теория: В Vim можно использовать команды nmap для назначения или отключения клавиш в нормальном режиме. С помощью команды nmap <key> <Nop> можно отключить определенные клавиши, назначив им действие "ничего не делать".

Пример: В вашем случае отключение клавиш "PgUp" и "PgDn" может быть достигнуто через использование правильного конфигурационного файла. В файле .vimrc вы можете прописать такие строки:

nmap <PageUp> <Nop>
nmap <PageDown> <Nop>

Эти команды должны эффективно отключить функциональность клавиш "PgUp" и "PgDn".

Применение: Убедитесь, что используете файл .vimrc, а не .exrc, так как именно .vimrc поддерживает полный набор современных настроек Vim. Создайте .vimrc в домашнем каталоге, если его ещё нет, и добавьте туда необходимые строки. После этого перезапустите Vim или примените изменения с помощью команды :source ~/.vimrc.

Воспользование .vimrc вместо .exrc решило вашу проблему, как вы уже обозначили, поэтому убедитесь, что в будущем вы используете этот файл для настройки Vim.

Оцените материал
Добавить комментарий

Капча загружается...