使用 stdout 的最後 N 個位元組在 shell 中自動完成

使用 stdout 的最後 N 個位元組在 shell 中自動完成

如果可以使用我剛剛在終端螢幕上使用 TAB 看到的單字來自動完成,我會發現它非常方便。最好是在 zsh 中。有什麼辦法可以管理嗎?

例如

$ git 日誌

$ < prefix> < TAB> // 現在循環遍歷git log輸出中與我的前綴相符的內容

答案1

如果您願意使用 iTerm2 而不是您目前使用的任何終端,它包含此功能。它需要 macOS 來運行終端,並且您可以啟用iTerm2 shell 集成在您想要的主機上。 (這基本上為您的 shell 添加了一些與 iTerm2 通信的鉤子。)

https://www.iterm2.com/features.html#autocompletetail有一個螢幕截圖,顯示了作為最佳完成候選者呈現的輸出Command-;

iTerm2 專案是開源所以我想這個功能的核心內容可以被刪除並包含在其他環境中或在其他環境中重新實現。

相關內容