ãã®èšäºã§ã¯ãã¢ã¯ã»ã¹å¯èœãªLuwrainç°å¢ã®äžè¬çãªæŠå¿µãç解ããããã«åºã¥ããŠèŠèŠé害ãæã€äººã ã«é©å¿ããã¢ããªã±ãŒã·ã§ã³ãäœæããã¿ã¹ã¯ã«ã€ããŠãæ€èšããŸãã ãã®èšäºã®èè ã®1人ã¯Luwrainãããžã§ã¯ãã®ã³ãŒãã£ããŒã¿ãŒã§ããMikhail Pozhidaevã«ä»ãªããªãããã誰ããæåéãçŽæ¥æ å ±ãå ¥æããæ©äŒããããŸãã å¥ã®èè ã¯ãã§ã«Luwrainã®æµãšããŠåæ ŒããŠããã®ã§ããã®æ··åç©ããã¬ãŒã³ããŒã·ã§ã³ã§ååãªã¬ãã«ã®å®¢èŠ³æ§ãæäŸããããšãé¡ã£ãŠããŸãã
ããŠãèªè ãäžå¿ èŠãªèãã«æ°ãåãããªãããã«ãã«ãŒã©ã€ã³ã¯ãã«ã¬ã€ã³ããšçºé³ãããå°å¹Žã§ããããšã«æ³šæããŠãã ãããã€ãŸãã第äžè ã§ã¯ã圌ããšèšããªããã°ãªããŸããã
ãããžã§ã¯ãã®ç®ç
Luwrainãããžã§ã¯ãã®ãã¬ãŒã ã¯ãŒã¯å ã§ãäž»ã«é床ã®èŠèŠé害ãæã€ãŠãŒã¶ãŒã®ç¹å®ã®ããŒãºã«é©å¿ããå°éçãªäœæ¥ç°å¢ãäœæããäœæ¥ãé²è¡äžã§ãã é床ã®èŠèŠé害ãšã¯ãç»é¢ããèŠèŠçãªåœ¢ã§æ å ±ãç¥èŠã§ããªãããšãæå³ããŸããã€ãŸããå®å šãªå€±æãŸãã¯éåžžã«èŠåãäœäžããŠããããšã«ã€ããŠè©±ããŠããããä»åŸã¯ç°¡åã«ããããã«ãããã®ãŠãŒã¶ãŒãäžè¬çãªèŠèŠé害ãšçµã¿åãããŸãã
ãã®ãããžã§ã¯ãã«ã¯3ã€ã®äž»ãªç®çããããŸãã
- ããŸããŸãªçç±ã§ãããŸã§ã§ããªãã£ãèŠèŠé害ã®ãããŠãŒã¶ãŒã®ã³ã³ãã¥ãŒã¿ãŒã§äœæ¥ããæ©èœãæäŸããŸãã
- çµéšè±å¯ãªãŠãŒã¶ãŒã«ãå€ãã®åºæ¬çãªã¿ã¹ã¯ãšã³ã¢ã¿ã¹ã¯ã解決ããããã®ä¿¡é Œã§ããçç£çãªããŒã«ãæäŸããã
- èŠèŠé害ã®ãã人åãã®ã¢ããªã±ãŒã·ã§ã³ãäœæããã³é åžããããã®ãã©ãããã©ãŒã ãæäŸããŸãã
ååãšããŠãèŠèŠé害è ã®ããã®ã³ã³ãã¥ãŒã¿ãŒæè¡ã®ã¢ã¯ã»ã·ããªãã£ã®åé¡ã¯æ°å幎åã«è§£æ±ºããããããLuwrainã¯çºèŠè ã®çºèŠè ã§ãããšäž»åŒµããŠããŸããã ä»æ¥ãå€ãã®å®å šãªç²äººãã³ã³ãã¥ãŒã¿ãŒã§åããŠãããèªå® ã§ãè·å Žã§ã䜿çšããŠããŸãã ããã«ãLuwrainã¯ãæ¢åã®éããžã¥ã¢ã«ã³ã³ãã¥ãŒã¿ãŒã¢ã¯ã»ã¹ãã¯ãããžãŒã®å®å šãªä»£æ¿åãšããŠäœçœ®ä»ããããŠããŸããã 圌ã®èãã¯ãå€ãã®ã¢ã¯ã»ã·ããªãã£ã®åé¡ãç°ãªãæ¹æ³ã§è§£æ±ºã§ããããã¯èŠèŠé害ãæã€å€ãã®ãŠãŒã¶ãŒã«ãšã£ãŠãã䟿å©ãããããªãã®ã§ããã®éžæãããæ©äŒã圌ãã«äžããå¿ èŠããããšããããšã§ãã
æçµçã«ãLuwrainã¯ã代æ¿ã®éããžã¥ã¢ã«PCã¢ã¯ã»ã·ããªãã£ãã¯ãããžãŒãæŒãã€ã¶ãããšãæå³ããŸããã ãã®ãããžã§ã¯ãã®æå³ã¯ããŠãŒã¶ãŒãç²ç®ã«ããŠã³ã³ãã¥ãŒã¿ãŒãšããåãããããã®ã¢ã¯ã»ã¹å¯èœãªã€ã³ã¿ãŒãã§ã€ã¹ãæäŸããéçºè ãæ¯æŽæè¡ã®åéã§èœåã®ãªãæé ãªäŸ¡æ Œã®ã¢ããªã±ãŒã·ã§ã³ãå®è£ ããæ©äŒãæäŸããããšã§ãã ä»æ¥ã®äžçã§ã¯ãã»ãšãã©ã®ãµãŒãã¹ãã€ã³ã¿ãŒãããã«æ¥ç¶ããããšãããããã¯ãŒã¯ãµãŒãã¹ãžã®éèŠèŠçã¢ã¯ã»ã¹ã€ã³ã¿ãŒãã§ã€ã¹ãå®è£ ããããã®ã·ã³ãã«ã§æè»ãã€æ©èœçãªãã©ãããã©ãŒã ãæäŸã§ããã®ã¯Luwrainã§ãã
ã«ãŒã©ã€ã³ã®ã³ã³ã»ãã
Luwrainã¯ãåŸæ¥ã®ã¹ã¯ãªãŒã³ãªãŒããŒã®æ©èœãè£å®ããèªå·±é³ç°å¢ã®ã¢ã€ãã¢ãéçºããŸããåŸæ¥ã®ã¹ã¯ãªãŒã³ãªãŒããŒã¯ãããã¯ã°ã©ãŠã³ãã§åäœãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšã¢ããªã±ãŒã·ã§ã³ã®ãã€ãã£ãã€ã³ã¿ãŒãã§ã€ã¹ãé³å£°ã§äŒããŸãã ã€ãŸããLuwrainã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã€ã³ã¿ãŒãã§ãŒã¹ã®ã¢ã¯ã»ã·ããªãã£ãæäŸããã®ã§ã¯ãªããåçŽã«ããèªäœã®ãŠãŒã¶ãŒã¿ã¹ã¯ã®æ倧æ°ã解決ããããšããå¥åã®ã¢ããªã±ãŒã·ã§ã³ã§ãã
Emacspeak ïŒEmacsç°å¢ã®ã€ã³ã¿ãŒãã§ã€ã¹ãæ確ã«è¡šããµãã·ã¹ãã ïŒã¯ãLuwrainã³ã³ã»ããã®éçºã«å€§ããªåœ±é¿ãäžããŸãããããã®é·æã«ã¯ç¹å¥ãªæ³šæãæãããŠããŸãã å®éãEmacsã¯èŠèŠé害è ã ãã§ãªããããã¹ãã€ã³ã¿ãŒãã§ã€ã¹ã®æŠå¿µã®å®è¡å¯èœæ§ã®æãé®®æãªäŸã§ãã ãŸããå ±éã®ã¢ã€ãã¢ã®èŠ³ç¹ãããLuwrainã«è¿ããããžã§ã¯ã-èŠèŠé害è ã®ããã®ç¹å¥ãªäœæ¥ç°å¢ããªã©ïŒ
- Adriane Knoppixã¯èŠèŠã«é害ã®ãããŠãŒã¶ãŒåãã«èšèšãããDebianããŒã¹ã®éå¶å©Linuxãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ãããèŠèŠçãªæ å ±åºåæ段ã䜿çšããå¿ èŠããªãããã§ãã ã¯ã©ãŠã¹ããããŒãç²ç®ã®åŠ»ãšã€ããªã¢ã³ã®ããã«ç¹å¥ã«äœæããŸããã
- Dolphin Guide -OSã®Windowsçšã®åçšäœæ¥ç°å¢ã§ãç°¡çŽ åãããé³å£°ã€ã³ã¿ãŒãã§ã€ã¹ãåããŠããŸãã äž»ã«é«éœ¢ãŠãŒã¶ãŒåãã®ãœãªã¥ãŒã·ã§ã³ãšããŠäœçœ®ä»ããããŠããŸãã
- ã¢ãã€ã«ã¢ã¯ã»ã·ããªãã£-OS Androidçšã®åçšã®é³å£°ã·ã§ã«ã§ãç²ç®ã®ãŠãŒã¶ãŒã«åºæ¬çãªã¹ããŒããã©ã³æ©èœã®ä¿èšŒãããå¯çšæ§ãæäŸããŸãã ããã¯ãAndroidã®ã¢ã¯ã»ã·ããªãã£æ©èœã®éçºæïŒçŽ4.1ãŸã§ïŒã«ç¹ã«é¢é£ããŠããŸããããå®éã«ã¯å€ãã®ããã€ã¹æ©èœã®ç°¡åãªã¢ã¯ã»ã·ããªãã£ã確ä¿ããå¯äžã®ããŒã«ã§ããã
ã€ãŸããLuwrainã®åºç€ãšãªãåºæ¬ååã¯ãä»æ¥ã®äž»ã«éåžžã®ã°ã©ãã£ã«ã«ã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšããèŠèŠé害è ã®æ¯æŽæè¡ã®äž»æµãšã¯ç°ãªããŸãããããèªäœãããªãå®è¡å¯èœã§ãããããã¯åæ¥çã«æåãããã®ãå«ãå€ãã®åæ§ã®è£œåã®ååšã«ãã£ãŠèšŒæãããŠããŸãã ããã«ãããããããLuwrainã¯ããã§ã«æ ããéãç¹°ãè¿ãã ãã§ãªããèªå·±é³Žãé¿ãè·å Žç°å¢ã®ã¢ã€ãã¢ã®ãããªãçºå±ãæäŸããããåªããŠãããããã§ã¯äžèšãšã¯ç°ãªããŸãïŒ
ãŸããLuwrainã¯Javaã§èšè¿°ãããŠããããã©ãããã©ãŒã äŸåã®ã«ããŽãªããã¯ãã¹ãã©ãããã©ãŒã ãœãªã¥ãŒã·ã§ã³ã®ã«ããŽãªã«ããã«ç§»è¡ããŸãã æœåšçã«ãLuwrainã¯JVMã®ãããšãããªãã©ãã§ãå®è¡ã§ããŸãããããã€ãã®æå°ã·ã¹ãã èŠä»¶ãé å®ããå¿ èŠããããšãã圢ã§ã®ããã€ãã®æ³šæäºé ãšãé³å£°åæã®åçã觊èŠãã£ã¹ãã¬ã€ã®æ¥ç¶ã«äœ¿çšã§ããæ å ±åºåã€ã³ã¿ãŒãã§ãŒã¹ã®ååšãäŸå€ã§ãã ç¹ã«ãLinuxãOS Xãããã³Windowsãå®è¡ããŠããã³ã³ãã¥ãŒã¿ãŒã§ã®Luwrainã®äœæ¥ã¯ãä»æ¥ã®çŸå®ã§ãã
第äºã«ãJavaã䜿çšãããšãç£æ¥ã¬ãã«ã§å€§éã®æ¢è£œã®ã³ãŒãã«ã¢ã¯ã»ã¹ã§ãããããç¹å®ã®æ©èœãå®è£ ããé©åãªJavaã©ã€ãã©ãªãæ¥ç¶ããã ãã§ãäœæ¥ç°å¢ã®æ©èœããã°ããç°¡åã«æ¡åŒµã§ããŸãã
第äžã«ãLuwrainã®èšèšã®äž»èŠãªã³ã³ããŒãã³ãã®1ã€ã¯ãäœæ¥ç°å¢ã®æ¡åŒµæ§ã§ãã ã€ãŸããå®éã«ã¯ãèŠèŠé害ã®ããã¢ããªã±ãŒã·ã§ã³ã®ããã«ã¢ã¯ã»ã·ãã«ãäœæããããã®ãã¬ãŒã ã¯ãŒã¯ãšããŠæ©èœã§ããŸãã ããã¯ãä»ã®ç¹æ®ãªã¯ãŒã¯ã¹ããŒã¹ãšã¯ç°ãªããLuwrainã¯ãŠãŒã¶ãŒã究極ã®æ©èœã®å³æ Œãªãã¬ãŒã ã¯ãŒã¯ã«ããã¯ããªãããšãæå³ããŸãã ããã«ãLuwrainå ã§æé ãªäŸ¡æ Œã®ã¢ããªã±ãŒã·ã§ã³ãäœæããã«ã¯ãç¹å¥ãªç¥èã¯å¿ èŠãããŸããããã®ãããå人ã®éçºè ãäŒæ¥ã¯ãWebãµãŒãã¹çšã«LuwrainããŒãžã§ã³ã®ã¢ããªã±ãŒã·ã§ã³ãŸãã¯ã¯ã©ã€ã¢ã³ããç°¡åã«æºåã§ããŸãã
第4ã«ãLuwrainã«ã¯2ã€ã®åœ¢åŒããããŸãããã¹ãŠã®äžè¬çãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã äžã§å®è¡ã§ããã¯ãã¹ãã©ãããã©ãŒã äœæ¥ç°å¢ãšããŠãããã³ç²ç®ã®Fromããã³ToïŒå¥ã®ãã®ãå«ãïŒããã³ã³ãã¥ãŒã¿ãŒã«ã¢ã¯ã»ã¹ã§ããããã«ããã¹ã¿ã³ãã¢ãã³ã®LinuxããŒã¹ã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ãšããŠã·ã¹ãã ã®ã€ã³ã¹ããŒã«æ®µéïŒã
ãŸãããããã¹ãŠã§ãLuwrainã¯GPLã®æ³åŸã®äžã§ç掻ããéå¶å©ã®ãªãŒãã³ãœãŒã¹è£œåã§ãããããèŠèŠé害ãæã€äººã ã®ããã«ã3çš®é¡ã®PCã¢ã¯ã»ã·ããªãã£ãä¿èšŒããŸãïŒãŠãŒã¶ãŒã®ç¥èã®æå°èŠä»¶ã®èŠ³ç¹ãããéèãæè¡ãã¢ã¯ã»ã·ããªãã£ã
Luwrainã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ãã
ãã®èšäºã§ã¯ãéèŠèŠçãªæ å ±ã®ãã¬ãŒã³ããŒã·ã§ã³ã®çè«çãªåŽé¢ã«ã€ããŠã¯æãäžããŸããããLuwrainãšåŸæ¥ã®ã¹ã¯ãªãŒã³ãªãŒããŒã®æŠå¿µã¯æŠå¿µçã«ã¯ããªãç°ãªããŸãããããã¯å¥ã®äŒè©±ã§ãã ä»åã¯ãèŠèŠé害ã®ãããŠãŒã¶ãŒãã¢ã¯ã»ã¹ã§ããã¢ããªã±ãŒã·ã§ã³ãäœæããããã®ãã¬ãŒã ã¯ãŒã¯ãšããŠæ©èœãããLuwrainãéçºè ã«æäŸããå¯èœæ§ã®æŠèŠã«çŠç¹ãåœãŠãŸãã
ãã§ã«è¿°ã¹ãããã«ãLuwrainã®äž»ãªéçºèšèªã¯Javaã§ããå¥ã®èšèªã§æ¡åŒµæ©èœãäœæããããšãã§ããŸããããŠãããŒãµã«APIã®ãµããŒããå®è£ ããå¿ èŠããããŸãã ãã®ã€ã³ã¿ãŒãã§ãŒã¹ã¯ãèŠèŠé害è ã®ç¥èŠã«éåžžã«é©ãã圢åŒã§æ å ±ãæ瀺ããã³ç®¡çããæ¹æ³ã®æ€çŽ¢ã«åºã¥ããŠããŸãã ããããéçºè ã¯ãéèŠèŠçãªã¢ã¯ã»ã·ããªãã£ã®åéã§æ·±ãç¥èãå¿ èŠãšããŸããããªããªãã圌ã¯Luwrainã¯ã©ã¹ã«åºã¥ããŠå¿ èŠãªæ©èœã®ã¿ãèšèšããããã§ãã ãã¹ãŠã®ç¹ç°æ§ã¯ãç¹å®ã®ã«ãŒã«ãç¥ãå¿ èŠæ§ã«ãã£ãŠå¶éãããŸãã
åºæ¬çãªæŠå¿µ
ãŸããLuwrainã§ã®éçºã«åºæã®ããã€ãã®åºæ¬çãªæŠå¿µãå®çŸ©ããŸãããã
ã¢ããªã±ãŒã·ã§ã³ã¯ãå ±éã®Luwrainãã©ãããã©ãŒã ç°å¢ã§å®è¡ããããã©ã°ã€ã³ã§ãã ç»é¢äžã§èŠèŠçã«æ瀺ããããã«ãé³å£°åºåãšããã¹ãã®äž¡æ¹ãåæã«çæããŸãã å°æ¥çã«ã¯ã3çªç®ã®ãã£ãã«ããããŸããç¹ååºåãã€ãŸããã©ã°ã€ã³è§ŠèŠãã£ã¹ãã¬ã€ã§ã®ããŒã¿ã®è¡šç€ºã§ãããçŸåšã®æ®µéã§ã¯ãLurainã®ç¹ååºåã¯ãŸã è¡ãããŠããŸããã éçºè ã¯ãã¢ããªã±ãŒã·ã§ã³ã€ã³ã¿ãŒãã§ã€ã¹ã®å®è£ ãèªåã§æäŸããå¿ èŠããããŸãã
ã¢ããªã±ãŒã·ã§ã³ã€ã³ã¿ãŒãã§ã€ã¹ã«é¢ããããã¥ã¡ã³ãã
ãšãªã¢ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ã¯ãŒã¯ã¹ããŒã¹å ã®ã³ã³ãããŒã«ã®æœè±¡åã§ãã Luwrainç°å¢ã®ã³ã³ãããŒã«ãããã¹ãããŒã¹ã§ããããšãé€ããŠãGUIãšä»ã®åºæ¬çãªéãã¯ãããŸããã ãã®é åã¯ãããã¹ãæ å ±ã®ãœãŒã¹ãšããŠããã·ã¹ãã ããã®ã€ãã³ãã®åä¿¡è ãšããŠãæ©èœããŸãã ã¢ããªã±ãŒã·ã§ã³ã¯ãŒã¯ã¹ããŒã¹ã¯ã1ã€ä»¥äžã®é åã§æ§æã§ããŸãã ã¢ããªã±ãŒã·ã§ã³ãšã¯ç°ãªããLuarainã¯æ¡åŒµãšã«ã¹ã¿ãã€ãºã«é©ããã³ã³ãããŒã«ã®ã©ã€ãã©ãªãæå³ãããããAreaã®ç¬èªã®å®è£ ãæºåããå¿ èŠã¯ãããŸããã
ãšãªã¢ã€ã³ã¿ãŒãã§ã€ã¹ããã¥ã¡ã³ãã
å¶åŸ¡ã©ã€ãã©ãª
Luwrainã¢ããªã±ãŒã·ã§ã³ã¯ãŒã¯ã¹ããŒã¹ãæ§ç¯ãããšããåºæ¬çã«ã¯ã䜿ãæ £ããGUIèŠçŽ ã®ããã¹ãã®é¡äŒŒç©ãæäœããŸãã ããã¯ããªã¹ããç·šéå¯èœãªããã¹ããäžé£ã®ãã£ãŒã«ããæã€ãã©ãŒã ãããŒãã«ãããªãŒãªã©ã§ãã org.luwrain.controlsããã±ãŒãžãããããã¹ãŠãæ åœããŸãã
org.luwrain.controlsããã±ãŒãžã®ããã¥ã¡ã³ãã
ããã§ã¯ãäŸãšããŠãèŠçŽ ã®ãªã¹ãã®äœæãšã«ã¹ã¿ãã€ãºã詳现ã«æ€èšããŸãã å¶åŸ¡èŠçŽ ã§ã¯ãåå¥ã®ã¢ãã«ã«ã¯ãã³ã³ãã³ããä¿åããããã®ã¢ãã«ïŒã¢ãã«ïŒãšããŠãŒã¶ãŒãžã®æ å ±ã®è¡šç€ºãæ確ã«ããããã®ãã¬ãŒã³ããŒã·ã§ã³ïŒã¢ãã¢ã©ã³ã¹ïŒããããŸãã
ListModelã€ã³ã¿ãŒãã§ã€ã¹ã«é¢ããããã¥ã¡ã³ãã
ListItemAppearanceã€ã³ã¿ãŒãã§ã€ã¹ã«é¢ããããã¥ã¡ã³ãã
ã³ã³ãããŒã«ã®ãªã¹ãã§ã¯ã次ã®ããšãåºæ¬çã«çºçããŸãã
- ã¢ãã«ã¯äžé£ã®èŠçŽ ãæ ŒçŽãããŠãŒã¶ãŒãžã®ãã¬ãŒã³ããŒã·ã§ã³ã®è©³çŽ°ãæ°ã«ããŸããã
- getItemCountïŒïŒããã³getItemïŒïŒã¡ãœããã¯ãå€ãã®èŠçŽ ãžã®ã¢ã¯ã»ã¹ãæäŸããŸãã
- refreshïŒïŒã¡ãœããã¯ããŠãŒã¶ãŒããªã¹ãã®å 容ã®æŽæ°ãèŠæ±ããããšãã¢ãã«ã«éç¥ããŸãã
- toggleMarkïŒïŒã¡ãœããã¯ãèŠçŽ ã®éžæç¶æ ã®å€æŽãèŠæ±ããã¢ãã«ãè€æ°éžæãæå³ããªãå Žåã¯falseãè¿ãããšãã§ããŸãã
- ListItemAppearanceã€ã³ã¿ãŒãã§ãŒã¹ã§ã¯ãintroduceItemïŒïŒã¡ãœãããäœããã®ãµãŠã³ãã¢ã¯ã·ã§ã³ãå®è¡ããŠãã«ãŒãœã«ãæ°ãããªã¹ãã¢ã€ãã ã«çœ®ãããŠããããšããŠãŒã¶ãŒã«éç¥ããå¿ èŠããããŸãã Luwrainã¯ãç¹å®ã®ã»ãã³ãã£ãã¯è² è·ãéã¶é³å£°ä¿¡å·ã䜿çšããäœæ¥ã®ãµããŒããç©æ¥µçã«äœ¿çšããŠããã話ãããšãããéãèŠèŠé害è ã«æ å ±ãäŒããããšãã§ããŸãã
- getScreenAppearanceïŒïŒã¡ãœããã¯ãèŠèŠçã«è¡šç€ºããããã«ç»é¢ã«è¡šç€ºãããæååãè¿ããŸãã
- getObservableLeftBoundïŒïŒããã³getObservableRightBoundïŒïŒã¡ãœããã䜿çšãããšããŠãŒã¶ãŒãã¹ãã«ã§ããç»é¢äžã®è¡ã®ãã©ã°ã¡ã³ããå®çŸ©ã§ããŸãã ãã®é åã¯ãèŠèŠçãªè¡šç€ºã®ã¿ãç®çãšããã·ã³ãã«ã®è§£æããŠãŒã¶ãŒã«åŒ·å¶ããªãããã«å¶éãããå ŽåããããŸãã
ã€ãã³ãåŠç
Luwrainã®å éšã§ã¯ãããŒããŒãã€ãã³ãïŒKeyboardEventïŒãšç°å¢ã€ãã³ãïŒEnvironmentEventïŒã®2ã€ã®ã°ã«ãŒãã®ã€ãã³ããåºå¥ãããŸãã
ããŒããŒãã¯ããŒãæããŸãã ããŠã¹ããã³ãã®ä»ã®äœçœ®æ±ºãå ¥åããã€ã¹ã¯äœ¿çšãããŸããã ããã¯ãããŠã¹ã«ãŒãœã«ã®äœçœ®ã«é¢ãã䟿å©ãªéèŠèŠçããŒã¿è¡šç€ºãäžå¯èœã§ãããšããæ ¹æ¬çãªåé¡ã«ãããã®ã§ãã ã¿ãããããã¯ãããšãã°ãOS Xã®VoiceOverã§å®è£ ãããŠããããã«ãããŒã¹ãããŒã¯ã«é¡äŒŒããã€ãã³ãã§ãããŒããã£ã¹ããããå¯èœæ§ããããŸãã
ç°å¢ã€ãã³ãã¯ãã¯ããŒãºããã£ã³ã»ã«ãOKãã¯ãªããããŒãæäœãæŽæ°ãªã©ã®ã»ãã³ãã£ã¯ã¹ã瀺ãäžè¬çãªã³ãã³ããéä¿¡ããŸãã ãã«ãã¹ã¬ããã¢ããªã±ãŒã·ã§ã³ã®çžäºäœçšãæŽçããããã«äœ¿çšãããç¹å¥ãªã¿ã€ãã®ã€ãã³ãããããŸãã 1ã€ã®ã¹ã¬ããã®ã¿ã§ç°å¢ãæäœã§ããŸããç°å¢èªäœã¯æ©èœããŸãããæ®ãã®ã¹ã¬ããã¯ããã¯ã°ã©ãŠã³ãã§æ©èœããŸãããã·ã¹ãã ã«ã¯å®å šãªçžäºäœçšã®ã¡ã«ããºã ããããŸãã
KeyboardEventã¯ã©ã¹ã®ããã¥ã¡ã³ãã
ã¯ã©ã¹ã®ããã¥ã¡ã³ãEnvironmentEventã
ç®ã®äžèªç±ãªãŠãŒã¶ãŒã¯ç»é¢å šäœã泚èŠããæ©äŒã¯ãããŸããããå®éã«ã¯ã«ãŒãœã«ã®äžã®æ å ±ã®ã¿ãèªã¿åããç·åœ¢åœ¢åŒã§èªèããŠããããããã¹ãŠã®ã³ã³ãã³ãã«100ïŒ ã¢ã¯ã»ã¹ã§ããããã«ããŠãããŒããŒãããéäžã§ããããã«ããããšãéåžžã«éèŠã§ãã åŸæ¥ã®GUIã§ã¯ãããã¯ç¹å¥ãªããªãã¯ã«ãã£ãŠå®çŸãããLuwrainã§ã¯æåã«äœæããããããéçºè ã¯ããã«ã€ããŠèããå¿ èŠãããããŸããã ããŒããŒãã䜿çšãããšãç»é¢ã®ä»»æã®éšåã«ã¢ã¯ã»ã¹ã§ããŸããã€ãŸããKeyboardEventã¯æ倧ã®å¶åŸ¡ãªãã·ã§ã³ãæäŸããŸãã
ãããžã§ã¯ãã®çŸç¶
çŸåšãLuwrainç°å¢ã¯ããŒã¿ã¹ããŒã¿ã¹ã§ãã Linux ã OS X ãããã³Windowsçšã®å®è¡å¯èœãªãã«ããšã ããŒãå¯èœãªISOã€ã¡ãŒãžã®åœ¢åŒã®ãªãã·ã§ã³ããããŸãã éå»6ãæéã§ãã¡ãã£ã¢ã®ã³ã¢ã¯å€§å¹ ã«æžãæããããçŸåšã¯å®å®ã«è¿ã¥ããŠããŸãã å·çæç¹ã®ææ°ããŒãžã§ã³ã0.4ã
çŸåšããã¡ã€ã«ãããŒãžã£ãŒãRSSã¢ã°ãªã²ãŒã¿ãŒãé»åã¡ãŒã«ã¯ã©ã€ã¢ã³ããªã©ã®åºæ¬æ©èœãæäŸããå éšLuwrainã¢ããªã±ãŒã·ã§ã³ãäœæããã³éçºããããã®ç©æ¥µçãªäœæ¥ãé²è¡äžã§ãã ããã«ãç¹å®ã®ãã©ãããã©ãŒã ã®ã¢ã»ã³ããªã«é¢é£ããç¹å®ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ç°å¢ã§Luwrainã®èµ·åãšæäœãæäŸãããç°å¢ã®ãã©ãããã©ãŒã äŸåãããã¯ãæçµåãããŠããŸãã ããšãã°ãããã¯ãTTS APIïŒLinuxã®å Žåã¯VoiceManã¹ããŒããµãŒããŒãOS Xã®å Žåã¯Speech SynthesisãWindowsã®å Žåã¯SAPI5ïŒã䜿çšããŠç¹å¥ãªæ¹æ³ã§åãã©ãããã©ãŒã ã«å®è£ ãããé³å£°åæã«é¢ä¿ããŸãã
ä»åŸã®èšç»ã§ã¯ãåºæ¬çãªæ©èœãåãããããã¯ã·ã§ã³å¯Ÿå¿ã®LuwrainããŒãžã§ã³ãæåã®å®å®çãªãªãŒã¹ã«å«ããããšãå«ãŸããŸãã ããã«ãããçŸåšããŒã¿çããã¹ãããŠããçµéšè±å¯ãªãŠãŒã¶ãŒã ãã§ãªããäžè¬ã®äººã ã§ã補åãå®è¡ã§ããŸããããã«ãããè¿œå ã®ãã£ãŒãããã¯ãæäŸãããã¿ãŒã²ãããªãŒãã£ãšã³ã¹ã®é¢å¿ãèæ ®ã«å ¥ããããã«ããã«éçºããå¿ èŠãããä»ã®åŽé¢ãç解ã§ããŸãã
æ®å¿µãªããšã«ãLuwrainãé å®ããŠããç¹æ®ãªç°å¢ã®æŠå¿µãã®ãã®ã¯ããŠãŒã¶ãŒã«åºæ¬çãªæ©èœãæäŸããã®ã«å°é£ã䌎ããŸãã ããã¯äž»ã«ãäœããã®çç±ã§Luwrainå ã§å®è£ ããããšãå°é£ãªã¿ã¹ã¯ãåå ã§ãã ããšãã°ãããã¯ãã«ãã©ãŠã¶ãSkypeãªã©ã«é©çšãããŸãã ãŸããWebKitã®Javaå®è£ ã®ååšã®ããã«Luwrainå ã«ãã©ãŠã¶ãŒãäœæããããšãéåžžã«çŸå®çã§ããå ŽåãSkypeKitã®æè¿ã®ééã®ããã«åãSkypeã§å éšå®è£ ã¯äžå¯èœã§ãã
ã€ãŸããããã€ãã®åé¡ã®è§£æ±ºã«ã¯ããŠãŒã¶ãŒãLuwrainãè¶ ããŠãç°å¢å ã®å¯Ÿå¿ããæ©èœãå®è£ ãããªãããšãå«ãŸããŸãã ãã ããäžèšã®ããã«Luwrainã¯æ¢åã®ã¹ã¯ãªãŒã³ãªãŒããŒã®å®å šãªä»£æ¿åãšããŠäœçœ®ä»ããããŠããªããããããã¯å®å šãªæå³ã§ã®æ¬ ç¹ã§ã¯ãªããåãªãæ©èœã§ãã
ãããžã§ã¯ããžã®åå
Luwrainãããžã§ã¯ãã¯ããªãŒãœãããŠã§ã¢ã®äŒçµ±ã«åºã¥ããŠéçºãããŠãããã³ãã¥ããã£ã«å¯ŸããŠå®å šã«éãããŠããŸãã éçºãããžã§ã¯ãã«åå ããã人ã¯èª°ã§ããã³ãã¥ããã£ã®äžå¡ã«ãªãããæåŸ ãããŸãã äœæ¥ã¯ãç°å¢èªäœã®éçºãã¢ããªã±ãŒã·ã§ã³éçºãããŸããŸãªåœã®åœå®¶æšæºã®å®è£ ïŒããŒã«ã©ã€ãºïŒããã¶ã€ã³ã®ããã®é³æ¥œçŽ æã®æºåãããã³å人ãŸãã¯çµç¹ãè¡ãæºåãã§ããŠããä»ã®å»ºèšçãªè²¢ç®ã®ããã€ãã®æ¹åã§å®è¡ã§ããŸãã
Luwrainã®ãœãŒã¹ã³ãŒãã¯ã GitHubã«ããããã€ãã®Gitãªããžããªã«ä¿åãããåžžã«æŽæ°ãããŠããŸã ã ãããã®å®å šãªãªã¹ãã¯ã å ¬åŒã®Luwrain Webãµã€ãã®å¯Ÿå¿ããããŒãžã«ãããŸãã
誰ããäœããã®åœ¢ã§ãããžã§ã¯ãã«åå ããããšããé¡æãæã£ãŠãããªããé£çµ¡ãåã£ãŠãã ããïŒ