Terminal
我可以在終端模擬器中使字元不可複制嗎?
我使用自定義樣式執行 fish(在 gnome-terminal 中),它為我提供了有關目前 Git 儲存庫的資訊:
這一切都很好,但是當我想複製粘貼一些命令及其輸出時,如下所示:
我想得到_
$ du -sh . 1012K .
代替
$ du -sh . 0⚹ 0↺ 0🗴 0≡ 🜉 master 1012K .
另一個案例是從啟用行號的 vim 之類的編輯器進行複制——這是背後的一大痛點。
有什麼方法可以防止在終端中選擇/複製某些字元?
FWIW,我知道某些樣式將插入符號移至下一行:
<gutter left> <gutter right> $ <caret>
雖然是一種功能性的解決方法,但這不是我想要的。
不,這對於命令及其輸出是不可能的。終端模擬器複製螢幕上的任何內容。您需要分兩步進行複制粘貼:一次用於命令,一次用於輸出。終端可以通過允許選擇不連續的文本區域來使其更容易,就像 Firefox 在 Ctrl+點擊時所做的那樣,但我不知道有任何終端實現了這一點。
至於文本編輯器和行號,只要是複製文本的終端模擬器,這仍然是不可能的。但是,在這裡使用編輯器本身的複制功能(通過鍵盤或滑鼠)可能更有意義。編輯器不僅可以跳過行號,還可以包括在右邊距被切掉的部分文本,保留TAB字元,保留其他不可列印的控製字元等。