Если вы выполняете длинную команду, где где-то в середине есть grep, вы также можете
vim `command1 | grep whatever | awk '{do_something_else}'`
Самое близкое, что я нашел, это довольно сложный набор упражнений с xmodmap и xcape, подробно описанный в разделе примеров файла xcape README .
Вот отрывок:
# Map an unused modifier's keysym to the spacebar's keycode and make it a
# control modifier. It needs to be an existing key so that emacs won't
# spazz out when you press it. Hyper_L is a good candidate.
spare_modifier="Hyper_L"
xmodmap -e "keycode 65 = $spare_modifier"
xmodmap -e "remove mod4 = $spare_modifier" # hyper_l is mod4 by default
xmodmap -e "add Control = $spare_modifier"
# Map space to an unused keycode (to keep it around for xcape to
# use).
xmodmap -e "keycode any = space"
# Finally use xcape to cause the space bar to generate a space when tapped.
xcape -e "$spare_modifier=space"
Я попробовал это, и мне удалось заставить пространство действовать как модификатор Super _L при использовании стиля модификатора, но я обнаружил, что синхронизация мешает нормальному вводу обычных пробелов, и я отключил это на следующий день. Возможно, есть какой-то способ настроить тайминги и заставить его работать, но я пока не вникал в подробности.