說明:特殊字母與符號
維基百科使用手冊 |
概述
在MediaWiki 1.5中,所有的專案都使用了Unicode(UTF-8)字元編碼。如果你的作業系統和瀏覽器不支援Unicode(如網景瀏覽器或Mac版Internet Explorer),或者沒有安裝可以顯示某些Unicode字元的字型,你將無法正確瀏覽、編輯帶有這類字元的文章。典型的狀況是:把不能顯示的字元被顯示成內有數字的小方框,編輯框內不能顯示的字元被顯示成一組組字元代碼。本文章的下列章節會給出具體的介紹。
你可在在#顯示和#相關字型的下載與安裝這2章節找到有關的解決方案。
字元編碼系統
到2005年6月底,當這個新的版本開始在維基媒體上使用時,英國、荷蘭、丹麥和瑞典的維基百科已經使用了windows-1252編碼(他們宣佈用的是ISO-8859-1編碼,但實際上瀏覽器把二者辨識為同一種,而且Mediawiki並沒有限制使用windows-1252的歷史)。在資料庫中準備升級的wiki文件將始終以windows-1252編碼儲存,並且在載入時轉換。此後的更新將作為UTF-8編碼儲存在資料庫內。載入時轉換的過程對於用戶來說是不可見的。
- Unicode(UTF-8)
- 各字元位元組數可變
- 中日韓統一表意文字等特殊字元都可以在網頁和編輯框正常顯示,亦可用多字元代碼,且不會在編輯框自動轉換。
- ISO 8859-1
- 各字元僅一位元組
- 在此字元集中不可用的特殊字元以多字元代碼形式儲存,它們通常有兩到三個等價表示,例如:€,可表示為€,或€,或€。
- 包含最常見的特殊字元,比如é,也可表示為é,但這樣沒必要。
注意到Special:Export輸出時使用UTF-8,無論資料庫使用的是哪種編碼。
若想了解某維基使用的編碼系統,打開瀏覽器的「察看原始碼」,找以下字串:
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
或
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
編輯
多數電腦鍵盤的佈局都繼承自一八六八年由幾位美國人發明的打字機,其鍵位佈局都只為英文而設,當中只取廿六鍵位對應廿六字母,無考慮其他語言文字的字素數,二十世紀發明的美國標準資訊交換碼(ASCII)收的字素字元亦只有廿六英字,現今主流的鍵盤如無軟件輔助都打不出其他語言的文字,但許多不在ASCII的字元都對維基十分重要。非ASCII字元有幾種方法輸入:
- 使用編輯框下的特殊字元以插入文章,但有可能無法顯示部分字元。
- 按住ALT鍵並從數字鍵區依次輸入三位數輸入EASCII字元,但超出EASCII範圍的數字會轉成SOH符號(U+0001)。
- 直接使用特種鍵盤、該語言的輸入法或字元對映程式。在ISO-8859-1的維基將把字元集以外的字元轉換為HTML數字字元實體(見下)。
- 使用HTML命名字元實體參照,比如
à
。這對於不同的字元集來說都能非常正確的表達指定字元,即使無法顯示。不過可能引起搜尋的困難(見下)。 - 使用HTML數字字元參照,比如
¡
。這是輸入未命名實體Unicode值的唯一辦法,比如土耳其字元。代碼點128到159在ISO-8859-1和Unicode中都未使用,因此其間的字元參照是錯誤的,「非法的」,會引起多種問題。
總的來說,西歐語言一般不出現問題。
為了搜尋的成功,特殊字元最好不用字元實體參照,否則搜尋會出現問題。比如「Odiliënberg」,伺服器只會以「Odili」、「euml」或「nberg」進行搜尋。這其實是個bug,應該被修正。參見:Help:搜尋。
網頁瀏覽器
有些網頁瀏覽器會對編輯框裏的文字作一些手腳。最常見的行為就是將文字轉換為本地的編碼形式。用戶將不得不手動轉換回來。這也常造成特殊字元變成問號(在某些瀏覽器變成了音譯文字!)。
Internet Explorer
這種常見瀏覽器使用Mac OS Roman編碼系統。它幾乎把所有的Unicode字元變成問號,部分ISO-8859-1也不能倖免於難(特別是¤ ¦ ¹ ² ³ ¼ ½ ¾ Ð × Ý Þ ð ý þ 和軟連字元,包括所有Extended ASCII中編號161到255的字元)。所以用它瀏覽維基百科會造成極大的不便。
Netscape 4
問題與上者類似。[需要解釋]
工作區
正常瀏覽器: 資料庫和編輯框 |
異常瀏覽器: 編輯框 |
œ | œ |
œ | œ |
œ | œ |
在英文維基變為UTF-8之後,跨維基機械人就開始替換HTML實體為Unicode字元,但對於有些瀏覽器來說,不正常的Unicode字元越來越多。工作區就是為此設計,以保證那些瀏覽器能安全的進行編輯,當然僅當Mediawiki知道哪些瀏覽器是有問題的。
列在$wgBrowserBlackList(一組正則表達式,匹配User-Agent字串)的瀏覽器被提供一個特別的編輯框。十六進制HTML實體有多餘的前導0,非ASCII字元在編輯框顯示為無前導0的十六進制HTML實體。
當前IE Mac和一些版本的Linux Netscape 4.x瀏覽器在黑名單中,不過這能解決一些問題。
模板
下列模板可提醒讀者注意頁面有特殊字元:
代碼 | 說明 | 效果 |
---|---|---|
{{Special characters}} | 提示讀者該頁面有特殊字母或符號 | |
{{Non-printing character}} | 提示讀者該頁面有非列印字元 | |
{{Burmese characters}} | 提示讀者該頁面有緬文字母 | |
{{Contains Arabic text}} | 提示讀者該頁面有阿拉伯文字 | |
{{諺文組字}} | 提示讀者該頁面有古諺文,需要諺文組字 | |
{{APLcode}} | 提示讀者該頁面有APL語言的原始碼 |
檢視
目前大多數網頁瀏覽器都配備一定程度的Unicode編碼字元支援,最常遇到的問題是,在Windows XP執行的網頁瀏覽器依賴於登錄檔中的預組態字型連結,而不是實際搜尋可檢視相關字元的字型。這意味着網頁瀏覽器通常不得不被迫檢視特定的字型。維基百科有套模板可以做到這點,例如國際音標的{{{1}}}。Windows Glyph List 4中的內容在沒有這些特殊措施的情況下應該可以安全使用。
- 顯示特殊字元
要在網頁顯示Unicode或特殊字元,首先須在電腦安裝Unicode編碼字元的字型,然後設定瀏覽器、其擴充功能或附加元件。
Unicode編碼字元支援通過安裝可選的獨立Windows 7更新包KB2729094進行擴充,可用於Microsoft下載中心的32位元和64位元版本的Windows 7 SP1。 Windows 8的這個反向埠通過在Windows 7中添加對Emoji(表情符號)和其他符號的瀏覽器支援來更新Segoe UI字型。
使用Konqueror、Opera、Safari和其他基於Chromium開源專案的大多數瀏覽器時,特殊符號應該可以正確顯示,而不必進一步組態。在遵循先前提到的步驟之後,為了更好(和正確)顯示具有連字形式的字元,組合字元的可選步驟是安裝渲染引擎軟件。
要使用一種可用的Unicode字型在表格或圖表或框中顯示特殊字元,請指定class="Unicode"
在表的TR行標記中(或者每個TD標記中,但每個TR中使用它比在每個TD中使用它更容易),於維基表代碼使用時則在(TR等值)之後使用|-
(例如|- class ="Unicode"
)。
為了顯示單個特殊字元,可以在char的位置使用HTML十進制或十六進制數字實體代碼。如果需要顯示具有許多特殊Unicode字元的段落,可以使用<p class="Unicode">
……</p>
或<span class="Unicode">
……</span>
。
class="Unicode"
用於網頁和頁面、HTML或維基標籤,其中各種各樣的Unicode編碼字元的各種字元需要被顯示。如果需要在網頁上顯示的特殊字元大部分覆蓋較少的與拉丁指令碼有關的Unicode編碼字元,可以使用class="latinx"
。對於與國際音標有關的特殊字元或符號,可以使用class="IPA"
。對於polytonic (Greek)字元或相關符號,可以使用class="polytonic"
。
- 更改預設字型
Google Chrome允許用戶為普通,襯線,無襯線和等寬顯示模式設置預設字型。使用當前在系統上安裝的任何字型。若要訪問此設置,請點擊設置,並選擇顯示進階設置,然後進入自訂字型。您可以在這裏可以選擇系統中的任何字型作為預設值。
注意:根據頁面元素,許多網站(包括維基媒體)預設為serif或sans-serif字型(例如標題可能預設為serif,正文文字為sans serif),因此如果您希望覆蓋並強制這個某種字型,需要使用自訂CSS樣式。
用於Windows的舊版Internet Explorer中的拉丁指令碼的預設字型是Times New Roman。較早版本的字型不包含許多Unicode編碼字元。要在Internet Explorer中正確檢視特殊字元,必須將字型更改,例如免費提供的TITUS Cyberbit Basic和GNU Unifont。
請點擊從IE選單欄並選擇工具,然後點擊Internet選項並選擇不同的網頁字型顯示特殊字元,例如Lucida Sans Unicode。
Firefox必須更改預設設置。要做到這一點,請點擊選單,並選擇更多,然後進入文字編碼。取消選中預設框允許頁面以選擇其自己的字型,然後在預設字元編碼框中選擇一個Unicode選項(例如Unicode (UTF-32BE)或Arabic (ISO-8859-6))。另一種方法是將字型切換為Arial Unicode MS,然後可以選中預設框。
世界語
在編輯框 | 在資料庫和輸出 |
S | S |
Sx | Ŝ |
Sxx | Sx |
Sxxx | Ŝx |
Sxxxx | Sxx |
Sxxxxx | Ŝxx |
Mediawiki軟件可以設置世界語使用UTF-8編碼作為儲存和顯示編碼。但在編輯時,這些文字被轉換為容易以標準鍵盤編輯的格式。
有這特性的字元有:Ĉ,Ĝ,Ĥ,Ĵ,Ŝ,Ŭ,ĉ,ĝ,ĥ,ĵ,ŝ,ŭ。你可以用特種鍵盤直接鍵入這些字元,不過儲存後在編輯時你還是會看見Sx。這叫做「x-加帽拼寫」(參見:en:Esperanto orthography#The x-system)。如果想輸入在這些字元或它們的不發音形式(A,G,H,J,S,U,c,g,h,j,s,u)後的「x」,則應輸入顯示出來的「x」兩倍的「x」。
比如,世界語維基連結到en:Luxury car的跨語言連結,原始碼是[[:en:Luxxury car]]。這曾造成跨維基機械人工作的問題。
下載安裝字型
古代字母
- Windows
下載安裝下列任何字型:
- Noto Sans Phoenician、Noto Sans Old Italic、Noto Sans Linear B
- Aegean
- Akkadian/Cuneiform
- Cardo
- MPH 2B Damase
- Code2001
- Junicode
- Linux
基於Debian的Linux(例如ubuntu和Linux Mint等)可通過Synaptic下載ttf-ancient-fonts
的deb包。
撒馬利亞字母
要顯示撒馬利亞字母,請安裝以下字型:
楔形文字
要顯示蘇美爾楔形文字,下載安裝下列的任意一種字型:
安裝這幾種字型後firefox中能正常顯示和編輯,不過IE和Chrome僅能正常顯示楔形文字音節表,位於輔助多語言平面(SMP)內的U+12000—U+1236E 楔形文字(879個字元)和U+12400—U+12473 楔形文字數字和標點(103個字元)則無法顯示。
古埃及聖書體
要顯示古埃及聖書體,下載安裝下列的字型:
奧斯曼亞字母和蕭伯納字母
古埃及象形文字
比如<hiero>A54</hiero>得到
|
。參見mw:Extension:WikiHiero/Syntax(警告:本頁面含大量圖像!部分瀏覽器可能會崩潰。)。
這與瀏覽器的編碼系統無關,因為這是圖像。
當然也可用Unicode來表示它們,不過對於Windows 10以前的版本,您需要安裝「Noto Sans Egyptian Hieroglyphs」或「Aegyptus」以支援古埃及象形文字。
盲文
要顯示盲文,從下列的連結下載安裝字型:
婆羅米系文字
要顯示婆羅米系文字,從下列的連結下載安裝字型:
- 高棉文:Khmer Unicode Fonts
- 天城文:Devanagari Unicode Fonts
- 孟加拉文:Bengali Unicode Fonts
- 古吉拉特文:Gujarati Unicode Fonts
- 古木基文:Gurmukhi Unicode Fonts
- 緬文:Myanmar Unicode Fonts
- 奧里亞文:Oriya Unicode Fonts
- 泰盧固文:Telugu Unicode Fonts
- 卡納達文:Kannada Unicode Fonts
- 僧伽羅文:Sinhala Unicode Fonts
- 馬拉雅拉姆文:Malayalam Unicode Fonts
- 泰米爾文:Tamil Unicode Fonts
- 泰文:Thai Unicode Fonts、泰國國家字型、Noto Sans Thai
- 老撾文:Lao Unicode Fonts
- 布吉文:Buginese Unicode Fonts、Noto Sans Buginese
- 藏文:Tibetan Unicode Fonts
- 悉曇文:Muktamsiddham、Noto Sans Siddham、ApSiddham(需要 Graphite 技術支援)
蒙古文、滿文、錫伯文
Windows 7以上版本內建Mongolian Baiti也可以顯示蒙古文、滿文、錫伯文。
八思巴字
要顯示八思巴字,從下列的連結下載安裝字型:
舊式韓文/朝鮮文
西夏文和契丹小字
象雄文
顯示象雄文(Marchen),從下列的連結下載安裝字型:
傣那文
- GNU FreeFont
- Microsoft Tai Le(Windows字型,適用於Windows 7及以上版本)
- Noto Sans Tai Le (直接下載連結)、(GitHub連結),谷歌製作的字型
應該正確顯示的字型 | 您瀏覽器顯示的字型 | 轉寫 |
---|---|---|
ᥖᥭᥰᥘᥫᥴ | Tai Le ([tai˦.lə˧˥]) |
國際音標
有特殊字元的連結
當用戶使用下劃連結時,且連結有特殊字元時,結果可能有歧義。
連結 + - < > ⊂ ⊃ 得到 + - < > ⊂ ⊃,也許看起來像± = ≤ ≥ ⊆ ⊇。這樣最好單獨給出連結。
- A ⊂ B (見子集)
參見
外部連結
- http://www.unicode.org/charts/ Unicode字元表,僅十六進制數,PDF檔案顯示所有瀏覽器不能顯示的字元(英文)。
- http://www.unicode.org/help/display_problems.html 在大多數平台上啟用Unicode的幫助(英文)。
- 0到65535Unicode字元,十進制。
- HTML 4.0 Character Entity References—shows how the named and decimal character references look in one's browser
- FileFormat.Info—details of many Unicode characters, including the named, decimal and hexadecimal character reference, showing how it should look and for each, how it looks in one's browser
- Alan Wood's Unicode resources—comprehensive resource with character test pages for all Unicode ranges, as well as OS-specific Unicode support information and links to fonts and utilities
- CharacterPal—Free Mac OS X Dashboard Widget that displays key combinations for special characters
- A converter that helps one find the right escape sequence to use—helps when one needs to escape ASCII/Unicode characters that are special characters in wiki markup