如何解決zsh + oh-my-zsh 使用conda時不顯示環境名稱的問題


環境macOS。

當我初次安裝anaconda時,在terminal中(使用bash)會顯示,表示我當前正在conda的base環境中。切換后(如使用命令conda activate python2),可以成功觀察到變化

但在使用zsh時,卻不顯示行頭的(python2)提示符,這使得如何知曉當前處在哪個環境變得很麻煩。

經過搜索研究,發現問題如下:

我使用的配置是zsh + oh-my-zsh + powerlevel9k (基本都是默認設置), 在powerlevel0k.zsh-theme 文件中(在我的本地目錄下路徑為/Users/chzhengy/.oh-my-zsh/custom/themes/powerlevel9k/powerlevel0k.zsh-theme ), 有兩行參數POWERLEVEL9K_LEFT_PROMPT_ELEMENTS 和 POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS,其默認設置為:

defined POWERLEVEL9K_LEFT_PROMPT_ELEMENTS || POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(context dir vcs)
defined POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS || POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs history time)

括號中的內容即為在iterm中命令行里抬頭會顯示哪些內容。我們需要將anaconda參數加到我們想要的位置(左右皆可,看個人喜好),我選擇將其加到左側第一個的位置,因此修改后為

defined POWERLEVEL9K_LEFT_PROMPT_ELEMENTS || POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(anaconda context dir vcs)
defined POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS || POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs history time)

保存設置后重新啟動iterm即可

 效果如圖:

 如果使用virtualenv時出現同樣不顯示的問題,方法如上。在參數行新增:

defined POWERLEVEL9K_LEFT_PROMPT_ELEMENTS || POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(virtualenv anaconda context dir vcs)
defined POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS || POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status root_indicator background_jobs history time)

即可解決


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM