… | |
… | |
65 | rxvt-unicode|rxvt-unicode terminal (X Window System):\ |
65 | rxvt-unicode|rxvt-unicode terminal (X Window System):\ |
66 | :am:bw:eo:km:mi:ms:xn:xo:\ |
66 | :am:bw:eo:km:mi:ms:xn:xo:\ |
67 | :co#80:it#8:li#24:lm#0:\ |
67 | :co#80:it#8:li#24:lm#0:\ |
68 | :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ |
68 | :AL=\E[%dL:DC=\E[%dP:DL=\E[%dM:DO=\E[%dB:IC=\E[%d@:\ |
69 | :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ |
69 | :K1=\EOw:K2=\EOu:K3=\EOy:K4=\EOq:K5=\EOs:LE=\E[%dD:\ |
70 | :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=^O:al=\E[L:\ |
70 | :RI=\E[%dC:SF=\E[%dS:SR=\E[%dT:UP=\E[%dA:ae=\E(B:al=\E[L:\ |
71 | :as=^N:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:cm=\E[%i%d;%dH:\ |
71 | :as=\E(0:bl=^G:cd=\E[J:ce=\E[K:cl=\E[H\E[2J:\ |
72 | :cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:dl=\E[M:do=^J:\ |
72 | :cm=\E[%i%d;%dH:cr=^M:cs=\E[%i%d;%dr:ct=\E[3g:dc=\E[P:\ |
73 | :ec=\E[%dX:ei=\E[4l:ho=\E[H:i1=\E[?47l\E=\E[?1l:ic=\E[@:\ |
73 | :dl=\E[M:do=^J:ec=\E[%dX:ei=\E[4l:ho=\E[H:\ |
|
|
74 | :i1=\E[?47l\E=\E[?1l:ic=\E[@:im=\E[4h:\ |
74 | :im=\E[4h:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ |
75 | :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l:\ |
75 | :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ |
76 | :k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~:k5=\E[15~:\ |
76 | :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ |
77 | :k6=\E[17~:k7=\E[18~:k8=\E[19~:k9=\E[20~:kD=\E[3~:\ |
77 | :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ |
78 | :kI=\E[2~:kN=\E[6~:kP=\E[5~:kb=\177:kd=\EOB:ke=\E[?1l\E>:\ |
78 | :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ |
79 | :kh=\E[7~:kl=\EOD:kr=\EOC:ks=\E[?1h\E=:ku=\EOA:le=^H:\ |
79 | :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ |
80 | :mb=\E[5m:md=\E[1m:me=\E[m\017:mr=\E[7m:nd=\E[C:rc=\E8:\ |
… | |
… | |
278 | As you might have guessed, FreeBSD does neither define this symobl |
279 | As you might have guessed, FreeBSD does neither define this symobl |
279 | nor does it support it. Instead, it uses it's own internal |
280 | nor does it support it. Instead, it uses it's own internal |
280 | representation of wchar_t. This is, of course, completely fine with |
281 | representation of wchar_t. This is, of course, completely fine with |
281 | respect to standards. |
282 | respect to standards. |
282 | |
283 | |
|
|
284 | However, that means rxvt-unicode only works in "POSIX", "ISO-8859-1" |
|
|
285 | and "UTF-8" locales under FreeBSD (which all use Unicode as wchar_t. |
|
|
286 | |
283 | However, "__STDC_ISO_10646__" is the only sane way to support |
287 | "__STDC_ISO_10646__" is the only sane way to support multi-language |
284 | multi-language apps in an OS, as using a locale-dependent (and |
288 | apps in an OS, as using a locale-dependent (and non-standardized) |
285 | non-standardized) representation of wchar_t makes it impossible to |
289 | representation of wchar_t makes it impossible to convert between |
286 | convert between wchar_t (as used by X11 and your applications) and |
290 | wchar_t (as used by X11 and your applications) and any other |
287 | any other encoding without implementing OS-specific-wrappers for |
291 | encoding without implementing OS-specific-wrappers for each and |
288 | each and every locale. There simply are no APIs to convert wchar_t |
292 | every locale. There simply are no APIs to convert wchar_t into |
289 | into anything except the current locale encoding. |
293 | anything except the current locale encoding. |
290 | |
294 | |
291 | Some applications (such as the formidable mlterm) work around this |
295 | Some applications (such as the formidable mlterm) work around this |
292 | by carrying their own replacement functions for character set |
296 | by carrying their own replacement functions for character set |
293 | handling with them, and either implementing OS-dependent hacks or |
297 | handling with them, and either implementing OS-dependent hacks or |
294 | doing multiple conversions (which is slow and unreliable in case the |
298 | doing multiple conversions (which is slow and unreliable in case the |