2011-03-03 124 views

回答

2

使用您的終端的機制,通過Unicode codepoint輸入字符。在侏儒-終端的情況下,這是Ctrl鍵移位ü隨後的十六進制代碼(例如200e),然後輸入

+0

有趣的是,我不知道這 – Dan 2011-03-03 15:23:03

3

嘗試更換\u200e :)

您可以測試這個工程通過插入字符到您的緩衝區,而當看到它,如果你在插入模式下鍵入此顯示爲<200e>,:<C-R>="\u200e"<CR>(這是CTRL + R和<CR>手段ENTER)

7

首先,如果你要替換字節爲0x20(它是空間,如果我沒有弄錯),你需要使用\%x20,不\x20因爲\x指定一個十六進制數字(除非內部使用收集,有\x20意味着什麼預期)。但是如果你想替換給定的Unicode字符,你應該使用\%u200E\u200E在一個集合中)。

其次,\%x20[\x20]都將字符與unicode代碼0x20匹配,而不是字節代碼0x20。它對空間無關緊要,但對代碼點> 0x7F有所不同。

2

我會將光標放在藍色<200e>上,然後輸入yl以複製(複製)字符。

然後,類型:%s/<C-R>"/replacement/g

(其中<C-R>Control+R,當然)。

+0

另外,由於我們已經知道所需的代碼點,所以可以通過使用' u200e'來插入字符而不用延長。請參閱[':help i_CTRL-V_digit'](http://vimdoc.sourceforge.net/htmldoc/insert.html#i_CTRL-V_digit)。 – 2013-12-20 07:06:16