Emacs
在emacs term-mode中,什麼是char-mode和line-mode?它們有何不同?
Google搜尋,我只能找到如何在這兩者之間切換,但沒有描述它們是什麼。
那麼,什麼是char-mode 和 line-mode?正常shell通常處於什麼模式?
在您連結的頁面中:
在行模式下,Term 基本上就像 Shell 模式(請參閱Shell 模式)。在 char 模式下,每個字元都直接發送到子 shell,除了 Term 轉義字元,通常是 Cc。
在行模式下,它讀取整行並允許對其進行各種 emacs 編輯操作,然後在完成後將其全部發送到程序(按
Enter
)。在 char 模式下,一旦您按下鍵,每個字元就會被發送出去——處理行、編輯等取決於終端中執行的程序,例如您的 shell。為什麼您要使用其中一個而不是另一個?行模式允許您對編寫的內容執行 Emacs 編輯操作,累積多行以一次發送,並在 Emacs 中執行文件名的製表符補全。有關詳細資訊,請參閱shell 模式下的命令列表。字元模式允許你使用底層程序的所有特性,比如它自己的(可能更好的)選項卡完成,而不是 Emacs 操作,並且還可以通過 Emacs 解釋為引用它自己的命令的輸入發送(比如
Ctrl-X
)。如果你想在vim
裡面執行,這也是你想要的模式emacs
。普通終端以相當於字元模式的方式執行。