Я хотел бы использовать расширение mv 'foo bar' !#:1:s^\ ^-^
для создания команды mv 'foo bar' 'foo-bar'
. Однако, когда я нажимаю пробел, zsh предполагает, что я закончил вводить расширение, оставляя меня с mv 'foo bar' !#:1:s^\
что дает mv 'foo bar' 'foobar'
.
Я могу обойти это поведение, набрав mv 'foo bar' !#:1:s^\^-^
и затем вернитесь назад с помощью клавиш со стрелками, чтобы получить mv 'foo bar' !#:1:s^\ ^-^
, но это побеждает цель.
Как я могу просто отключить поведение расширения на пробел? Я предполагаю, что мое желаемое поведение - оставить команду не развернутой, пока я не нажму Enter Я не нашел ничего об этом на странице руководства для zshexpn
.
Изменить: я обнаружил, что я могу набрать mv 'foo bar' !{#:1:s^\ ^-^}
, который задерживает расширение до тех пор, пока не будет напечатан символ }
. Но вопрос о том, как предотвратить поведение расширения на пробел, стоит.