2012-08-14 37 views
2

有很多程序員編輯聲稱支持unicode/utf-8。我已經嘗試了一些(UltraEdit,jedit,emedit),但他們都沒有告訴你如何實際輸入unicode字符到文件中。其中一些告訴你如何將默認文件編碼更改爲utf-8或如何選擇對utf-8具有良好支持的字體,但不知道如何使用編輯器將utf-8輸入到文件中。在程序員編輯器中使用unicode/utf-8

Go語言(和其他一些)支持utf-8,我喜歡使用實際的utf-8符號作爲變量而不是像omega這樣的名稱。儘管如此,我還沒有發現一個程序員編輯器,它實際上允許你這樣做。

我發現的唯一編輯器/文字處理器可以讓你如何輸入unicode是Microsoft Word。輸入unicode,Alt + X和Word將其轉換。要獲得希臘字母Omega類型「03c9」,然後按Alt + X。 UltraEdit會讓你從一個網頁中複製utf-8到它,但是他們的文檔沒有說如何在一個文件中實際輸入utf-8,以及他們的技術。支持人們也不知道。

這應該很簡單,但似乎完全沒有記錄。是否有一些組合約定允許您將這些unicode輸入到支持unicode的編輯器中以便於Ctrl-F廣泛用於搜索?

謝謝。

+3

「支持UTF-8」和「握住手來輸入」是兩回事。操作系統通常是爲各種語言的文本提供輸入方法的操作系統。 – deceze 2012-08-14 06:13:16

+0

當您編寫「輸入Unicode」時,您似乎指字符實體或轉義序列(取決於您正在編寫的內容的類型)。但是,您應該能夠將「真實」字符直接輸入到任何具有體面的Unicode支持的編輯器中。 (除了中文漢字和日本漢字不顯示在jEdit中。) – 2016-12-26 23:38:09

回答

-1

它看起來像程序員編輯器(除了一些微軟產品)的unicode支持大多是隻讀的。他們可以使用unicode打開文件並顯示字符,但在文件中輸入unicode則是另一回事。如果您想在程序員編輯器中輸入unicode,您可以從其他地方(網頁或Microsoft Word或記事本)複製它,然後將其粘貼到編輯器中,但編輯器使得輸入unicode變得困難或不可能。

UltraEdit技術支持轉介給我this web page,這解釋了很多。不幸的是,這些解決方案都沒有使用UltraEdit。

Microsoft Word和記事本支持unicode條目。鍵入unicode值,然後按Alt + X,它將轉換十六進制並顯示它。然後,您可以將其複製並粘貼到UltraEdit或其他程序員編輯器中。正如其他人所說的,unicode的支持取決於操作系統和編輯的支持。

讓我感興趣在源代碼文件中使用unicode的原因是Mark Summerfield的書「Go in Programming」。他包含一個使用unicode的示例.go文件。將unicode希臘字符用於變量名稱而非名爲「omega」或「theta」的變量會很好。

但是,在源代碼中使用unicode是個不錯的主意。在程序員編輯器中對Unicode的支持很糟糕,開發人員必須將源代碼文件保存或轉換爲utf-8而不是ASCII。不管這個想法聽起來多麼整齊,開發人員的工具還沒有準備好用unicode編寫代碼。

+0

對於它的價值,我可以使用日文輸入法和/或具有「非ASCII字符」的鍵盤在OS X上的Sublime Text中很好地「用Unicode編程」。這裏。 – deceze 2012-08-15 06:40:00

+1

UltraEdit通過按住ALT鍵並在數字鍵盤上鍵入一個數字值來支持unicode條目。但是,這不支持輸入十六進制值。他們添加了十六進制條目作爲增強請求。 – 2012-09-01 20:58:20

2

標準程序員編輯器vim(1)支持有限的Unicode輸入,即使您的操作系統應該被破壞得不能這樣做(還有嗎?)。

只需輸入^VuXXXX,其中XXXX只表示四個十六進制數字。

這將允許您輸入分配給基本多語言平面的Unicode的〜6%。其餘的都禁止給你。

這可能會在更新的版本中修復。

否則,只需使用鼠標即可。

+0

試過在Windows上的vim,它不起作用。我需要使用任何特殊鍵(Ctrl,Alt,...)嗎? – 2012-08-14 03:31:48

+0

^V表示Control-V。 – tchrist 2012-08-14 03:32:15

+0

Ctrl-V粘貼窗口中的緩衝區中的內容。 – 2012-08-14 03:38:41

2

一些技巧我使用,如果一個編輯器缺乏:

  1. 使用Windows charmap.exe工具選擇字符粘貼到文檔中。
  2. 安裝輸入法編輯器(IME)以使用特定語言編寫。
  3. Windows ALT keycodes
+0

特別是日本的IME可以幫助它轉換爲幾個不同的候選人。不知道Windows日本IME在這方面的效果如何。 – deceze 2012-08-14 06:09:00

+0

我不知道日本人,但中國人的作品很棒...我會寫中文 – 2012-08-14 06:29:57

+0

例如,使用OS X日本IME:輸入「o-m-e-g-a」,點擊幾次→ω。 (·ω·) – deceze 2012-08-14 06:44:10

2

最好將鍵盤設置爲在所有Windows應用程序中生成Unicode字符,而不是依賴單個應用程序的自定義輸入功能IMO。

使用EnableHexNumpad feature,您可以使用Alt + numbad-plus,十六進制代碼在基本多語言平面中鍵入任何字符。 (雖然沒有數字鍵盤的筆記本電腦可能沒有多大用處。)

或者如果您想輸入很多特定字符,請找到允許您直接輸入的鍵盤佈局。例如eurokb可能會覆蓋它,或者您可以使用MSKLC自己製作。

1

老問題,但你可以在GNU Emacs的或Vim中鍵入了大量的Unicode的

  • GNU Emacs的:M-x set-input-method RET tex(或C-x RET C-\ tex)將讓您鍵入\omega產生ω

  • 的Vim: Vim 圖形可以生成unicode;插入模式下的C-k w *會給你ω。