2010-11-15 65 views
11

我的終端仿真器配置爲Unicode字符編碼和我的.vimrc包含行如何將非ASCII字符粘貼到vim中?

set encoding=utf-8 

但是當我嘗試粘貼字「咖啡廳」到VIM,它出來作爲「中央美術學院©」。

我可以按Ctrl-VU使VIM爲「E」後面的4個字符的代碼點(00e9),但我想它粘貼的能力。

+3

聽起來像是不是真的UTF-8 – 2010-11-15 15:13:46

+1

我同意Pekka;您的系統的詳細信息可能與此處有關。我可以粘貼那樣的東西。 – Cascabel 2010-11-15 15:15:04

+1

可以將它粘貼到同一個終端而不運行vim,即它是否在(bash)提示符上正確顯示? – catchmeifyoutry 2010-11-15 15:15:22

回答

12

解決方法是取消選中Terminal.app設置的高級選項卡中的「轉義非ASCII輸入」複選框。

+0

很高興知道,你應該接受這個答案。 – 2011-08-12 18:20:43

1
  1. 從哪裏你試圖粘貼它?如果是opera,那麼opera-10.5 * paste會在兩個方向中斷。在粘貼任何東西之前,您需要使用xclip -o|xclip -i解決方法(爲剪貼板添加-sel clip)。
  2. 你使用什麼命令?
+0

我試圖在我的Mac上使用Command-V將我的粘貼板中的文本粘貼到vim中。 – sferik 2010-11-16 00:55:30

1

您可以使用vim的digraph功能將它添加到文件中,而不是將它複製到剪貼板並粘貼到文本編輯器中。

因此,使用默認設置,使用您的示例,您可以進入插入模式,然後按下Control-k並鍵入e'。結果將是é。

您可以通過運行

見定義有向圖的列表:有向圖

和一般幫助運行

:幫助有向圖

這也解釋瞭如何自定義映射。

如果您真的設置了粘貼字符,Shift-Insert一直爲我工作。

+0

有關如何在蘋果鍵盤(沒有插入鍵)上做Shift-Insert的任何提示? – sferik 2010-11-15 19:54:36

1

如何輸入一個非ASCII碼到六

你必須知道你的編碼輸入正確的代碼是什麼,我想你保留在默認的VI。

在第VI,進入插入模式,而在插入模式中,按

CTRL-V 172

這應該插入邏輯NOT(側身和倒L)字符定義這裏:

http://www.htmlhelp.com/reference/charset/iso160-191.html