我試圖運行的程序的格式爲program_name --arg=/some/path/goes/here
,但當zsh在參數標誌中時,它無法在該路徑上執行選項卡完成。我最終不得不鍵入progra<TAB> /so<TAB>/pa<TAB>...
來完成路徑,然後返回來添加--arg=
命令的一部分。有沒有更有效的方法去做這件事?爲什麼zsh在標誌中丟失文件路徑的自動完成功能,我該如何恢復它?
1
A
回答
0
很可能zsh仍在嘗試在您的情況下完成文件完成,它只是將--arg=
作爲文件名的起始部分,導致它找不到任何匹配項。既然關於命令如何解釋它們的參數沒有任何通用規則,最安全的選擇是shell不對這些參數做出任何假設。
如果您使用空格而不是=
符號(例如program_name --arg /some/path/goes/here
),許多使用該類型語法的命令的作用將相同。因爲這將是一個單獨的參數,shell應該能夠完成沒有問題的文件完成。
根據您配置zsh的方式,它也可能使用setopt MAGIC_EQUAL_SUBST
。我通常會設置該選項並獲取您正在查找的行爲,但是如果我取消選中該選項,則會獲得您當前遇到的行爲。但是,如果我使用zsh -f
跳過加載我的配置只是啓用該選項是不夠的,所以顯然我的配置中有其他東西是必要的,可能只是完成系統的啓用,您可能已經完成了。可能會出現這種情況,導致不良行爲,但在我使用帶有該選項集的zsh的許多年中,我還沒遇到任何問題。
一個更復雜的選項是爲該命令編寫一個完成函數,它告訴zsh該選項將文件名作爲參數。
相關問題
- 1. 爲什麼我的R.java消失了,我該如何恢復它
- 2. 如何在Vim中自動完成文件路徑,就像在zsh中一樣?
- 3. Zsh:智能自動完成功能?
- 4. 爲什麼我的自制bash完成路徑突然失蹤?
- 5. 寫一個ZSH自動完成功能
- 6. 什麼魚功能控制文件名的完成,我該如何改變它?
- 7. 爲什麼這個自動完成功能不能在Linux中自動完成?
- 8. jQuery的自動完成功能恢復所有標籤
- 9. 如何在輸入路徑時啓用自動完成功能?
- 10. 現在ActiveRecord :: Base.silence {}消失了,我該如何恢復該功能?
- 11. 爲什麼IntelliJ在純文本文件中使用自動完成功能,如何關閉它?
- 12. ZSH自動完成提供文件在特定文件夾中的完整路徑
- 13. jQuery自動完成丟失?
- 14. 爲什麼我的URL路徑中存在散列,我該如何擺脫它?
- 15. c#程序在自動啓動後丟失文件路徑
- 16. 如何從文件(HttpPostedFileBase)恢復路徑?
- 17. zsh的自動完成
- 18. ZSH根據以前的標誌完成
- 19. JQuery動畫完整功能:如何恢復我的「舊本」?
- 20. Xcode 4 - 丟失的證書和配置文件,我該如何恢復
- 21. 我該如何完成此功能
- 22. 如何從zsh自動完成功能中刪除額外的空間?
- 23. 獲取自動恢復Word使用插件的文件路徑
- 24. ZSH:自動完成功能的第二個參數
- 25. 如何讓emacs自動完成從包含的頭文件中完成功能?
- 26. 如何使用自動恢復功能下載ftp文件
- 27. 丟失了我的筆尖連接:如何恢復它?
- 28. symfony:如何修復自動生成的靜態文件路徑?
- 29. 爲什麼我不能指定一個本地路徑來指向我想在zsh中創建的文件?
- 30. 自動完成:我如何使用像Facebook一樣的自動完成功能?