Мне интересно, можно ли сделать так, чтобы автозаполнение включало знак =. Итак, например, я хочу ввести foo BAR=[TAB][TAB]
и заполнить возможные значения для BAR
. Я пробовал следующее: у меня есть файл с именем «bar», как показано ниже:
#!/bin/bash
echo -e "BAR=100\nBAR=110\nBAR=200" | grep "^$2"
И тогда я делаю:
~> complete -C bar foo
Если я наберу foo [TAB][TAB]
, это даст мне несколько возможных значений для BAR. Если я наберу foo BAR=[TAB][TAB]
, произойдет сбой (добавится BAR=BAR=
в конец команды). (обратите внимание, если я наберу bar 1 BAR=
, это даст мне правильный список завершений, так что это не проблема со скриптом панели).
Это было бы очень полезно для некоторых сценариев, которые у меня есть.
COMP_WORDBREAKS
, хотя вы не можете просто изменить это. Итак, вопрос в том, есть ли способы обойти это поведение, как в этот вопрос о:
. - person Etan Reisner   schedule 16.09.2014make target=....
Было бы неплохо иметь это автозаполнение. Есть также несколько других макросов, которые можно установить, и было бы неплохо иметь автозаполнение для них. - person John   schedule 17.09.2014=
$3
становится=
вместоBAR
... мля! - person John   schedule 17.09.2014