Perl 6 - 輸入 Unicode 字符

輸入 Unicode 字符


Perl 6 允許把 unicode 字符用作變量名. 很多操作符使用 unicode 符號(特別是在 set/bag 操作符中)還有一些引號結(jié)構(gòu). 因此, 知道如何把這些符號輸入編輯器, Perl 6 shell 和 命令行中是極好的, 特別是現(xiàn)實鍵盤中不存在那個符號的時候.

在各種操作系統(tǒng)和環(huán)境下關(guān)于輸入 unicode 字符的通用信息可以在 Wikipedia unicode input page 中找到.

編輯器和 shell


Vim


在 Vim 中, unicode 字符是通過先按 Ctrl-V(也表示為 ^V), 然后按下 u 和 要輸入的 unicode 字符的十六進制值來輸入的(在插入模式). 例如, 希臘字母 λ (lambda) 是通過組合鍵來輸入的:

^Vu03BB

更多關(guān)于在 Vim 中輸入特殊字符的信息可以在 Vim Wikia 頁 entering special characters 中找到.

Emacs


在 Emacs 中, unicode 字符的輸入是首先輸入和弦 Ctrl-x 8 Enter , 然后再輸入 unicode 代碼點的十六進制數(shù)字, 然后回車. 因此, 要輸入希臘字母 λ (lambda) 使用下面的組合鍵(命令之間添加了空格以使清晰):

Ctrl-x 8 Enter 3bb Enter

更多關(guān)于在 Emacs 中輸入 unicode 字符的信息可以在 Unicode Encoding Emacs wiki page 中找到.

Unix shell


在 bash shell 中, 要輸入 unicode 字符先鍵入 Ctrl-Shift-u, 然后鍵入 unicode 代碼點的值后回車. 例如, 要鍵入屬于操作符()這個 unicode 字符, 使用下面的組合鍵(添加的空白是為了清晰):

Ctrl-Shift-u 2208 Enter

如果在 Unix shell 中開啟了 REPL, 這也是一種在 perl 6 的 REPL 中輸入 unicode 字符的方式之一.

Perl 6中有用的 Unicode 字符


引號


這些字符在法語和德語中是當(dāng)作引號使用的. 在 Perl 6中, 它們?nèi)匀挥米饕?在 POD 中是單引號, 在普通代碼中是雙引號), 還可以標(biāo)示超運算符. 下面是這些符號和它們的 unicode 十六進制值:

符號 unicode代碼點 ascii equivalent
?   U+00AB        <<
?   U+00BB        >>

因此, 下面這些結(jié)構(gòu)是可用的:

C? fixed-width POD text ?
say (1, 2) ?+? (3, 4);     # 4 6 ; element-wise add
@array ?+=? 42;            # add 42 to each element of @array
say ?moo?;                 # moo
my $baa = 123; say ?$baa?; # 123

Set/bag 操作符


下面列出的 set/bag 操作符 都有與集合理論相關(guān)的符號, unicode 代碼點, 和它們的 ascii 等價物. 要構(gòu)成這樣的一個字符, 只需鍵入字符組合鍵(例如 Vim中的 Ctrl-V u, Bash 中的 Ctrl-Shift-u), 然后輸入 unicode 代碼點的十六進制數(shù).

操作符 unicode代碼點  ascii equivalent
∈     U+2208        (elem)
?     U+2209        !(elem)
?     U+220B        (cont)
?     U+220C        !(cont)
?     U+2286        (<=)
?     U+2288        !(<=)
?     U+2282        (<)
?     U+2284        !(<)
?     U+2287        (>=)
?     U+2289        !(>=)
?     U+2283        (>)
?     U+2285        !(>)
?     U+227C        (<+)
?     U+227D        (>+)
∪     U+222A        (|)
∩     U+2229        (&)
?     U+2216        (-)
?     U+2296        (^)
?     U+228D        (.)
?     U+228E        (+)

數(shù)學(xué)符號


Wikipedia 包含了一個 unicode 中數(shù)學(xué)操作符和符號 的完整列表, 還有它們數(shù)學(xué)意義的鏈接.

希臘字符


希臘字符可以用作變量名了. 查看 Greek in Unicode Wikipedia article 列表獲取希臘和埃及字符還有它們的 unicode 代碼點.

例如, 把數(shù)值3賦值給 π, 在 Vim 中輸入(添加的空格是為了清晰):

my $Ctrl-V u 03C0 = 3;  # same as: my $π = 3;
say $Ctrl-V u 03C0;     # 3    same as: say $π;

上標(biāo)和下標(biāo)


使用 U+207x, U+208x 和 (less often) U+209x 范圍能直接創(chuàng)建一個有限的上標(biāo)和下標(biāo)的集合. 然而, 要生成一個值的平方或立方, 你需要使用 U+00B2U+00B3 , 因為這些被定義在 Latin1 supplement Unicode block 中.

因此, 要書寫泰勒級數(shù)展開, 你可以在 Vim 中輸入:

exp(x) = 1 + x + xCtrl-V u 00B2/2! + xCtrl-V u 00B3/3! + ... + xCtrl-V u 207F/n!
# which would appear as
exp(x) = 1 + x + x2/2! + x3/3! + ... + x?/n!

或者指定列表中從1到k 的元素:

 ACtrl-V u 2081, ACtrl-V u 2082, ..., ACtrl-V u 2096
 # which would appear as
 A?, A?, ..., A?
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 100,727評論 9 468
  • 買了一套書五百多,自學(xué)做衣服,這是根據(jù)書上內(nèi)容畫的女裝原型圖,雖然畫出來得到了老師的表揚,但是我依然不知道怎么來的...
    田橙姑娘閱讀 611評論 2 1
  • 感恩信陽種子群的小伙伴們,有您們相伴一起成長我是多么幸福,美好的清晨讀讀您們用心書寫的感恩日記,滿滿的感動,感恩有...
    毛毛細雨mmxy閱讀 263評論 0 0
  • 號外!號外!Seliana......嗯哼,讓我重新設(shè)定下角色和情緒,這是一個悲傷的故事。 SHE組合的...
    落葉跌倒閱讀 389評論 0 0
  • Translation X 弗雷德·史密斯與聯(lián)邦快遞:一個改變了世界的創(chuàng)想 1 每天夜晚,在田納西州的孟菲斯機場,...
    熊二果子閱讀 1,172評論 0 0

友情鏈接更多精彩內(nèi)容