Я использую финскую раскладку клавиатуры, которая отображает AltGr+ Spaceна неразрывный пробел (NBSP, U + 00A0). Я доволен этим в целом, но обнаружил, что часто использую символ NBSP вместо обычного пробела после |
символа " " (пишется с AltGr+ <с финской раскладкой клавиатуры) при использовании командной строки bash. Я предполагаю, что это вызвано тем фактом, что мне нужно держать AltGrтрубку во время набора текста и отпускать ее, прежде чем попасть в пробел. И когда у меня плохое время для выпуска, AltGrя получаю невидимую опечатку в командной строке и сообщения об ошибках, такие как
grep: command not found
который выглядит очень похоже на
grep: command not found
что делает эту проблему немного трудно заметить в первый раз.
Я знаю, что могу отключить NBSP, но я бы предпочел отключить его (с AltGr+ Spaceдля создания обычного пространства) только после символа канала или, если это невозможно, всегда в командной строке или на readline
уровне bash . Есть ли простой способ сделать это без изменения исходного кода bash readline
или моего эмулятора терминала ( gnome-terminal
)?
Другим хорошим решением было бы настроить NBSP так, чтобы он был каким-то образом виден в командной строке, например, заменен другим символом (скажем, U + 2423 ␣
) только для рендеринга.
" ":␣
недостаточно? Что еще тебе нужно?
echo a␣b
но в результате выходная строка была echo a b
с реальным NBSP в выводе. Таким образом, я думаю, что это должно быть сделано на уровне readline (то есть редактор командной строки всегда отображает видимый символ, но эмулятор терминала не может знать разницу между отображением редактора и отображением вывода, и поэтому эмулятор терминала не может выполнять визуальную замену для рендеринга. ).