我们可以~/a/very/long/path/name
缩短~/a/v/l/p/name
为 zsh promt 吗?
我看到我的 vim 缓冲区显示路径~/.vim/plugged/YouCompleteMe/plugin/youcompleteme.vim
为~/.v/p/Y/p/youcompleteme.vim
,想知道我们是否可以对 bash/zsh 提示符做类似的事情。这将为笔记本电脑等小型显示器节省一些空间。
答案1
我找到了使用正则表达式的解决方案:
$ echo "~/a/very/long/path/name" | perl -pe 's/(\w)[^\/]+\//\1\//g'
~/a/v/l/p/name
$ export PS1='$(echo $PWD | perl -pe "s/(\w)[^\/]+\//\1\//g") '