SKK-JISYO.lisp
NL名古屋 - connpassã§SKKè¾æ¸ã®è©±ãããã è¦ç´ããã¨ãç¹å®ã®æåãã¨ã¹ã±ã¼ãããã ãã§EmacsLispãå¿ è¦ã«ãªã£ã¦ã¤ããã¨ãã話ã ã£ãã
Transiruã§çºè¡¨ããã®ã§ãçºè¡¨æã®é³å£°çã¯ãã¡ãã§èãããçµç¤æ©å£ã«ãªã£ã¦ãã¾ã£ãã®ã§æ¥ãããã声åªå¹ãæ¿ããªãã·ã§ã³ã欲ããã
å稿
åæ
èªå·±ç´¹ä»
ããã«ã¡ã¯ã mzpã§ãã ã¿ã¤ãã«ã«ããããã«æ¥æ¬èªå ¥åã·ã¹ãã ã¨Lispã«ã¤ãã¦è©±ãããã¨æãã¾ããæ¥æ¬èªã®Nã¨ãLispã®Lã§NLã§ãã
ä½ã®è©±?
ä¸è¨ã§æ¥æ¬èªå ¥åã·ã¹ãã ã¨ãã£ã¦ãããããã®ç¨®é¡ãããã¾ãããLispã«ãããããã®ç¨®é¡ãããã¾ããã
ã®ã§ãå ·ä½çã«è¨ãã¨ã仿¥ã¯SKKã¨EmacsLispã®è©±ããã¾ããLispã¨ãã£ã¦EmacsLispãæã¡ã ãã®ã¯å¾®å¦ãªæ°ããã¾ãããã¾ãLispã¨åä¹ã£ã¦ãããã§ããOKã§ãããã
SKKã¨ã¯
ãã®SKKã«ã¤ãã¦ã§ãããããã¯ã ãã¶ç¬ç¹ãªæ¥æ¬èªå ¥åã·ã¹ãã ã§ããéå¸¸ã®æ¥æ¬èªå ¥åã·ã¹ãã ããããããªä½æ¥ãå©ç¨è ã«ããã¤ãããã¨ã§ãé«éãã¤é«ç²¾åº¦ã®æ¥æ¬èªå¤æãå®ç¾ãã¦ãã¾ãã
å ¥åä¾
åããã¥ããã¨æãã®ã§ãå ¥åä¾ãè¦ã¦ã¿ã¾ããä¾ã¨ãã¦ã仿¥ã¯é¨ã§ããã¨å ¥åãã¦ã¿ãå ´åã§ãã
æ®éã®æ¥æ¬èªå ¥åã·ã¹ãã ã§ã¯ããããã¯ããã§ããã¨å ¥åããã®ã¡ãã¹ãã¼ã¹ãæ¼ãã¦ã夿åè£ã表示ãã¾ããã馴æã¿ã§ããã
SKKã§ã¯ãæ¼¢å夿ãå§ããåã«Shiftãæ¼ãã¾ãã
Kyou
ããã¦ãè¤æ°ã®åèªãã¾ã¨ãã¦å¤æãããã¨ã¯ã§ããªãã®ã§ãããã§ã¹ãã¼ã¹ãããã¦åè£ã表示ãã¾ãã
ã²ãããªã¯ãã®ã¾ã¾å ¥åããã°OKã§ããç¹ã«å¤æã¯å¿ è¦ããã¾ããã
ha
ã¾ãæ¼¢åãªã®ã§Shiftãæ¼ãã¾ãã
Ame
ããã¦ãã¹ãã¼ã¹ãæ¼ãã¦åè£ã表示ãã確å®ããã¾ãã
ããã¦ãã¾ãã²ãããªã¯ãã®ã¾ã¾å ¥åãã¾ãã
desu
SKKã®ç¹å¾´
ãã®ããã«
- åèªãã¨ã§ãã夿ã§ããªã
- æ¼¢åã«å¤æãããã©ãããèªåã§å¤æããªã
ã¨ãã£ãç¹å¾´ãããã¾ãã
ä¸è¦ä½¿ãã¥ããã ãã®ããã«è¦ãã¾ããã夿ããåèªãå®å ¨ã«èªåã§å¶å¾¡ã§ããã®ã§ãæ £ããã°é¢ããããªããªã䏿¯æ§ãããã¾ãã
SKKã®å®è£
䏿¯æ§ãé«ãã½ããã¦ã§ã¢ã®ãããç¾å¨ã§ã¯æ§ã ãªãã©ãããã©ã¼ã ã§å©ç¨ã§ãã¾ãã
- Windows: SKKFEPãCorvusSKK
- Mac: AquaSKK
- iOS: FlickSKK
- Linux: iBus-SKK, UIM-SKK, SCIM-SKK
- Vim: skk.vim
- Emacs: ddskk
ãã®AquaSKKã¨FlickSKKã¯åãã¡ã³ããã¦ã¾ãã
SKKã®æ´å²
å ã¨ãªã£ãSKK(éç§°: æ¬å®¶SKK)ã¯ã1987å¹´ã«ãæ±å大妿æï¼å½æï¼ä½è¤é 彦ã«ãã£ã¦éçºããã¾ããã
ãã®æ¬å®¶SKKã¯ãEmacsä¸ã®ããã°ã©ã ã¨ãã¦éçºããã¾ããã ã¤ã¾ãEmacsLispãç¨ãã¦éçºããã¦ãã¾ããã
ããã¼ãEmacsã¯ãã°ãããã½ããã¦ã§ã¢ã§ããã å®ã«ãã°ãããã
è¾æ¸ãã¡ã¤ã«
ã¨Emacsãååã«è¤ããã¨ããã§ã¤ãã話ãã¯ããã¾ãã
ã²ãããªãæ¼¢åã«å¤æããããã«ã¯ãã²ãããªã¨æ¼¢åã®å¯¾å¿è¡¨ãå¿ è¦ã«ãªãã¾ãããã®å¯¾å¿è¡¨ã¯è¾æ¸ã¨å¼ãã§ãã¾ãã
ããã¦ãã®è¾æ¸ãã¡ã¤ã«ãéã貯ãããã§ãã¾ãã
è¾æ¸ãã¡ã¤ã«ã®æ¸å¼
è¾æ¸ãã¡ã¤ã«ã¯ããã¹ããã¡ã¤ã«ã«ãªã£ã¦ãããåè¡ã以ä¸ã®ãããªæ¸å¼ã«ãªã£ã¦ãã¾ãã
ãªãã /åå¤å±;æç¥/é£å¤å±/
å·¦ããé ã«ãè¦åºãèªãã夿åè£ããã¢ããã¼ã·ã§ã³(è¦ããã«è£è¶³æ å ±)ãã¨ãªã£ã¦ãã¾ãã夿åè£éã¯/ã§åºåããã¦ãã¦ãã¢ããã¼ã·ã§ã³ã¨ã¯;ã§åºåããã¦ãã¾ãã
èªç¶ãªæãããã¾ããã
ã¨ã¹ã±ã¼ã
ãããããã®æ¸å¼ããã£ã¨è¦ã¦ãã¨ãããã¤ã使ããªãæåããããã¨ãæ°ã¥ãã¾ããããã夿åè£ã¨ãã¦ã;ããã/ããå«ããã¨ãã§ããªãã®ã§ãã
ä¾ãã°ãowataãã®å¤æåè£ã¨ãã¦ã(^o^;)/ã ã¨ããç»é²ãããå ´åã¯ã©ããããããã§ãããã
å¯¾å¿æ¹æ³1: ã¨ã¹ã±ã¼ã
ããã¤ãã®å¯¾å¿æ¹æ³ãèãããã¾ãã ä¾ãã°ãæååãªãã©ã«ã®ããã«\ã§ã¨ã¹ã±ã¼ãããã°ããããã§ããã
owata /\\(^o^\;)\//
å¯¾å¿æ¹æ³2: å¥ã®æåã¸ã®ç½®æ
ãããã¯å¥ã®æåã«ç½®æãã¦ãã¾ãã®ãããã§ãããã
ä¾ãã°ã"[ASCIIã³ã¼ã]"ã®ãããªè¨æ³ãæ¡ç¨ããã¨ã;ã®ASCIIã³ã¼ãã¯0x3bã/ã¯0x2fãªã®ã§ä»¥ä¸ã®ããã«ãªãã¾ãã
owata /\(^o^[3b])[2f]/
å¯¾å¿æ¹æ³3: å ¨è§æå
ããããã¦ããä¼¼ãæåã使ããã¨ã§èª¤éåãã¦ãããã§ã(?)ã
owata /ï¼¼(^o^ï¼)ï¼/
ãããããªãã§ãã...ã
æ£è§£
ã¿ãªããã ã£ããã©ããã¾ãã?ã¡ãã£ã¨ã ãèãã¦ã¿ã¦ãã ããã
....
èãã¾ãããã ã§ã¯SKKãã©ãããããè¦ã¦ã¿ã¾ãããã
owata /(concat "\(^o^\059)\057")/
Så¼ã®æååãªãã©ã«ã使ã£ã¦ã¨ã¹ã±ã¼ãããããæ£è§£ã§ãããã
ã¾ããã...ã£ã¦æãã§ããã
ãã®ä»ã®ä¾¿å©æ©è½
æ¥æ¬èªå ¥åã·ã¹ãã ã使ã£ã¦ãã¨ããããã便å©ãªå¤æããããªã£ã¦ãã¾ãã
ä¾ãã°ã
- todayã仿¥ã®æ¥ä»ã«å¤æããã
- nowãä»ã®æå»ã«å¤æããã
- 5feetãã¡ã¼ãã«ã«å¤æããã
- å å·ã夿ããã
ãªã©ã§ãã
ãããã¯ãã¹ã¦EmacsLispã使ã£ã¦å®ç¾ã§ãã¾ã! ããã!
ã¾ããã...ã£ã¦æãã§ããã
ããã«ããããã¨ã«ä»¥ä¸ã®ãããªå¤æãEmacsLispã§å®ç¾ããã¦ãã¾ãã
- ç»é¢å¹ ãã£ã±ãã®ç·
ã¾ããã...ã£ã¦æãã§ããã
å®è£
Lispã®å®è£ ãããã®æ©è½ã¯ä½¿ãåã«ã¯ã¾ã ãããã§ãããå®è£ è ã¨ãã¦ã¯æªå¤¢ã§ãã
ã¤ã¾ãSKKãå®è£ ããã«ã¯ãEmacsLispå¦çç³»ãå®è£ ããªããã°ããã¾ããã ããå ·ä½çã«è¨ãã¨ãAquaSKKã¨FlickSKKã¯ãã¯ãã¡ã³ããã¦ããä¸ã§ããã¯ãEmacsLispå¦çç³»ãå®è£ ããªããã°ããã¾ããã
ã¾ããã...ã£ã¦æãã§ããã
SKK-JISYO.lisp
ãªããã¦ãã¦ããããããªãã®ã§ãç¾å®ã確èªãã¦ã¿ã¾ãããã
å®ã¯ã仿¥ã®æ¥ä»ãã®ãããªè¤éãªEmacsLispã®å¼ãå«ã夿åè£ã¯ãé常ã®è¾æ¸ã¨ã¯å¥ã§ç®¡çããã¦ãã¾ããä½è«ã§ããããã®å¥ã«ç®¡çããã¦ããè¾æ¸ã¯Lispè¾æ¸ã¨å¼ã°ãã¦ãã¾ããããã®Lispè¾æ¸ã£ã¦åèªãã ãã¶æå¿«ã§ããã
ãã®ããé常ã®è¾æ¸ã ããå©ç¨ããã¨å²ãåã£ã¦ãã¾ãã°ããã«ã»ããã®Emacsãå®è£ è ããã®ã¯é¿ããã¾ããé常ã®è¾æ¸ã«æ®ã£ã¦ããEmacsLispã®å¼ã¯concatã«ããæåã®ã¨ã¹ã±ã¼ãã ããªã®ã§ãããã«å¯¾å¿ããã ãã§ååã§ãã
å®è£ ç¶æ³
SKKã®åå®è£ ãããã«ã©ã®ããã«å¯¾å¿ãã¦ãããè¦ã¦ã¿ã¾ãããã
AquaSKK/FlickSKK
AquaSKK/FlickSKKã¯å²ãåã£ã対å¿ããã¦ãã¾ããå¤é¨ã®è¾æ¸ãã¡ã¤ã«ã«å«ã¾ããconcatã«ã¤ãã¦ã¯ä½ããã¾ãããã¤ã¾ã夿ããã¨ãããªå¤æçµæãã§ã¦ãã¾ãã(ä¾: dosv)
ããã¦ãã¦ã¼ã¶ãå ¥åããå 容ããçµæã«ã¤ãã¦ã¯ãå¥ã®æååã«ç½®ãæãããã¨ã§ã¨ã¹ã±ã¼ããã¦ãã¾ããå ã»ã©è¿°ã¹ãå¥ã®æåã¸ã®ç½®æã®ãããªå½¢å¼ã§ãã
owata /\(^o^[3b])[2f]/
å¾è ã¯ã¨ãããconcatãã§ã¦ããã®ã¯å¾®å¦ãªã®ã§ç´ãããã¨ã¯æã£ã¦ãã¾ãã
ibus-skk/scim-skk
ibus-skk/scim-skkã¯ãconcatã®ã¿ã®å®è£ ããã¦ãã¦ã½ãããªãæãã«ãªã£ã¦ãã¾ãã
CorvusSKK
䏿¹ãCorvusSKKã¯ããã®å®è£ ãããã°ã£ã¦ãã¦ãããã¤ãã®é¢æ°ããµãã¼ããã¦ãã¾ãããããã§ãã
ãã®ä»
Lispã®è©±ã¯ãããããã§ãããå®ã¯è¾æ¸ãã¡ã¤ã«ã«ã¯ã¾ã ããã¤ãã®éãåå¨ãã¦ãã¾ãã
è¾æ¸ã®ä¸¦ã³é
ããã¾ã§ã¯è¾æ¸ã®åè¡ã®è©±ããã¦ãã¾ãããããããã®è¡ã¯è¦åºãèªããã¼ã¨ãã¦ã½ã¼ãããã¦ãã¾ããããããè¾æ¸é ã§ããè¾æ¸ã§ããããã
ãã®ã¨ãã®æ¯è¼é¢æ°ã¨ãã¦ã¯EmacsLispã® string< ã使ããã¾ãã....ã¾ãEmacsLispãã
ããã¦ãã®string<ã¯æåã³ã¼ãé ã§æååãæ¯è¼ãã¾ãã ã¯ãããããããã¦ãã¾ãããã
ãªãã®æåã³ã¼ãã ããã£ã¦æãã§ãããSKKã§ã¯ä¼çµ±çã«ã¯EUC-JPã使ããã¾ãããæè¿ã¯UTF-8ã使ããã¨ãå¤ãã§ããã¨ããããã¯ã¯ä½¿ã£ã¦ãã¾ãã
UTF-8ã®æ¯è¼ã¨ããã¨ã¢ã¬ãããã¾ããã æ¿ç¹åé¡ã§ããNFCã¨NFDã¨ãã2種é¡ã®å½¢å¼ãããã¾ããæ¿ç¹ãåæãããæåã¨ãã¦ãã¤ããåè§£ãããæåã¨ãã¦ãã¤ãã®éãã§ãã
ä¸ã®ä¸çã«ã¯NFCã使ããã¨ãå¤ããã§ããããã¯ã®ã¡ã³ããã¦ããAppleç³»ã®ãã©ãããã©ã¼ã ã ã¨NFDã主ã«ä½¿ããã¦ãããã¾ãã
ã©ã¡ããæ£ããã¨ãåªãã¦ããã¨ãã¯ããã¾ãããã並ã³é ã«ã¯å½±é¿ããã®ã§æ³¨ææ·±ãæ±ãå¿ è¦ãããã¾ãããã¯ã¯ãããããã¾ããã
ãã£ã¤ãã§ããã
è¾æ¸ã®ã©ã¤ã»ã³ã¹
SKKã®è¾æ¸ãã¡ã¤ã«ã¯GPLã§é å¸ããã¦ãã¾ãã ããªã¼ãªã½ããã¦ã§ã¢ï¼ï¼ èªç±!!
...ãããããã¼ã¿ãã¡ã¤ã«ãGPLã£ã¦ããã®ã¯ã©ãããæ±ããªãã§ãããã
wikipediaããå¼ç¨ããã¨ãGPLã¯ãããã以ä¸ã®ãã¨ã許諾ããã©ã¤ã»ã³ã¹ã§ãã
- ããã°ã©ã ã®å®è¡
- ããã°ã©ã ã®åä½ã調ã¹ããããæ¹å¤ãããã¨ï¼ã½ã¼ã¹ã³ã¼ãã¸ã®ã¢ã¯ã»ã¹ã¯ããã®åæã«ãªãï¼
- è¤è£½ç©ã®åé å¸
- ããã°ã©ã ãæ¹è¯ããæ¹è¯ãå ¬è¡ã«ãªãªã¼ã¹ããæ¨©å©ï¼ã½ã¼ã¹ã³ã¼ãã¸ã®ã¢ã¯ã»ã¹ã¯ããã®åæã«ãªãï¼
æ¹å¤ã®è¨±å¯ã¨åé å¸ã¯ããã¨ãã¦ãå®è¡ã¨ããã®ã¯ä½ã«ãªããã§ããããã ãã¨ããã¹ããèªã¿åã£ã¦ã¢ã¬ã³ã¬ããã®ã¯åçãªã³ã¯æ±ãã§æ´¾çç©æ±ãã«ãªã£ãããããã§ããããã
è¬ã§ãã
AquaSKK/FlickSKKã®ã¡ã³ããã¨ãã¦ã®ãã¸ã·ã§ã³ãã¼ã¯ã¯ã忢±ã§ãã£ã¦ãªã³ã¯ã§ã¯ãªãããã®ããGPLã§ããè¾æ¸ãã¡ã¤ã«ãèªã¿åã£ã¦ããããããããã°ã©ã ã¯GPLã§ããå¿ è¦æ§ã¯ãªããã§ãã
å¥ã«ã¢ã³ãGPLã¨ããããã§ã¯ãªãã¦ãAppleã®AppStoreã¨GPLã®ç¸æ§ãæªãã®ã§ãä¿ºã®æ¸ããã³ã¼ãã¯GPLã§ã¯ãªããã¨ãããã¨ã«ãã¨ããªãã¨è²ã ã¨é½åãæªããã§ãã