secureCRT會將你原來的文本原封不動的按照字串的樣式發送給伺服器。所以當你的伺服器上的vim設定為autoindent的話,在i模式下,那麼它會將secureCRT傳輸而來的這些字串再進行一下縮排。若你拷貝的文本中已經有表示縮排的空格或者定位字元的話,它們也會被當成字串,而被縮排。
解決辦法:
1. 在拷貝前輸入:set paste (這樣的話,vim就不會啟動自動縮排,而只是純拷貝粘貼)
2. 拷貝完成之後,輸入:set nopaste (關閉paste)
附 paste 知識
'paste' 布爾型 (預設關閉)
全域
{Vi 無此功能}
將 Vim 切換到粘貼模式。可用於從一個視窗剪下或複製文本並粘貼到 Vim。它
的使用會避免一些意想不到的效果。
設定此選項可用於終端上啟動並執行 Vim,因為那裡 Vim 沒法區別輸入和粘貼的文
本。在 GUI 裡,Vim 知道何者來自粘貼,即使不開啟 'paste' 也基本上不會做
錯。對 Vim 能自己處理滑鼠點擊的終端也是如此。
啟動 GUI 時複位本選項。所以如果你在 .vimrc 裡置位它,可以使它在終端裡
工作,但不是在 GUI 裡。在 GUI 裡置位 'paste' 有副作用: 例如,Paste 工
具欄按鈕在插入模式下不能工作,因為它使用了映射。
開啟 'paste' 選項時 (包括它本來就是開啟的也會如此):
- 屏蔽插入模式和命令列模式的映射
- 屏蔽縮寫
- 'textwidth' 設為 0
- 'wrapmargin' 設為 0
- 'autoindent' 被複位
- 'smartindent' 被複位
- 'softtabstop' 設為 0
- 'revins' 被複位
- 'ruler' 被複位
- 'showmatch' 被複位
- 'formatoptions' 的使用方式就像它為空白一樣
下面這些選項保持原來的值,但沒有實際的效果:
- 'lisp'
- 'indentexpr'
- 'cindent'
注意: 開啟 'paste' 選項時如果你開始編輯別的檔案,模式行或者自動命令可
能會再次改變這些設定,從而在粘貼文本時造成麻煩。這時,你可能需要再次置
位 'paste' 選項。
'paste' 選項複位時,上面提到的選項被複原為上次 'paste' 從關到開時的設
置。置位 'paste' 之前複位 'paste' 沒有任何效果。因為 'paste' 啟用時不
能用映射,'pastetoggle' 選項可以用來指定切換 'paste' 選項的熱鍵。