Отображение Vim действует по-другому при переключении между Mac OS X / Linux

651
sa125

Я работал с Vim на двух разных машинах, одна из которых работает под управлением Ubuntu 10.04 (gVim), а другая - Snow Leopard (MacVim). Я скопировал мой файл .vimrc и папку .vim в оба, и заметил несколько небольших различий. 2 вопроса:

1 Я использовал vimcast Дрю Нейла для отступов и добавил следующее в мой .vimrc:

nmap <D-[> << nmap <D-]> >> vmap <D-[> <gv vmap <D-]> >gv 

Какие карты Cmd+[и Cmd+]отступ в / из. В Linux я заменил « D » на « C », чтобы он работал с Ctrl+[/ ]. Все это работает на обеих машинах, только в Linux, нажатие клавиши Escape после отступа выполняет действие без отступа. Какие-нибудь мысли?

2 Я добавил в свой .vimrc какой-то скрипт, который позволяет перемещать строки (обычный и визуальный режим) вверх / вниз, удерживая Ctrl и используя клавиши вверх / вниз. Он отлично работает на Linux, но совсем не работает на Mac, и я не могу понять, почему. Смотрите мой файл .vimrc здесь .

1
Вы можете сформулировать это как один или два вопроса? Peter Mortensen 14 лет назад 0
В вашей системе Linux вы используете Vim в GUI-режиме или в tty-режиме (то есть через терминальную программу, такую ​​как xterm, rxvt, Gnome Terminal и так далее)? Вероятно, ваша проблема связана с тем, что Escape и Control - [имеют одинаковое представление символов (ASCII 27) и неразличимы в среде, основанной на tty. Версия Vim с графическим интерфейсом должна отличать Escape от Control- [, но она может этого не делать. Chris Johnsen 14 лет назад 4
Я использую версию графического интерфейса для Linux и Mac (Gnome-Vim и Macvim). Возможно, я сопоставлю его с другой клавишей (Ctrl + T / Ctrl + Shift + T). sa125 14 лет назад 0

0 ответов на вопрос