LINUX.ORG.RU

GVim и встроенный терминал

 , , , ,


0

1

Блин, Vim а точнее GVim большой я в нём запутался. Короче использую встроенный в вим терминал :term всё хорошо, но захотелось вывод скролить мышкой, а он не скролится. Полез узнать почему вобщем надо перейти в обычный режим, но по Esc он не переходит туда ибо у терминала отдельное пространство чего-то там, ладно есть комбинации мышки ctrl+w N я не псих чтобы это каждый раз прожимать надо повесить на Esc, ладно повесил tnoremap <ESC> <C-W>N, теперь всё почти хорошо, а именно ввёл что надо в терминале нажал Esc вим захватил буфер терминала и перешёл в режим Normal теперь это просто буфер который я могу что хочу делать и мышкой скролить, но вот беда если теперь нажать i или a для ввода то эта дура при нажатии и одновременном входе в режим ввода в этом терминале выполняет последнее что было введено в шелл оболочке и надо после выхода из терминала по Esc входить в него через заглавную I тогда этой фигни нету. Блин, чё этот терминал так черезжопно там встроен. Не мне нравится, прям няяяяяяя, оч удобно, но ну вот захотел я мышкой в нём скролить и выходит в нём в обычный режим по Esc, но случается то что выше описал. Как нормально сделать и без побочных эффектов?

  • 1 Ввести :term открыть терминал
  • 2 Нажать Esc выйти в терминале из режима ввода в режим Normal
  • 3 Скролить мышкой буфер терминала в Normal режиме терминала
  • 4 Нажать i войти в терминале в режим ввода и писать туда команды

  • 1 - работает [ОК]
  • 2 - работает если в конфиге задан бинд tnoremap <ESC> <C-W>N [ОК]
  • 3 - работает если в конфиге задана set mouse=a полная поддержка мышки [ОК]
  • 4 - работает через жопу, при нажатии i исполняется команда в терминале последняя, надо жать I [НЕЕЕЕ ОК]
    • я не хочу жать I, я хочу жать i так же как для всего остального
      • я не хочу переназначать i на I из за этого для всего

Сейчас либо жать I для нормального перехода в режим ввода в терминале, или жать i и получать внезапно исполнение комманды в нём которая в башхистори последняя.

100 лет уже в конфиг вима не залезал, всё устраивало, но вот полез хотелки делать и застрял :( Я что-то, где-то не вижу или недопонимаю, хотелка с виду простая, но то что у терминала там свой скоуп, свои назначения клавиш только геморой дают. Блин. Как быть то.

dron@gnu:~$ vim  --version
VIM - Vi IMproved 9.1 (2024 Jan 02, сборка от Apr 27 2024 15:01:43)
Исправления: 1-377
dron@gnu:~$ uname -a
Linux gnu 6.7.12-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.7.12-1 (2024-04-24) x86_64 GNU/Linux

★★★★★

Последнее исправление: LINUX-ORG-RU (всего исправлений: 6)
Ответ на: комментарий от Werenter

Это без разницы, мне gvim удобен, свои графические меню показываемые и скрываемые, более удобная настройка цвета и так далее. Но тут без разницы что вим в терминале что вим в графике, и там и там описанное выше, всё ладно, но вот запуск исполнения в нём чего то по i и проблема курицы и яйца при невозможности (да?) переназначить i на I исключительно для входа в ввод терминала прям бррр, наверное можно, но я не понимаю как, ведь выйдя в обычный режим мы теряем эту особенность терминала что у него всё своё и бинды тоже…

LINUX-ORG-RU ★★★★★
() автор топика
Ответ на: комментарий от krasnh

А в neovim такая же ‘засада’?

Понятия не имею, там вообще скорее всего нет терминала.

Это сейчас, вроде, vim ‘проснулся’, но были времена, когда он был на последнем издыхании,

Никогда такого не было (застой в разработке да, но эт не критично), просто работал и всё, всегда

и историю творил именно neovim.

Ничего он не творил, просто форк со своим путём и приколюхами :), пусть будет, может и перейду на него потом, но пока в этом нет лично для меня смысла.

LINUX-ORG-RU ★★★★★
() автор топика
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от krasnh

Значит там есть и из коробки работает то что я хочу, это хорошо. Надо чекнуть спасибо, но пока останусь на виме, хотя можно глянуть на каком уровне там у них переделка, настройки или исходники, тоже надо глянуть

Да, скролит, но для перехода (если захочется дополнительно) в режим Normal те же самые пляски нужны. А ещё он vimrc теперь не понимает, раньше понимал, сейчас ошибками валит. А ещё там терминал весь буфер (сплит окна) занимает, тоже не оч, должен открываться в отдельном сплите окна. Ну ладно, это всё по умолчанию такое просто, зря придираюсь.

LINUX-ORG-RU ★★★★★
() автор топика
Последнее исправление: LINUX-ORG-RU (всего исправлений: 2)