[問題] 關於 Emacs 的 UTF-16 問題

看板Linux作者 (台灣獨立建國不必錢嗎?)時間16年前 (2009/12/03 20:44), 編輯推噓1(102)
留言3則, 3人參與, 最新討論串1/1
雖然問題是發生在 Cygwin 上, 但想說 Emacs 也算是 Linux 上常見軟體 所使用的 Emacs 是 23 版本的 假設我有一個有 abc 的檔案好了,確定是 UTF-16-LE 的格式 先複製成一個叫 def 的檔案(所以確定 abc 跟 def 的內容是一樣的) 然後用 Emacs 開啟 abc 再存檔(沒做什麼改變, Emacs 實際沒存,但可以新增一行再刪除) 之後,用 vim 開啟,就會成類似 ^@ ^@s^@e^@l^@f^@.^@_^@L^@i^@s^@t^@v^@i^@e^@w^@ ^@= ^@ ^@s^@e^@l^@f^@.^@_^@C^@a^@m^@e^@r^@a^@3^@D^@ ^@= ^@ ^@s^@e^@l^@f^@.^@_^@C^@a^@m^@e^@r^@a^@2^@D^@ ^@= ^@ ^@s^@e^@l^@f^@.^@_^@M^@a^@s^@k^@ ^@=^@ ^@M^@a^@s ^@ ^@s^@e^@l^@f^@.^@_^@I^@s^@H^@e^@a^@d^@e^@r^@H^@i 原始內容為 self._Listview = Listview; self._Camera3D = Camera3D; self._Camera2D = Camera2D; 看得出來,是 UTF-16 沒有被解釋 (確定 fenc 有設對,因為 vim def 的結果是正常的) 但用 Emacs 去看,結果卻是正常的 此外, hexdump -C abc > abc.xxx hexdump -C def > def.xxx 則, abc.xxx, def.xxx 這兩個檔案是一模一樣的 但用 ls -l 去看 abc, def 的檔案大小,是有差的 有發現到,相差的位元組數,相當於檔案的行數 然後用 iconv -f utf-16le -t utf-8 abc 結果卻是亂碼 請問有人知道是什麼回事,該如何解決嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.90.75

12/04 03:58, , 1F
建議改用emacs23,23才有真正完整的unicode支援
12/04 03:58, 1F

12/04 09:31, , 2F
我已說我是用 Emacs 23 了...
12/04 09:31, 2F

12/05 15:06, , 3F
我在 Linux 用 emacs22 試過你的操作,檔案內容沒問題
12/05 15:06, 3F
文章代碼(AID): #1B5xB56j (Linux)