å æ¥ã®é¢è¥¿Emacsã§ã¯ãEmacs Lisp ã®å ¥éè¨äºããããã¨ãããæ¸ãããããã«ãªãæ å ±ããªããããã¨ãã話ãèãã¾ããã確ãã«ãEmacsã®åæ©çãªæä½å ¥éã¨ãè¯ãæ¸ãã人ãã¢ããªãããã°ãªã©ã§elispãã°ãã£ã¨æ¸ãã¦ãã®ã¯ããè¦ã¾ããå ¥éããæ¸ããããã«ãªãã¾ã§ã®éã®éç¨ã¯è¦ããã¨ç¡ãã£ããããããªãã¨æãã¾ããã ã¨ãããã¨ã§ãEmacsã®å 人ãã¡ã«ã¯ã¾ã ã¾ã åã³ã¾ããããããã¤ãã®ã¢ããªãæ¸ãã¦ã¿ãèªåããã©ã£ãæ¹æ³ãæ¸ãã¦ã¿ã¾ããå ã«ã¾ã¨ããã¨ä»¥ä¸ã®2ã¤ã«ãªãã¨æãã¾ãã elispã§ã©ããã¦ãæ¸ãããç©ãããã㨠ããããæ¸ãã¦åããã¦ï¼ãã£ã¡ãå ï¼ãããã¦Infoãä»äººã®ã³ã¼ããè¦ã¦åå¼·ãã æ¸ãã以åã®ã¾ã¨ã Emacsæ´10年以ä¸ããã§ã«çæ´»ã®ä¸é¨ã ã§ãè¨å®ãæ¸ãã®ã«ä½¿ã£ã¦ãããããã æ¢åã®ã¢ããªã®åããããããã°ãæå ã§ã¡ãã£ã¨ç´ãã¨ãã LISPç³»ã®è¨èª
åºæ ããã¯èª°ã®ããã«æ¸ããããã®ã Lisp ã®æ´å² åå¿è ã®äººã¸ è¬è¾ 訳è ã¾ããã 1. List å¦ç 1.1 Lisp ã®ãªã¹ã 1.1.1 Lisp ã®ã¢ãã 1.1.2 ãªã¹ãã®ä¸ã®ç©ºç½ 1.1.3 GNU Emacs ã«ãããªã¹ãã®ã¿ã¤ãã®æ¯æ´ 1.2 ããã°ã©ã ã®å®è¡ 1.3 ã¨ã©ã¼ã¡ãã»ã¼ã¸ã®åºå 1.4 ã·ã³ãã«ã®ååã¨é¢æ°å®ç¾© 1.5 Lisp ã¤ã³ã¿ããªã¿ 1.5.1 ãã¤ãã³ã³ãã¤ã« 1.6 è©ä¾¡ 1.6.1 å é¨ã®ãªã¹ãã®è©ä¾¡ 1.7 å¤æ° 1.7.1 å¤ã®ãªãã·ã³ãã«ã«å¯¾ããã¨ã©ã¼ã¡ãã»ã¼ã¸ 1.8 å¼æ° 1.8.1 å¼æ°ã®ãã¼ã¿å 1.8.2 å¼æ°ã«ã¯å¤æ°ã®å¤ããªã¹ãã使ãã 1.8.3 å¯å¤ãªæ°ã®å¼æ° 1.8.4 é¢æ°ã«ééã£ãåã®å¼æ°ãä¸ãã㨠1.8.5 é¢æ° message 1.9 å¤æ°ã®å¤ã®è¨å® 1.9.1 set ã®å©ç¨ 1.9.2 setq
ã¤ã³ãããã¯ã·ã§ã³ è¨æ³ Lisp Reader 㨠Printer NilãFalseãEmpty ãªã¹ã Evaluation(è©ä¾¡)ãExpansion(å±é)ãEquivalence(ç価) Printing ã¨ã©ã¼(ã¤ã³ãããã¯ã·ã§ã³) ããã¹ãã®æ¿å ¥ è¨è¿°ã®å½¢å¼ é¢æ°ã®è¨è¿°ä¾ åç´å¤æ°ããªãã·ã§ã³ãã³ã³ã¹ã¿ã³ãè¨è¿° ã¿ã¤ã㨠Lisp ãªãã¸ã§ã¯ã print è¡¨ç¾ ã¨ read ã·ã³ã¿ãã¯ã¹ æ°å¤ã¿ã¤ã æåã¿ã¤ã ã·ã¼ã±ã³ã¹ã¿ã¤ã ãªã¹ãã¿ã¤ã é åã¿ã¤ã ã¹ããªã³ã°ã¿ã¤ã ãã¯ãã«ã¿ã¤ã ã·ã³ãã«ã¿ã¤ã primitiveé¢æ°ã¿ã¤ã ãããã¡ã¿ã¤ã ãã¼ã«ã¼ã¿ã¤ã ã¦ã£ã³ãã¦ã¿ã¤ã ã¦ã£ã³ãã¦ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ã¿ã¤ã ããã»ã¹ã¿ã¤ã ã¹ããªã¼ã ã¿ã¤ã derived (訳注ï¼å°åº)ã¿ã¤ã associationãªã¹ãã¿ã¤ã Lispé¢æ°ã¿ã¤ã Lispãã¯ãã¿ã¤ã ãª
ï¼ããã¯ãLisp Advent Calendar 2012ã®20æ¥ç®ã®è¨äºã§ããï¼ é·ãã®ã§åå¾ç·¨ã«åãã¾ãããæãªæ¹ã¯ã©ããã -*- delayã¨force -*- æ£æ ¼è©ä¾¡ã®è¨èªã§ãã¯ãã¼ã¸ã£ãããã°é 延è©ä¾¡ãè¡ããã¨ãã§ãã¾ããè¨ç®å¼ãã¯ãã¼ã¸ã£ã«å ãã§ãã¾ãã°ãã¯ãã¼ã¸ã£ãå¼ã³åºãããã¾ã§ä¸ã®å¼ã¯è©ä¾¡ããã¾ããã*1 å è¡è©ä¾¡ (+ 2 3) ;=> 5 é 延è©ä¾¡ (setq p (lambda () (+ 2 3))) ;=> è¨ç®å¼ãå ãã ã¯ãã¼ã¸ã£ (funcall p) ;=> 5 é 延è©ä¾¡ãããå¼ããã¡ãã¡lambdaã§å ãã®ã¯é¢åã ããlambdaã ãã§ã¯ãå¼ãé 延è©ä¾¡ãããããã¨ããæå³ãä¼ããã¾ãããã©ã¤ãã©ãªã«ãã¾ãããã (defmacro delay (expr) `(lambda () ,expr)) (defalias 'force 'funcall)
â â â Emacsããã£ã¨å¿«é©ã«ããElispé Emacsã¯åç¬ã§ãå¼·åãªããã¹ãã¨ãã£ã¿ã§ããï¼Elispã«ããã«ã¹ã¿ãã¤ãºã§ã¨ãã£ã¿ã®æ ãè¶ããå¼·åãªä½æ¥ç°å¢ã«ãªãå¾ã¾ãï¼ã¨ã¯ããï¼Elispã®ã³ã¼ããæ¸ãã®ã¯ãªããªãæ·å± ã®é«ããã®ï¼ããã§ä»åã¯ï¼Webä¸ã§å ¬éããã¦ããæ§ã ãªElispããç´¹ä»ãã¾ãï¼ãEmacsã£ã¦èå³ã¯ãããã©ä½ãã§ããã®ï¼ããEmacs使ã£ã¦ããã©ãã£ã¨ä¾¿å©ã«ãããï¼ãã¨ãèãã®æ¹ã®ãã³ãã«ãªãã°ï¼ã¨æãã¾ãï¼ ãªããElispã®ãç´¹ä»ã«ããããEmacsã¯23.1.1ãOSã¯Windows7ã¨MandrivaLinux2010.0ã§ç¢ºèªãã¦ãã¾ããç°å¢ã«ãã£ã¦ã¯åããç°ãªã£ãããåä½ããªãå¯è½æ§ãããã¾ãã®ã§ãäºæ¿ãã ããã â â newsticker.el Emacsã«æ¨æºã§å ¥ã£ã¦ãããã£ã¼ããªã¼ãã§ãï¼ âM-x newsticker-show-news
look ã³ãã³ãã¯ãè±åèªã®ã¤ã¥ãã調ã¹ãã³ãã³ãã§ããUbuntu ãªãããã«å©ç¨ã§ãã¾ããFedora ãªã sudo yum install words ã§ã¤ã³ã¹ãã¼ã«ã§ããããã§ããMac ã¯ãããã¾ãããMac ã§ãããã«å©ç¨ã§ãããããã§ãã â¼ ãããªæåã§ã ãããããã¹ãã¨ãã£ã¿ã¼ emacs 㧠auto-complete.el ã®ã¤ã³ã¿ã¼ãã§ã¼ã¹ã§å©ç¨ã§ããã°ä¾¿å©ã§ãã auto-complete ãã¤ã³ã¹ãã¼ã«ããdot.emacs ã«ä»¥ä¸ã追è¨ããã°ãM-h ã§è£å®ã§ãã¾ãã (require 'auto-complete-config) (defun my-ac-look () "look ã³ãã³ãã®åºåããªã¹ãã§è¿ã" (interactive) (unless (executable-find "look") (error "look ã³ãã³ããããã¾ãã
åªãã Emacs-Lisp è¬åº§ æ¬ããã¹ãã¯ã1993å¹´6æã9æã¾ã§ã®é ASCII-NET junk.test ã§ç§ãéãã¦ãããEmacs Lisp è¬åº§ãã§ä½¿ããã¦ããããã¹ããjaybirdæ°(pcs37358@@asciinet.or.jpå½ æ) ãTexinfoå½¢å¼ã«å¤æãã¦ä¸ãã£ããã®ãtexi2htmlã«æ¥æ¬èªã¤ã³ãã ã¯ã¹ãæ±ãããããªæ¹è¯ãå ãããã®ã§ HTMLãã©ã¼ãããã«å¤æãããã®ã§ãã è¬åº§ãéä¸ã§ç«ã¡æ¶ãã«ãªã£ã¦ãã¾ã£ãããã«ããã¹ããã¦ã£ã³ãã¦ããã ãã¡ã®èª¬æãç¡ãçµãã£ã¦ãã¾ãããEmacs-Lispãè¦ãããã£ããã«ã¯ååã 㨠信ãWWWã§ãã£ããå ¬éãããã¨ã«è´ãã¾ãã ããã ããã¹ã ............................ ã¨ãå ¬éãã¦ããããã«ããã·ã¹ãã ã®æ¦å ããããã®ããã¹ããæ¾ã£ã¦ãã ãã æ¸ç±åã® æ©ä¼ãä¸ã
ã©ã³ãã³ã°
ãç¥ãã
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}