Как я настраиваю привязку клавиш у рыбы, так, чтобы рыба поняла для не выполнения bindingstring после добавления ее к командной строке, но просто добавлению ее как строка к командной строке.
Я хочу настроить привязку, которая добавляет | less
путем нажатия т.е. Высокий звук + Y.
Кажется, что рыбой по умолчанию понимает команду для автоматического выполнения.
Т.е. Когда я ввожу ls
на командной строке и затем нажал бы Alt + Y, это только должно завершить команду для сходства с этим ls | less
но все еще выполнение его.
я пробую что-то вроде этого
bind \ey " \| less"
Но рыба не принимает мой синтаксис
Чтобы добавить | less в конце командной строки, это уже функция по умолчанию в fish, используя Alt-p
http://fishshell.com/user_doc/index.html #editor
Вы можете создать функцию, которая сделает это, если вы предпочитаете:
function __fish_less
commandline -i -- "|less"
end
bind \ey __fish_less
Я не уверен, что вам нужно экранировать | сделать несколько тестов ...
РЕДАКТИРОВАТЬ:
Что касается добавления, справка командной строки говорит:
* -a or --append do not remove the current commandline, append the specified string at the end of it
* -i or --insert do not remove the current commandline, insert the specified string at the current cursor position
* -r or --replace remove the current commandline and replace it with the specified string (default)
Таким образом, чтобы добавить вместо вставки команды, я думаю, вы должны использовать -a