我在非 GUI 控制台上鍵入的任何字元都會被添加 ^[
我只是覺得這種行為很有趣(我可以通過重新啟動來修復它)。什麼會導致它,有什麼方法可以在會話中將其關閉?還是我可以自由得出結論,這只是一個錯誤?
這可能會有所幫助:按下 Fn 鍵就像按下 alt 鍵一樣(在控制台之間切換)。使用 alt 鍵沒有切換固定效果。
重新啟動agetty 沒有幫助。所有控制台都以這種方式執行,並且沒有一個碰巧登錄,因此我無法在互動式 shell 中確認此行為,也無法將 shell 用於某些建議的解決方案,顯然。
您可能有一個 bod 鍵盤,或者它可能只是其中之一。首先是什麼工作正常:您正在使用的鍵盤佈局有類似元發送轉義並映射元鍵的東西。也可能是alt發送逃逸,但我不這麼認為。什麼是元?這是第四個換檔狀態(前三個是換檔控制和alt)。元鍵最常見的選擇是您的 alt 鍵或 windows 鍵之一。現在出了什麼問題?您失去了密鑰釋放事件。鍵盤的工作方式是,對於每個鍵入的字母,您都會收到兩個事件:按鍵和按鍵釋放(當您按住一些鍵而不是 shift 鍵時,您還會得到一個按鍵重複)。需要轉換狀態的大寫字母有四個事件,例如大寫 A 將是 shift press,
a
press,a
釋放和移位釋放。類似地,對於控制 alt 和 meta shift 狀態是在按鍵時輸入並在相應的釋放時離開。因此,根據您所看到的症狀,您可能失去了一個關鍵的元版本。這可能是電雜訊、壞鍵盤(如果它經常發生並且可能只是一個粘滯鍵)或軟體錯誤。如果它是一個軟體錯誤,它通常是由多個關鍵事件解析器之間的上下文切換引起的,並且在上下文切換期間使用的移位不一致。例如,如果您的視窗管理器使用 alt tab 切換視窗,並且您使用它來切換到或離開 vnc 並使用滑鼠轉到另一種方式,您的 alt shift 狀態可能會在遠端電腦上變得混亂,或者在這種情況下如果您使用 meta-alt-f7 切換到 X 和 ctl-alt-f1 切換回來,文本控制台會看到一個它忽略的額外控製版本,但沒有看到元版本。或者您的元密鑰卡住了。