Во всех текстовых редакторах графического интерфейса ctrl-стрелка перемещает курсор за словом, а удерживание shift позволяет выбрать курсор при перемещении курсора. Таким образом, ctrl-shift-left выделяет предыдущее слово. У рыбы уже есть первое, но я хочу реализовать второе.
Я пытался сделать что-то вроде
bind \[d begin-selection backward-word # \[d is ctrl-shift-left
Но проблема в том, что он начинает выделение при каждом нажатии клавиши вместо выбора дополнительных слов.
Кроме того, я не знаю, как скопировать выбор рыбы на общесистемную клавиатуру.
Ответы:
То, что вы пытаетесь сделать, невозможно с любой версией рыбы, которая существует, когда я набираю это.
begin-selection
Функция предназначается , чтобы быть связан с ключом , который только инициирует режим выбора. Вы не можете также выполнять перемещение курсора в той же привязке, потому что, как вы заметили, она начинает новый выбор с каждым нажатием клавиши. Эта функция в настоящее время используется только в привязке командного режима vi-mode кv
. После нажатия любой клавиши, к которой вы привязалиbegin-selection
, нужно нажать другую клавишу, которая выполняет перемещение курсора, чтобы расширить выбор. Теоретически это можно сделать так, как вы хотите. Не стесняйтесь, чтобы открыть вопрос .Для копирования / вставки реализации вы предпочитаете привязки. Это значения по умолчанию для привязок клавиш emacs-mode и vi-mode:
источник