[r194]: trunk / doc / digraph.txt Maximize Restore History

Download this file

digraph.txt    329 lines (289 with data), 13.5 kB

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
*digraph.txt* For Vim version 7.3. 最近更新: 2008年8月
VIM 参考手册 by Bram Moolenaar
译者: Willis
http://vimcdoc.sf.net
二合字母 *digraph* *digraphs* *Digraphs*
二合字母用来输入不能用普通键盘输入的字符。它们通常是可显示的非 ASCII 字符。二
合字母比用 CTRL-V 输入十进制编码更方便记忆 (见 |i_CTRL-V|)。
用户手册 |24.9| 有二合字母的简短介绍。一个替代方案是用 'keymap' 选项。
1. 定义二合字母 |digraphs-define|
2. 使用二合字母 |digraphs-use|
3. 缺省的二合字母 |digraphs-default|
{Vi 没有这些命令}
==============================================================================
1. 定义二合字母 *digraphs-define*
*:dig* *:digraphs*
:dig[raphs] 显示当前定义的二合字母。
*E104* *E39*
:dig[raphs] {char1}{char2} {number} ...
把二合字母 {char1}{char2} 加入列表。{number} 是字符的
十进制表示形式。例如: >
:digr e: 235 a: 228
< 避免定义 '_' (下划线) 开头的二合字母,将来它会有特殊的
含义。
Vim 通常编译时带有 |+digraphs| 特性。如果没有,":digraph" 命令会显示错误信息。
":digraphs" 输出的例子: >
TH Þ 222 ss ß 223 a! à 224 a' á 225 a> â 226 a? ã 227 a: ä 228
每列 (译者注: "TH Þ 222" 称为一列) 前两个字符是你用来输入二合字母的两个字符。
每列的中间是产生的字符。如果你用不支持二合字母的系统察看或者打印,它们可能是乱
码。
*digraph-encoding*
通常,十进制表示形式是字符的 Unicode 数值。注意 'encoding' 改变的时候该数值并
不改变。如果需要,字符从 Unicode 转换为 'encoding'。这需要该转换确实能实现,有
时并非如此。NUL 字符会显示为 "10",这是因为 NUL 字符内部用 NL 字符表示。写回文
件时它会还原为 NUL 字符的。
如果 Vim 编译时没有 +multi_byte 特性,你需要指定该字符在 'encoding' 里的编码。
可以这样使用: >
if has("multi_byte")
digraph oe 339
elseif &encoding == "iso-8859-15"
digraph oe 189
endif
这样,"oe" 二合字母在 Unicode 里使用数值 339,而在 latin9 (iso-8859-15) 里使用
数值 189。
==============================================================================
2. 使用二合字母 *digraphs-use*
有两个方法输入二合字母: *i_digraph*
CTRL-K {char1} {char2} 或
{char1} <BS> {char2}
第一个方法总是可以用的;第二个方法只有在 'digraph' 选项置位的时候才可用。
如果二合字母 {char1}{char2} 不存在,Vim 会搜索二合字母 {char2}{char1}。这样,
即使你不记得何者在前,也能输入。
注意 如果输入 CTRL-K {char1} 时,{char1} 是特殊键,Vim 只会输入该键的编码。这
就不是输入二合字母了。
一旦你输入了二合字母,Vim 把该字符当成占据文件和屏幕的一个正常字符。示例: >
'B' <BS> 'B' 会输入中间断开的 '|' 字符 (166)
'a' <BS> '>' 会输入带 circumflex 重音的 'a' (226)
CTRL-K '-' '-' 会输入软的破折号 (173)
":digraphs" 列出当前的二合字母。一些缺省的二合字母列在下面的 |digraph-table|
里。
对 CTRL-K 而言,有一个通用的二合字母: CTRL-K <Space> {char} 会输入 {char},并
设置最高位。你可以用这个方法来输入带 meta 的字符。
二合字母里不能有 <Esc> 字符。按 <Esc> 的时候,Vim 停止二合字母的输入并回到插入
或命令行模式,这也可以理解为 <Esc> 退出了二合字母的上下文。用 CTRL-V 155 输入
meta-ESC (CSI)。
如果你本来想输入 'e' 但不小心输入了 'a',你也许会键入 'a' <BS> 'e'。但是这个序
列成了二合字母。这也许不是你想要的。要纠正这个错误,你需要再按一次 <BS> e。要
避免这一点,不要置位 'digraph' 选项,只用 CTRL-K 输入二合字母。
Vim 里使用值高于 128 的字符可能会有问题。例如: 你输入 ue (u-umlaut) 而编辑器在
插入模式回显 \334。离开插入模式一切就正常了。注意 fmt 删除待排版的文本里所有值
高于 128 的字符。有的 Unix 系统上,解决方法是定义 LC_CTYPE。如果你使用 csh,把
这行放入 .cshrc: >
setenv LC_CTYPE iso_8859_1
==============================================================================
3. 缺省的二合字母 *digraphs-default*
Vim 缺省提供了一些二合字母。":digraphs" 的输出列出这些二合字母。
Vim 在大多数系统中使用相同二合字母。它们适用于 Unicode 和 ISO-8859-1 字符集。
缺省的二合字母是 RFC1345 提供的助记符。为了方便记住这些助记符,第二个字符有一
个标准的含义:
字符名 字符 含义 ~
Exclamation mark ! Grave (钝音符号)
Apostrophe ' Acute (锐音符号)
Greater-Than sign > Circumflex (折音/抑扬符号)
Question Mark ? Tilde (腭化/鼻音化符号)
Hyphen-Minus - Macron (长音符号)
Left parenthesis ( Breve (短音符号)
Full Stop . 上带点 (Dot)
Colon : Diaeresis (分音符号)
Comma , Cedilla (软音符号)
Underline _ 带下划线 (Underline)
Solidus / 带短划线 (Stroke)
Quotation mark " Double acute (双锐音符号)
Semicolon ; Ogonek (鼻音化符号)
Less-Than sign < Caron (楔形/倒折音符号)
Zero 0 上带圆圈 (Ring)
Two 2 上带钩 (Hook)
Nine 9 带角 (Horn)
Equals = 西里尔字母 (Cyrillic)
Asterisk * 希腊语
Percent sign % 特殊的希腊/西里尔字母
Plus + 小写: 阿拉伯语,大写: 希伯来语
Three 3 一些拉丁/希腊/西里尔字母
Four 4 注音符号
Five 5 平假名
Six 6 片假名
示例: a: 是 ä 而 o: 是 ö
下面列出 RFC1345 定义的单字节二合字母。其他的二合字母见 ":digraphs"。高于 255
的字符只有在 Vim 编译的时候加上 |+multi_byte| 特性才能使用。
EURO
特例: RFC1345 没有指定欧元 (euro) 符号。Vim 里为此目的加入了二合字母 =e。注意
以下区别: latin1 里,二合字母 Cu 用于货币符号,而 latin9 (iso-8859-15) 里二合
字母 =e 用于欧元符号,尽管两者都代表字符 164,0xa4。为了和 zsh 兼容,Eu 也用于
欧元符号。
*digraph-table*
字符 二合字母 十六进 十进制 正式名字 ~
^@ NU 0x00 0 NULL (NUL)
^A SH 0x01 1 START OF HEADING (SOH)
^B SX 0x02 2 START OF TEXT (STX)
^C EX 0x03 3 END OF TEXT (ETX)
^D ET 0x04 4 END OF TRANSMISSION (EOT)
^E EQ 0x05 5 ENQUIRY (ENQ)
^F AK 0x06 6 ACKNOWLEDGE (ACK)
^G BL 0x07 7 BELL (BEL)
^H BS 0x08 8 BACKSPACE (BS)
^I HT 0x09 9 CHARACTER TABULATION (HT)
^@ LF 0x0a 10 LINE FEED (LF)
^K VT 0x0b 11 LINE TABULATION (VT)
^L FF 0x0c 12 FORM FEED (FF)
^M CR 0x0d 13 CARRIAGE RETURN (CR)
^N SO 0x0e 14 SHIFT OUT (SO)
^O SI 0x0f 15 SHIFT IN (SI)
^P DL 0x10 16 DATALINK ESCAPE (DLE)
^Q D1 0x11 17 DEVICE CONTROL ONE (DC1)
^R D2 0x12 18 DEVICE CONTROL TWO (DC2)
^S D3 0x13 19 DEVICE CONTROL THREE (DC3)
^T D4 0x14 20 DEVICE CONTROL FOUR (DC4)
^U NK 0x15 21 NEGATIVE ACKNOWLEDGE (NAK)
^V SY 0x16 22 SYNCHRONOUS IDLE (SYN)
^W EB 0x17 23 END OF TRANSMISSION BLOCK (ETB)
^X CN 0x18 24 CANCEL (CAN)
^Y EM 0x19 25 END OF MEDIUM (EM)
^Z SB 0x1a 26 SUBSTITUTE (SUB)
^[ EC 0x1b 27 ESCAPE (ESC)
^\ FS 0x1c 28 FILE SEPARATOR (IS4)
^] GS 0x1d 29 GROUP SEPARATOR (IS3)
^^ RS 0x1e 30 RECORD SEPARATOR (IS2)
^_ US 0x1f 31 UNIT SEPARATOR (IS1)
SP 0x20 32 SPACE
# Nb 0x23 35 NUMBER SIGN
$ DO 0x24 36 DOLLAR SIGN
@ At 0x40 64 COMMERCIAL AT
[ <( 0x5b 91 LEFT SQUARE BRACKET
\ // 0x5c 92 REVERSE SOLIDUS
] )> 0x5d 93 RIGHT SQUARE BRACKET
^ '> 0x5e 94 CIRCUMFLEX ACCENT
` '! 0x60 96 GRAVE ACCENT
{ (! 0x7b 123 LEFT CURLY BRACKET
| !! 0x7c 124 VERTICAL LINE
} !) 0x7d 125 RIGHT CURLY BRACKET
~ '? 0x7e 126 TILDE
^? DT 0x7f 127 DELETE (DEL)
~@ PA 0x80 128 PADDING CHARACTER (PAD)
~A HO 0x81 129 HIGH OCTET PRESET (HOP)
~B BH 0x82 130 BREAK PERMITTED HERE (BPH)
~C NH 0x83 131 NO BREAK HERE (NBH)
~D IN 0x84 132 INDEX (IND)
~E NL 0x85 133 NEXT LINE (NEL)
~F SA 0x86 134 START OF SELECTED AREA (SSA)
~G ES 0x87 135 END OF SELECTED AREA (ESA)
~H HS 0x88 136 CHARACTER TABULATION SET (HTS)
~I HJ 0x89 137 CHARACTER TABULATION WITH JUSTIFICATION (HTJ)
~J VS 0x8a 138 LINE TABULATION SET (VTS)
~K PD 0x8b 139 PARTIAL LINE FORWARD (PLD)
~L PU 0x8c 140 PARTIAL LINE BACKWARD (PLU)
~M RI 0x8d 141 REVERSE LINE FEED (RI)
~N S2 0x8e 142 SINGLE-SHIFT TWO (SS2)
~O S3 0x8f 143 SINGLE-SHIFT THREE (SS3)
~P DC 0x90 144 DEVICE CONTROL STRING (DCS)
~Q P1 0x91 145 PRIVATE USE ONE (PU1)
~R P2 0x92 146 PRIVATE USE TWO (PU2)
~S TS 0x93 147 SET TRANSMIT STATE (STS)
~T CC 0x94 148 CANCEL CHARACTER (CCH)
~U MW 0x95 149 MESSAGE WAITING (MW)
~V SG 0x96 150 START OF GUARDED AREA (SPA)
~W EG 0x97 151 END OF GUARDED AREA (EPA)
~X SS 0x98 152 START OF STRING (SOS)
~Y GC 0x99 153 SINGLE GRAPHIC CHARACTER INTRODUCER (SGCI)
~Z SC 0x9a 154 SINGLE CHARACTER INTRODUCER (SCI)
~[ CI 0x9b 155 CONTROL SEQUENCE INTRODUCER (CSI)
~\ ST 0x9c 156 STRING TERMINATOR (ST)
~] OC 0x9d 157 OPERATING SYSTEM COMMAND (OSC)
~^ PM 0x9e 158 PRIVACY MESSAGE (PM)
~_ AC 0x9f 159 APPLICATION PROGRAM COMMAND (APC)
| NS 0xa0 160 NO-BREAK SPACE
¡ !I 0xa1 161 INVERTED EXCLAMATION MARK
¢ Ct 0xa2 162 CENT SIGN
£ Pd 0xa3 163 POUND SIGN
¤ Cu 0xa4 164 CURRENCY SIGN
¥ Ye 0xa5 165 YEN SIGN
¦ BB 0xa6 166 BROKEN BAR
§ SE 0xa7 167 SECTION SIGN
¨ ': 0xa8 168 DIAERESIS
© Co 0xa9 169 COPYRIGHT SIGN
ª -a 0xaa 170 FEMININE ORDINAL INDICATOR
« << 0xab 171 LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
¬ NO 0xac 172 NOT SIGN
­ -- 0xad 173 SOFT HYPHEN
® Rg 0xae 174 REGISTERED SIGN
¯ 'm 0xaf 175 MACRON
° DG 0xb0 176 DEGREE SIGN
± +- 0xb1 177 PLUS-MINUS SIGN
² 2S 0xb2 178 SUPERSCRIPT TWO
³ 3S 0xb3 179 SUPERSCRIPT THREE
´ '' 0xb4 180 ACUTE ACCENT
µ My 0xb5 181 MICRO SIGN
¶ PI 0xb6 182 PILCROW SIGN
· .M 0xb7 183 MIDDLE DOT
¸ ', 0xb8 184 CEDILLA
¹ 1S 0xb9 185 SUPERSCRIPT ONE
º -o 0xba 186 MASCULINE ORDINAL INDICATOR
» >> 0xbb 187 RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
¼ 14 0xbc 188 VULGAR FRACTION ONE QUARTER
½ 12 0xbd 189 VULGAR FRACTION ONE HALF
¾ 34 0xbe 190 VULGAR FRACTION THREE QUARTERS
¿ ?I 0xbf 191 INVERTED QUESTION MARK
À A! 0xc0 192 LATIN CAPITAL LETTER A WITH GRAVE
Á A' 0xc1 193 LATIN CAPITAL LETTER A WITH ACUTE
 A> 0xc2 194 LATIN CAPITAL LETTER A WITH CIRCUMFLEX
à A? 0xc3 195 LATIN CAPITAL LETTER A WITH TILDE
Ä A: 0xc4 196 LATIN CAPITAL LETTER A WITH DIAERESIS
Å AA 0xc5 197 LATIN CAPITAL LETTER A WITH RING ABOVE
Æ AE 0xc6 198 LATIN CAPITAL LETTER AE
Ç C, 0xc7 199 LATIN CAPITAL LETTER C WITH CEDILLA
È E! 0xc8 200 LATIN CAPITAL LETTER E WITH GRAVE
É E' 0xc9 201 LATIN CAPITAL LETTER E WITH ACUTE
Ê E> 0xca 202 LATIN CAPITAL LETTER E WITH CIRCUMFLEX
Ë E: 0xcb 203 LATIN CAPITAL LETTER E WITH DIAERESIS
Ì I! 0xcc 204 LATIN CAPITAL LETTER I WITH GRAVE
Í I' 0xcd 205 LATIN CAPITAL LETTER I WITH ACUTE
Î I> 0xce 206 LATIN CAPITAL LETTER I WITH CIRCUMFLEX
Ï I: 0xcf 207 LATIN CAPITAL LETTER I WITH DIAERESIS
Ð D- 0xd0 208 LATIN CAPITAL LETTER ETH (Icelandic)
Ñ N? 0xd1 209 LATIN CAPITAL LETTER N WITH TILDE
Ò O! 0xd2 210 LATIN CAPITAL LETTER O WITH GRAVE
Ó O' 0xd3 211 LATIN CAPITAL LETTER O WITH ACUTE
Ô O> 0xd4 212 LATIN CAPITAL LETTER O WITH CIRCUMFLEX
Õ O? 0xd5 213 LATIN CAPITAL LETTER O WITH TILDE
Ö O: 0xd6 214 LATIN CAPITAL LETTER O WITH DIAERESIS
× *X 0xd7 215 MULTIPLICATION SIGN
Ø O/ 0xd8 216 LATIN CAPITAL LETTER O WITH STROKE
Ù U! 0xd9 217 LATIN CAPITAL LETTER U WITH GRAVE
Ú U' 0xda 218 LATIN CAPITAL LETTER U WITH ACUTE
Û U> 0xdb 219 LATIN CAPITAL LETTER U WITH CIRCUMFLEX
Ü U: 0xdc 220 LATIN CAPITAL LETTER U WITH DIAERESIS
Ý Y' 0xdd 221 LATIN CAPITAL LETTER Y WITH ACUTE
Þ TH 0xde 222 LATIN CAPITAL LETTER THORN (Icelandic)
ß ss 0xdf 223 LATIN SMALL LETTER SHARP S (German)
à a! 0xe0 224 LATIN SMALL LETTER A WITH GRAVE
á a' 0xe1 225 LATIN SMALL LETTER A WITH ACUTE
â a> 0xe2 226 LATIN SMALL LETTER A WITH CIRCUMFLEX
ã a? 0xe3 227 LATIN SMALL LETTER A WITH TILDE
ä a: 0xe4 228 LATIN SMALL LETTER A WITH DIAERESIS
å aa 0xe5 229 LATIN SMALL LETTER A WITH RING ABOVE
æ ae 0xe6 230 LATIN SMALL LETTER AE
ç c, 0xe7 231 LATIN SMALL LETTER C WITH CEDILLA
è e! 0xe8 232 LATIN SMALL LETTER E WITH GRAVE
é e' 0xe9 233 LATIN SMALL LETTER E WITH ACUTE
ê e> 0xea 234 LATIN SMALL LETTER E WITH CIRCUMFLEX
ë e: 0xeb 235 LATIN SMALL LETTER E WITH DIAERESIS
ì i! 0xec 236 LATIN SMALL LETTER I WITH GRAVE
í i' 0xed 237 LATIN SMALL LETTER I WITH ACUTE
î i> 0xee 238 LATIN SMALL LETTER I WITH CIRCUMFLEX
ï i: 0xef 239 LATIN SMALL LETTER I WITH DIAERESIS
ð d- 0xf0 240 LATIN SMALL LETTER ETH (Icelandic)
ñ n? 0xf1 241 LATIN SMALL LETTER N WITH TILDE
ò o! 0xf2 242 LATIN SMALL LETTER O WITH GRAVE
ó o' 0xf3 243 LATIN SMALL LETTER O WITH ACUTE
ô o> 0xf4 244 LATIN SMALL LETTER O WITH CIRCUMFLEX
õ o? 0xf5 245 LATIN SMALL LETTER O WITH TILDE
ö o: 0xf6 246 LATIN SMALL LETTER O WITH DIAERESIS
÷ -: 0xf7 247 DIVISION SIGN
ø o/ 0xf8 248 LATIN SMALL LETTER O WITH STROKE
ù u! 0xf9 249 LATIN SMALL LETTER U WITH GRAVE
ú u' 0xfa 250 LATIN SMALL LETTER U WITH ACUTE
û u> 0xfb 251 LATIN SMALL LETTER U WITH CIRCUMFLEX
ü u: 0xfc 252 LATIN SMALL LETTER U WITH DIAERESIS
ý y' 0xfd 253 LATIN SMALL LETTER Y WITH ACUTE
þ th 0xfe 254 LATIN SMALL LETTER THORN (Icelandic)
ÿ y: 0xff 255 LATIN SMALL LETTER Y WITH DIAERESIS
vim:tw=78:ts=8:ft=help:norl: