2012-01-16 131 views
13

我有在蘋果創造了一些UTF-8的文件,並試圖利用他們在TextPad Windows中,我得到以下警告打開的時候:TextPad和Unicode:完全支持?

警告:(文件名)中包含不存在的字符代碼 第1252頁(ANSI拉丁文1)。如果單擊確定,它們將轉換爲系統默認的 字符。

Linux(GNOME gEdit)可以在不投訴的情況下打開相同的文件。以上是什麼意思?我認爲TextPad具有完整的UTF-8支持。我可以安全地打開並編輯使用它的UTF-8文件而不會破壞文件?

+2

可悲的是,最近(2013年3月)的TextPad v7版本無法解決這個問題。 – 2013-04-15 15:24:30

+0

總是也有同樣的問題。 TextPad非常棒,但它在字符編碼方面很糟糕。我所做的繞過這個問題的方法是將我的css文件的所有圖標定義行放入一個單獨的css文件中。然後我用記事本編輯這個文件。 – reggie 2013-06-07 08:35:49

+2

TextPad 8在這裏帶有BMP Unicode支持(請參閱http://stackoverflow.com/a/35076216/8946) – 2016-01-29 20:57:31

回答

10

似乎TextPad無法處理windows-1252以外的字符(CP1252,這裏帶有誤稱「ANSI Latin 1」)。我在Windows上測試了它,打開一個在同一系統上創建的純文本文件,如同使用和不使用BOM的UTF-8編碼一樣,結果相同。該程序的幫助似乎沒有包含與字符編碼相關的任何內容,其用於編寫「國際字符」的工具僅適用於Latin-1字符。

Windows有幾種文本編輯器可以處理UTF-8(甚至記事本可以打開UTF-8文件,但很難推薦進行嚴肅編輯)。請參閱Alan Wood收集的關於Unicode editors and word processors for Windows的信息。 (就我個人而言,我喜歡Notepad ++和BabelPad,它們都是免費的。)

+0

TextPad的規範特別說明了這一點:「16位Unicode,UTF-8和8位文本文件單字節和雙字節字符可以編輯。「 – 2012-01-16 12:24:07

+3

TextPad幫助表示對編碼感到困惑,但在「打開」對話框中將編碼設置爲UTF-8不會有幫助。在Configure/Preferences中,它也沒有幫助設置默認的編碼爲UTF-8:數據仍然被平鋪到windows-1252上(即它外面的字符被映射到windows-1252字符或問號或別的東西)。他們說:「這意味着只有在沒有數據丟失的情況下才能編輯包含隱含代碼頁中字符的文件。」(TextPad幫助,關鍵字「unicode」) – 2012-01-16 13:44:01

+0

很奇怪。當Notepad ++存在時,無法理解爲此類產品付費! – 2012-01-16 13:48:14

6

TextPad'僅支持'UTF-8和UTF-16文檔,只會導入和導出它們。但它仍然將文件編輯爲簡單字節,而不是Unicode字符(使用ANSI代碼頁,這是西歐的代碼頁1252)。

因此,除非文件碰巧只包含該代碼頁中也存在的字符,否則將會丟失內容。這相反擊敗了Unicode的觀點。

事實上,這是我逃離EmEditor時的問題,雖然現在我會同意前面的評論並推薦Notepad ++。支付文本編輯的時代已經過去了。

+1

如果我可以在我的餘生裏多花一點時間在stackoverflow上說一下,那麼它會嘗試一下編者。高超。 – monkjack 2012-05-28 12:39:31

+0

從TextPad 8開始,這不再正確。 – 2016-01-29 03:10:32

3

我發現在Textpad論壇上這樣的討論: http://forums.textpad.com/viewtopic.php?t=11019

雖然我記事本+ +,Textpad可輕鬆處理大型文件,而其他的編輯我試過,包括記事本++,無論是慢如蝸牛或死亡。我目前正在嘗試編輯一個475MB文件,Notepad ++沒有完成任務。

+0

大文件:我認爲這是因爲文本突出顯示,這需要更多的內存。 Notepad ++無法解決此問題,因爲這是記事本++用於顯示文本的Scintilla組件的限制。 – StanE 2015-05-10 04:18:42

+0

[EmEditor專爲處理大文件而設計](https://www.emeditor.com/text-editor-features/large-file-support/large-file-controller/)。根據我的經驗(例如,在具有4GB RAM的64位Windows計算機上,SQL文件大小爲5-15 GB),它的表現非常出色。 (在這種情況下,某些操作(如全局查找和替換)在任何文本編輯器中總是會很慢,但EmEditor採取切實可行的方法來做可能的事情。) – 2015-10-14 11:56:45

-2

嘗試ANSI代碼文件/打開設置,應在TextPad

5

其實TextPad並授予支持顯示Unicode代碼點,他們走遍了錯誤的方式解決問題。爲了顯示Unicode字符,你必須選擇Configure-> Preferences並展開「Document Classes-> Text-> Font

你需要選擇一個Unicode字體並設置腳本匹配。例如Arial Unicode MS與腳本CHINESE_BIG5

但是,這是一種落後的方法,因爲當用戶告訴TextPad以Unicode或UTF-8格式打開文件時,應用程序應該處理這個問題,MS Windows內置的記事本應用程序會自動檢測編碼,根據編碼正確顯示字形。

+1

即使Arial Unicode MS也不包含所有的字形I想;如果我是付費客戶和計算機科學畢業生,在閱讀他們的幫助文件,論壇等後,無法通過任何方式弄清楚如何使用TextPad製作多語言(甚至是泛歐洲)的UTF-8源代碼文件。並嘗試聯繫支持後;那麼就會出現嚴重錯誤(我不應該說我浪費了多少時間來處理由於TP造成的損壞的UTF-8 SQL轉儲問題!)如果TextPad人員要爲其產品提供unicode支持,那麼他們應該至少放一個星號在那個要求旁邊! – 2015-10-14 12:36:24

6

TextPad 8,2016-01-28最新,終於正確支持BMP Unicode。這是一次付費升級,但迄今爲止我一直在爲完美工作。

+0

是的,但...即使txt類配置爲始終轉換爲utf8,文件命令返回utf8,notepad ++正確打開該文件,爲txt類選擇了unicode字體,它通過假設ANSI將ä和ö轉換爲破碎字符,但如果插入非-ansi代碼頁字符,例如西里爾字符,而不是它假設正確的utf8。對我來說,這是一個錯誤,而不是功能,是的,NotePad ++手柄是正確的 – 2017-06-22 06:41:31