Когда я удаляю слово в Bash, оно останавливается на определенных символах, таких как _
и /
. Например, если я наберу
/foo/bar
и активировать backward-kill-word
(обычно сопоставляется с Alt- Backspaceи / или Ctrl- w), оставшийся текст
/foo/
, Это не соответствует $COMP_WORDBREAKS
или readline
'srl_completer_word_break_characters
. Как я могу определить (предпочтительно в работающей системе, а не значения по умолчанию в коде, поскольку они предположительно могут быть переопределены), какие символы используются для определения разрывов слов?
[^A-Za-z0-9]
,[^[:alnum:]]
(локализация зависит) или что - то еще?alnum
класс символов), хотя это повлияет и на другие приложения.isalnum
Разделение основано на , поэтому действительно зависит от локали и эквивалентно вашей второй версии, @ l0b0.