1

Когда я нажимаю на клавиатуру в командной строке октавы, я иногда обнаруживаю, что различные ярлыки readline перестают работать, например, C-a и C-e просто вставляют ^A и ^E

Мне потребовалось некоторое время, чтобы понять, что это потому, что я случайно переключился в режим vi- edit , и действительно есть режим toggle-editing-mode (C-M-j), описанный в старой версии руководства по октаве.

У меня вопрос, как мне вернуться в emacs-режим? Я не могу найти ни одного ярлыка в списке.

1 ответ1

1

После долгих поисков в сети и манипуляций с ~/.inputrc я случайно обнаружил, что C-e в режиме vi-command действительно выполняет свою работу и выполняет emacs-editing-mode . Это обсуждается в этом посте, но что касается bash, они должны быть как-то связаны, но я не могу найти, как это происходит в источниках октав.

Знание того, что искать, также позволило мне найти один способ изменить эту привязку через ~/.inputrc:

$if mode=emacs
  set keymap vi

  "\e\C-j":   emacs-editing-mode
  "\C-x\C-r": re-read-init-file

  set keymap emacs
$endif

Во всяком случае, кажется, я должен читать readline.info и, возможно, также history.info .

редактировать

В качестве привязки vi добавлен C-M-j для переключения обратно на emacs, в дополнение к стандартному C-e . Также добавлена привязка vi для повторного чтения ~/.inputrc .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .