生活随笔
收集整理的這篇文章主要介紹了
zsh 自动补全导致命令显示重复
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
關鍵字:autocomplete, zsh, backspace, securecrt, xterm, linux console
?
舉個例子:
輸入命令ls??
然后按TAB補全試試,發現竟然是這樣的?
補全多出了一個ls。其他命令也會出同樣的問題,不一定是double了,可能是duplicate了一部分你可以嘗試按backspace刪除,前面一部分字母怎么也刪不掉~~,然后修改補全的命令的時候也容易修改錯,執行的和顯示的對不上?
例外情況:
如果僅僅是backspace亂碼或無法刪除問題,請檢查編碼問題、zsh的功能鍵映射keybind、終端(xterm/securecrt/iterm)的功能鍵映射?
解決辦法:
打上如下patch然后source ~/.zshrc 即可 diff --git a/themes/robbyrussell.zsh-theme b/themes/robbyrussell.zsh-
theme
index f9eca6a..203534c 100644
--- a/themes/robbyrussell.zsh-
theme
+++ b/themes/robbyrussell.zsh-
theme
@@ -1,4 +1,4
@@
-local ret_status="%(?:%{$fg_bold[green]%}m<9E><9C> :%{$fg_bold[red]%}m<9E><9C> )"
+local ret_status="%(?:%{$fg_bold[green]%}:%{$fg_bold[red]%})"
PROMPT='${ret_status} %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)'
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}git:(%{$fg[red]%}"
?
原理:
參考[鏈接]? 大概意思是這個主題里面,%的用法會導致zsh沒能準確計算prefix的長度,所以在錯誤的位置輸出了補全后的命令
轉載于:https://www.cnblogs.com/icxy/p/6212276.html
總結
以上是生活随笔為你收集整理的zsh 自动补全导致命令显示重复的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。