1

Я могу заставить Shift-F1 показывать справку для пользователя, у которого в качестве оболочки входа используется рыба.

Я вижу сообщение об ошибке, которое быстро перезаписывается.

Это говорит

fish: Variables may not be used as commands. Instead, define a function like 'function BYOBU_PAGER; sensible-pager $argv; end' or use the eval builtin instead, like 'eval $BYOBU_PAGER'. See the help section for the function command by typing 'help function'.

Если я верну оболочку входа в систему /bin/bash с помощью chsh Shift-F1 покажет страницу справки, как и ожидалось.

1 ответ1

1

После небольшого исследования кажется, что связывание клавиш Shift-F1 определено в /usr/share/byobu/keybindings/f-keys.tmux

bind-key -n S-F1 new-window -k -n help '$BYOBU_PAGER $BYOBU_PREFIX/share/doc/byobu/help.tmux.txt'

И эта команда не выполняется, потому что она выполняется в оболочке fish, а оболочка fish не позволяет использовать переменную в качестве команды.

Изменение привязки на

bind-key -n S-F1 new-window -k -n help 'sh -c "$BYOBU_PAGER $BYOBU_PREFIX/share/doc/byobu/help.tmux.txt"'

будет работать, так как он будет использовать sh для запуска команды.

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