Сохранение в Vim по <CTRS-s> (Ногами не бить, я ИСКАЛ и ПРОБОВАЛ...)

и другие vi-подобные редакторы

Модератор: /dev/random

dshevchenko
Сообщения: 23
ОС: Debian Squeeze amd64

Сохранение в Vim по <CTRS-s>

Сообщение dshevchenko »

Друзья!

Хоть расстреливайте меня на месте, но не могу сделать элементарную вещь: сохранение в Vim по <CTRL-s>.

Гуглил, искал, пробовал, читал книгу "Byte of Vim", смотрел тему "Тонкая настройка Vim". Перебирал следующие варианты:

Код: Выделить всё

nmap <c-s> :w<CR>

Код: Выделить всё

nmap <C-s> :w<CR>

Код: Выделить всё

nmap <c-s> <ESC>:w<CR>

Код: Выделить всё

nmap <C-s> <ESC>:w<CR>

Чисто для эксперимента заменял nmap на imap, map и vmap - не помогает.

Пробовал даже заменить C на CTRL, то есть:

Код: Выделить всё

nmap <CTRL-s> :w<CR>

Привязывать клавишу из F-ряда не хочу, хочу именно сочетание CTRL-s.

Что я делаю не так? Помогите пожалуйста.

P.S. Vim 7.2, терминальный. Всё вышеперечисленное пробовал и в GVim - не работает.
Спасибо сказали:

Аватара пользователя
/dev/random
Администратор
Сообщения: 5105
ОС: Gentoo

Re: Сохранение в Vim по <CTRS-s>

Сообщение /dev/random »

dshevchenko писал(а):
27.12.2010 10:27
P.S. Vim 7.2, терминальный. Всё вышеперечисленное пробовал и в GVim - не работает.

Видимо, вы всё-таки пробовали не всё, поскольку nmap <C-s> :w<CR> в GVim работает (это и есть правильный вариант, контрол записывается как "C-")

А в консольном вы и не заставите его работать. Вообще, лучше забудьте в консольном виме про комбинации <C-буква>. <C-s> - это управляющая команда терминала, обозначающая остановку вывода. <C-h> - синоним бакспэйса (терминал не сможет отличить их друг от друга), <C-m> - энтера. И т.д. Большинство таких комбинаций имеет подобное специальное значение, препятствующее их использованию как хоткеев в консольных программах.
Спасибо сказали:

dshevchenko
Сообщения: 23
ОС: Debian Squeeze amd64

Re: Сохранение в Vim по <CTRS-s>

Сообщение dshevchenko »

Огромное спасибо за помощь!
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Сохранение в Vim по <CTRS-s>

Сообщение drBatty »

/dev/random писал(а):
27.12.2010 11:10
А в консольном вы и не заставите его работать.

konsole
настройка-настройка профиля-разное-обрабатывать CTRL+S CTRL+Q - снять галку.
работает, но через раз. (иногда сохраняет, иногда замораживает экран. Чаще замораживает. Размораживать - CTRL+Q). Не доделали...
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4417
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Сохранение в Vim по <CTRS-s>

Сообщение Rootlexx »

drBatty писал(а):
27.12.2010 19:15
/dev/random писал(а):
27.12.2010 11:10
А в консольном вы и не заставите его работать.

konsole
настройка-настройка профиля-разное-обрабатывать CTRL+S CTRL+Q - снять галку.
работает, но через раз. (иногда сохраняет, иногда замораживает экран. Чаще замораживает. Размораживать - CTRL+Q). Не доделали...

Достаточно выполнить:

Код: Выделить всё

stty stop undef

Подробности в man stty.
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Сохранение в Vim по <CTRS-s>

Сообщение drBatty »

Rootlexx
спасибо. работает!
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: