Я думаю, что знаю то, что продолжается.
Вы не настроили vim
отключить vi
режим эмуляции.
В vi
, можно только нажать клавиши со стрелками в командном режиме. Когда в режиме вставки, последовательности символов, отправленные после нажатия клавиш со стрелками, рассматривают, как будто символы вводились индивидуально.
Теперь, после запуска, vi
устанавливает терминал в режиме передачи клавиатуры (kx). В том режиме терминалы обычно отправляют другую последовательность символов после нажатия клавиш со стрелками чем тогда, когда нет.
Например, ключ отправляет \eOA
в kx режиме и \e[A
если не.
Для установки терминала в kx режиме это ищет smkx
(Передача Клавиатуры Режима набора) возможность в terminfo базе данных для текущего значения $TERM
.
Если Вы смотрите на smkx
возможность xterm
, konsole
и linux
, Вы видите:
$ infocmp -1 linux | grep smkx
$ infocmp -1 xterm | grep smkx
smkx=\E[?1h\E=,
$ infocmp -1 konsole | grep smkx
smkx=\E[?1h\E=,
Это smkx
не определяется в linux
запись.
То, что это означает, является этим, когда Вы запускаете vim
с TERM=linux
, энергия не устанавливает терминал в kx режиме, который означает, что это отправляет \e[A
вместо \eOA
когда Вы нажимаете клавишу Up, например.
Теперь, что делает \eOA
в энергии, когда Вы находитесь в режиме вставки? \e
(ESC), листовой режим вставки и возвращаются к командному режиму. O
открывает новую строку и вводит режим вставки снова, A
вставляет A
символ.
В то время как \e[A
, \e
(ESC) оставляет режим вставки, [A
неизвестная комбинация (в vim
, [
префикс и всегда сопровождается другим символом), ничто не - также.
Таким образом, то, что необходимо сделать: сохранить $TERM
как это, не используйте клавиши со стрелками в режиме вставки, когда в vi совместимости или добавляют a set nocp
к Вашему ~/.vimrc
таким образом, можно использовать клавиши со стрелками в режиме вставки.
Ошибки, связанные с тем, что ваш APT
конфигурация смешивает сожатие (Debian 6) и SID (нестабильный Debian). Это плохое представление ...
Вам нужно бросить SID
из вашего файла /etc/apt/Sources.list
(комментировать строку с #
), затем запустите
apt-get update
apt-get -f install
, чтобы исправить вещи.
Сжатие было устарело, вы должны сделать :
sed -i 's/squeeze/wheezy/g' /etc/apt/sources.list
apt-get update
apt-get -f dist-upgrade
Я получал эту ошибку:
dpkg: considering deconfiguration of sysvinit-utils, which would
be broken by installation of startpar ...
dpkg: no, sysvinit-utils is essential, will not deconfigure
it in order to enable installation of startpar
dpkg: error processing archive
/var/cache/apt/archives/startpar_0.59-3_amd64.deb (--unpack):
installing startpar would break existing software
Вот как я исправил ее:
dpkg --auto-deconfigure --force-remove-essential -i \
/var/cache/apt/archives/startpar_0.59-3_amd64.deb \
/var/cache/apt/archives/sysvinit-utils_2.88dsf-59_amd64.deb
Обновление, которое я делал, затем продолжилось нормально.