xyzzyã®Lispç¨ä¾
xyzzyã®Lispã³ã¼ãã®ãµã³ãã«ã§ãã
Lispã³ã¼ãã®ãã¡ã¤ã«ããã¼ãããã
Lispã³ã¼ãã®ãã¡ã¤ã«ã®å 容ãLispãªãã¸ã§ã¯ãã®å½¢ã§Lispç°å¢ã«åãè¾¼ã¿ã¾ãããã¼ããããã¡ã¤ã«ã®ã³ã¼ãã¯ãLispå¼ã®ã½ã¼ã¹ã³ã¼ãããã¤ãã³ã³ãã¤ã«æ¸ã¿ã³ã¼ãã§ããå¿ è¦ãããã¾ãã
以ä¸ã¯ãå種ãã¼ãé¢ä¿ã®é¢æ°ã®éã
[å¼ç¨ï¼ xyzzy Reference ãã] ã«ã¤ãã¦ã§ãã
load- ã¤ã³ã¿ããªã¿ã§loadãã¾ãã
load-library*.lcãããã°ããããã¼ããã¾ãã*.lcããªããã°*.lããã¼ããã¾ããautoload- 颿°1ã¤åä½ã§ãå¼ã°ããã¨ããã¼ãããããã«ã§ãã¾ãã颿°ãå¼ã°ããã¾ã§ã¯ãã¼ãããã¾ããã
require- ããã©ã¤ãã©ãªããã¼ããã¾ãããã ããæ¢ã«ãã¼ãæ¸ã¿ãªããã¼ããã¾ããã
*modules*- ãã®å¤æ°ãè¦ãã¨ä»ã©ã®ã¢ã¸ã¥ã¼ã«ããã¼ãæ¸ãåããã¾ããæ¢ã«ãã¼ãæ¸ã ã¨ãããã¼ããã¾ããã
次ã®ä¾ã§ã¯ãfoo.lã¨ãããã¡ã¤ã«ããã¼ãããã
(load "foo.l")ãã¼ããã¹ã®è¿½å
load-libraryçã§ã©ã¤ãã©ãªããã¼ããã対象ãã¹ã*load-path*ã«ãªã¹ãã§è¨å®ãããã¨ãã§ãã¾ãã
;; ã©ã¤ãã©ãªããã¼ããããã¹ã追å ããã
(setq *load-path*
(cons (merge-pathnames "bar" (user-homedir-pathname))
*load-path*))ãã®ä¾ã¯ãã¦ã¼ã¶ã®ãã¼ã ãã£ã¬ã¯ããªã«ããbarã¨ãããµããã£ã¬ã¯ããªãã©ã¤ãã©ãªããã¼ãããéã®æ¤ç´¢å¯¾è±¡ã¨ãªããä½ãã追å ããããã¹ã®ãµããã£ã¬ã¯ããªã«ã¤ãã¦ã¯ãæ¤ç´¢å¯¾è±¡ããé¤å¤ãããã
.xyzzyãã.xyzzy.lããã¼ãããã
.xyzzyã«å¤§éã®Lispã³ã¼ããè¨è¿°ããå ´åã«ã¯ã.xyzzy.lã¨ããå¥ã®ååã®ãã¡ã¤ã«ã¸å
容ãã³ãã¼ãã¦ãããããã¤ãã³ã³ãã¤ã«ãã.xyzzyã§ã¯ä¸è¨ã®æ§ã«loadã§ãã¤ãã³ã³ãã¤ã«æ¸ã¿ãã¡ã¤ã«ï¼.xyzzy.lcï¼ããã¼ãããè¨è¿°ã®ã¿ãã¦ããã¨è¯ãã
(load ".xyzzy.lc")ãã®ä¾ã¯ãæ¬¡ã®æ§ã«å·¥å¤«ããã¨ä½ãã¨ä¾¿å©ã§ããã
(defvar *init-file-name* (merge-pathnames ".xyzzy.l" (user-homedir-pathname)))
;; ã³ã³ãã¤ã«æ¸ã¿ãã¡ã¤ã«ãããã°ãããã対象ã¨ããã
(if (file-exist-p (concat *init-file-name* "c"))
(setq *init-file-name* (concat *init-file-name* "c")))
;; Lispãã¡ã¤ã«ã®ãã¼ã
(if (file-exist-p *init-file-name*)
(load *init-file-name*)
;; .xyzzy.lãã¡ã¤ã«ãç¡ãå ´åã¯ãããã©ã«ãã®åæåãã¡ã¤ã«ãå©ç¨ããã
;; ä½ããuser-homedir-pathname 㨠si:system-root ãç°ãªãå ´åã®ã¿ã
(unless (equalp (user-homedir-pathname) (si:system-root))
(load (merge-pathnames ".xyzzy" (si:system-root)))))ãã®ä¾ã¯ã.xyzzy.lcï¼ã³ã³ãã¤ã«æ¸ã¿ã®.xyzzy.lï¼ãã¡ã¤ã«ãããã°ããããã¼ãããã³ã³ãã¤ã«æ¸ã¿ã§ç¡ããã°.xyzzy.lããã¼ããããããããç¡ããã°å
¨ã¦ã®ã¦ã¼ã¶å
±éã®åæåãã¡ã¤ã«ãï¼ãã«ãã¦ã¼ã¶ç°å¢ã®å ´åã®ã¿ï¼ãã¼ãããã
次ã®ä¾ã§ã¯ãåè¨ã¨åæ§ã®çµæãå¾ããã¨ãã§ããã
(unless (equalp (user-homedir-pathname) (si:system-root))
(setq *load-path*
(cons (merge-pathnames "site-lisp" (user-homedir-pathname))
*load-path*))
)
(if (file-exist-p (merge-pathnames ".xyzzy.*" (user-homedir-pathname)))
(require "../.xyzzy")
(unless (equalp (user-homedir-pathname) (si:system-root))
(load (merge-pathnames ".xyzzy" (si:system-root)))))ãã®ä¾ã§ã¯ããã«ãã¦ã¼ã¶ç°å¢ã§ããã°ã*load-path* ã« ~/site-lispãã£ã¬ã¯ããªã追å ããã®ã§ãå½è©²ã¦ã¼ã¶ã®çºã®ã©ã¤ãã©ãªã®ç®¡çã«ã便å©ã§ããã
ããã¯ã¢ãããã¡ã¤ã«
ã¡ãã¥ã¼ãã¼ã®ãã¼ã«ããå ±éè¨å®ã鏿ãã¦ããã¯ã¢ãããã¡ã¤ã«ã®ã¿ãã§ããã¯ã¢ãããã¡ã¤ã«ã使ããã®é ç®ã«ãã§ãã¯ãå ¥ãããã¨ã§ãä¿åãããã¡ã¤ã«ã®ããã¯ã¢ãããã¡ã¤ã«ã使ãããã¨ãã§ãã¾ãã
åæè¨å®ã§ã¯ãä¿åãããã¡ã¤ã«ã¨åããã£ã¬ã¯ããªã«ããã¯ã¢ãããã¡ã¤ã«ã使ãã¾ãããããã好ã¿ã«å¿ãã¦å¤æ´ãããã¨ãã§ãã¾ãã
次ã®Lispã³ã¼ãã§ã¯ãå
¨ã¦ã®ããã¯ã¢ãããã¡ã¤ã«ã¯ c:/backup-files/ ã®ä¸ã«ä½æãããã
;;; ç¹å®ãã©ã«ãã«å
¨ã¦ã®ããã¯ã¢ãããã¡ã¤ã«ã使ããã
(require "backup")
(setq *backup-directory* "c:/backup-files/")
(setq *hierarchic-backup-directory* nil)ãã£ã¬ã¯ããªæ¯ã«ããã¯ã¢ãããã¡ã¤ã«ã®ä½æå ã夿´ãããã¨ã次ã®ãããªè¨è¿°ã§å¯è½ã§ããã
;;; ããã¯ã¢ãããã¡ã¤ã«ã®ä½æå
ã好ã¿ã®å ´æã«å¤æ´ããã
(require "backup")
(setq *backup-directory*
'(("d:/foo/" . "d:/backup-files-foo/")
("" . "d:/common-backup/")))
(setq *hierarchic-backup-directory* t)ãã®ä¾ã¯ãd:/foo/bar.txt, d:/foo/bar/baz.txt çãd:/foo/ ã§å§ã¾ããã¡ã¤ã«ã¯ããã¹ã¦ d:/backup-files-foo/ ã®ä¸ã«ããã¯ã¢ãããã¡ã¤ã«ã使ããããããããªããã¡ã¤ã«ã¯ d:/common-backup/ ã®ä¸ã«ããã¯ã¢ãããã¡ã¤ã«ã使ãããã詳細ã¯ãbackup.lãã¡ã¤ã«ã®ã³ã¡ã³ããè¦ãã¨è¯ãã
å ã¿ã«ç§ã®å ´åãæ¬¡ã®æ§ãªè¨å®ã§ããã¯ã¢ãããå©ç¨ãã¦ããã
(require "backup")
(setq *backup-directory*
;; siteinit.l ã«è¨å®ãããã°ãã¦ã¼ã¶è¨å®ã䏿¸ãå©ç¨ããã
(list
(cons (merge-pathnames "public_html" (concat "D:/home/" (user-name)))
(merge-pathnames "public_html-backup/" (concat "D:/home/" (user-name))))
'("" . "d:/common-backup/")
))
(setq *hierarchic-backup-directory* t)- åè
$XYZZY/lisp/backup.l
è¾æ¸
è±å/åè±è¾æ¸ãçµã¿è¾¼ã
è¾æ¸ã®å°å
¥æ¹æ³ã«ã¤ãã¦ã¯ã$XYZZY/etc/README.gendicãã¡ã¤ã«ã«è¨è¼ãããã¾ããè¨è¼å
容ã«å¾ã£ã¦ã次ã®è¾æ¸ãå°å
¥ãããã¨ã§è¾æ¸æ©è½ãå©ç¨ãããã¨ãã§ãã¾ãã
- è¾æ¸ãã¡ã¤ã«
注é
EDICT è¾æ¸ã¯å¿ é ã§ããä»ã®è¾æ¸ã¯ãã£ã¦ããªãã¦ããã¾ãã¾ããã
- åè
$XYZZY/etc/README.gendic
è¾æ¸é¸æã¡ãã¥ã¼
次ã®Lispã³ã¼ãã§ã¯ãè¾æ¸ã鏿ãããã¨ãå¯è½ã«ããã
;;; è¾æ¸é¸æ
;; è¾æ¸ã®ä½ç½®
(defvar *dictionary-eijiro-path* (merge-pathnames "edict/eijiro/" (si:system-root)))
(defvar *dictionary-gene-path* (merge-pathnames "edict/gene/" (si:system-root)))
;; ã¡ãã¥ã¼å®ç¾©
(setq *my-dictionary-popup-menu*
(define-popup-menu
(:popup nil "è±å(&E)"
(:item nil "è±è¾é(&E)"
#'(lambda ()
(interactive)
(setq *edict-dictionary-path* *dictionary-eijiro-path*))
#'(lambda ()
(if (path-equal *edict-dictionary-path* *dictionary-eijiro-path*)
:check)))
(:item nil "GENE(&G)"
#'(lambda ()
(interactive)
(setq *edict-dictionary-path* *dictionary-gene-path*))
#'(lambda ()
(if (path-equal *edict-dictionary-path* *dictionary-gene-path*)
:check)))
)))
;; ããã¼ãã£ã³ã°ãããã¢ããã¡ãã¥ã¼
(defun init-dictionary ()
(interactive)
(track-popup-menu *my-dictionary-popup-menu*))ãã®Lispã³ã¼ãã¯ãããã¼ãã£ã³ã°ãããã¢ããã¡ãã¥ã¼ã«ã¦è¾æ¸é¸æã¡ãã¥ã¼ãæä¾ããã
æ´ã«ãå¿ è¦ãªãã°æ¬¡ã®ä¾ã®æ§ãªè¨è¿°ã追å ãããã¨ã§ãè¾æ¸é¸æã¡ãã¥ã¼ãè¾æ¸ã®ã¡ãã¥ã¼é ç®ã«è¿½å ãããã¨ãã§ããã
;; [ï¾ï½°ï¾] â [è¾æ¸] ã«ãããã¢ããã¡ãã¥ã¼ã追å
(add-hook '*init-app-menus-hook*
#'(lambda ()
(add-popup-menu *dictionary-popup-menu*
*my-dictionary-popup-menu* "è¾æ¸ã®åãæ¿ã(&C)")))ä»ã«ããè¾æ¸ã®ãã¼ã«ãã¼ãç»é²ãããå ´åãããã ããã
;; tool-bar: è¾æ¸
(defun dictionary-tool-bar ()
(create-tool-bar
'dictionary-tool-bar
(merge-pathnames "toolbar.bmp" (etc-path))
'(("è¾æ¸" 36 edict-mode (lambda () (when edict-mode :check))))))
(define-command-bar 'dictionary-tool-bar "è¾æ¸å¼ãï¾ï½°ï¾ï¾(&D)")- åè
- Memo/dictionary -- Xyzzy Wiki
åãã¼ã«è¡¨ç¤ºããæ å ±ã®è¨å®
ã¿ã¤ãã«ãã¼ã®ãã©ã¼ããããè¨å®ããã
;; ã¿ã¤ãã«ãã¼ã®ãã©ã¼ããã
;(setq-default title-bar-format "%p %v %#h - %#F") ; æ¨æº
(setq-default title-bar-format "%b %#*(%M) [%k:%l] - %p %v%#h")表示ããæ å ±ãæå®ããæååã¯ãæåã®ä¸¦ã³é ã«è¡¨ç¤ºããã¾ãã
ã¢ã¼ãã©ã¤ã³ã®ãã©ã¼ããããè¨å®ããã
;; ã¢ã¼ãã©ã¤ã³ãã©ã¼ããã
;(setq-default mode-line-format "--%*- %b (%M) [%k:%l] %P %f") ; æ¨æº
(setq-default mode-line-format "--%*- %b (%M) [%k:%l] %P %f [%i]")表示ããæ å ±ãæå®ããæååã¯ãã¿ã¤ãã«ãã¼ã®ãã©ã¼ãããã¨åæ§ã§ãã
ã¹ãã¼ã¿ã¹ãã¼ã®ãã©ã¼ããããè¨å®ããã
;; ã¹ãã¼ã¿ã¹ãã¼ã«è¡¨ç¤ºããæ
å ±
;(setq *status-bar-format* "T") ; æ¨æº
(setq *status-bar-format* "cupT")表示ããæ å ±ãæå®ããæååã¯ãæåã®ä¸¦ã³é ã«è¡¨ç¤ºããã¾ãã
ãã©ã¡ã¼ã¿ã«ã¤ãã¦
ä¸è¨ã¯ãã¿ã¤ãã«ãã¼ã®ãã©ã¼ãããåã³ã¢ã¼ãã©ã¤ã³ã®ãã©ã¼ãããã§è¡¨ç¤ºããæ å ±ãæå®ããæååã®ä¸è¦§ã§ããã
%*- **ï¼å¤æ´ããï¼ã%-ï¼æ¸è¾¼ç¦æ¢ï¼ã%*ï¼å¤æ´ããã»æ¸è¾¼ç¦æ¢ï¼ã--ï¼ãã以å¤ï¼
%#*- *ï¼å¤æ´ããï¼ã空ç½ï¼å¤æ´ãªãï¼
%r- 空ç½ï¼æ¸è¾¼å¯ï¼ã%ï¼æ¸è¾¼ç¦æ¢ï¼
%#r- 空ç½ï¼æ¸è¾¼å¯ï¼ã%ï¼æ¸è¾¼ç¦æ¢ï¼ã#ï¼ä¸å®å ¨ãããã¡ï¼
%p- ããã°ã©ã å
%v- ãã¼ã¸ã§ã³
%h- ãã¹ãå
%#h- @ãã¹ãå
%b- ãããã¡å
%f- File: ãã¡ã¤ã«å
%#f- ãã¡ã¤ã«å
%F- File: ãã¡ã¤ã«åï¼ãã¡ã¤ã«åããªããã°ãããã¡åï¼
%#F- ãã¡ã¤ã«åï¼ãã¡ã¤ã«åããªããã°ãããã¡åï¼
%M- ã¢ã¼ãï¼ãã¤ãã¼ã¢ã¼ãå«ãï¼
%m- ã¢ã¼ã
%k- ã¨ã³ã³ã¼ãã£ã³ã°
%l- æ¹è¡ã³ã¼ã
%i- IMEã®ç¶æ
ï¼
mode-line-formatã®ã¿ï¼ %P- ã«ã¼ã½ã«ä½ç½®ï¼
mode-line-formatã®ã¿ï¼
ä¸è¨ã¯ãã¹ãã¼ã¿ã¹ãã¼ã®ãã©ã¼ãããã§è¡¨ç¤ºããæ å ±ãæå®ããæååã®ä¸è¦§ã§ããã
t- æè¨ï¼æ/æ¥ æ:åï¼
p- ã«ã¼ã½ã«ä½ç½®ï¼è¡:æ¡ï¼
c- ã«ã¼ã½ã«ä½ç½®ã®æåã³ã¼ã(å é¨ã³ã¼ã)
u- ã«ã¼ã½ã«ä½ç½®ã®æåã³ã¼ã(ã¦ãã³ã¼ã)
T- æè¨ï¼æ/æ¥(ææ¥) æ:åï¼
- åºå ¸
$XYZZY/html/OChangeLog.html(Wed Aug 09 2000 Version 0.2.1.153)- xyzzy Reference
ã¡ãã¥ã¼
ã¡ãã¥ã¼ãé表示ã«ããã
次ã®ä¾ã§ã¯ãèµ·åæããã¡ãã¥ã¼ãé表示ã«ããã
;; èµ·åæããã¡ãã¥ã¼ãé表示
(add-hook '*post-startup-hook*
#'(lambda ()
(set-menu nil)))ã¡ãã¥ã¼è¡¨ç¤ºç¶æ åãæ¿ãã¹ã¤ãã
次ã®ä¾ã§ã¯ãã¡ãã¥ã¼ã®è¡¨ç¤ºç¶æ ã®åãæ¿ããè¡ãäºãã§ããã
;;; ã¡ãã¥ã¼ãããããªã®åãæ¿ãã¹ã¤ãã
(add-hook '*init-app-menus-hook*
#'(lambda ()
(let ((toggle-app-menu *app-menu*))
(defun toggle-app-menu ()
(interactive)
(set-menu (setq toggle-app-menu
(unless toggle-app-menu *app-menu*)))))))- åºå ¸
- ã¡ãã¥ã¼ã®ã«ã¹ã¿ãã¤ãº -- xyzzy ã®é³
ã¡ãã¥ã¼ã«ã¯ãã¼ãºããã¯ã¹
次ã®ä¾ã¯ãã¡ãã¥ã¼ã«ã«ã¬ã³ããããã¡ãéããçºã®ã¯ãã¼ãºããã¯ã¹ã追å ãããã¨ãã§ããã
;;; ã¡ãã¥ã¼ã«ã¯ãã¼ãºããã¯ã¹
(add-hook '*init-app-menus-hook*
#'(lambda ()
(add-menu-item *app-menu* 'close-box :close-box
#'kill-selected-buffer)))- åºå ¸
- xyzzy [151]
$XYZZY/html/ChangeLog.html(Fri Feb 16 2001 Version 0.2.1.180)
è¡¨ç¤ºç¶æ åãæ¿ãã¡ãã¥ã¼
次ã®ä¾ã§ã¯ãããã¼ãã£ã³ã°ãããã¢ããã¡ãã¥ã¼ãã鏿ãããé ç®ã®è¡¨ç¤ºç¶æ ã夿´ãããã¨ãã§ããã
;;; è¡¨ç¤ºç¶æ
åãæ¿ãã¡ãã¥ã¼
(defun my-apps-popup ()
(interactive)
(track-popup-menu
(define-popup-menu
(:item nil "ã¡ãã¥ã¼(&A)"
'toggle-app-menu)
(:item nil "åç´ã¹ã¯ãã¼ã«ãã¼(&V)"
'toggle-vscroll-bar)
(:item nil "æ°´å¹³ã¹ã¯ãã¼ã«ãã¼(&H)"
'toggle-hscroll-bar)
(:item nil "è¡çªå·(&#)"
'toggle-line-number)
(:item nil "ã«ã¼ã©ã¼(&+)"
'toggle-ruler)
(:item nil "æãè¿ã(&F)"
'toggle-fold-line)
(:item nil "è¡ã«ã¼ã½ã«(&O)"
'toggle-cursor-line)
(:item nil "ã¢ã¼ãè¡(&M)"
'toggle-mode-line)
(:item nil "ãã¡ã³ã¯ã·ã§ã³ãã¼(&B)"
'toggle-function-bar)
(:item nil "ãªã¼ããªã³ãªã¼(&R)"
'toggle-read-only))))
;; C-RBtnUpã§ç¬èªã®ãããã¢ããã¡ãã¥ã¼ã«ãã¾ãã
(global-set-key #\C-RBtnUp 'my-apps-popup);;; è¡¨ç¤ºç¶æ
åãæ¿ãã¡ãã¥ã¼
(defvar *my-toggle-popup-menu*
(define-popup-menu
(:item nil "è¡çªå·(&#)"
'toggle-line-number
#'(lambda ()
(or (zerop (logand (get-window-flags) *window-flag-line-number*)) :check)))
(:item nil "ï¾ï½°ï¾(&+)"
'toggle-ruler
#'(lambda ()
(or (zerop (logand (get-window-flags) *window-flag-ruler*)) :check)))
(:item nil "ï¾ï½°ï¾ï¾è¡(&M)"
'toggle-mode-line
#'(lambda ()
(or (zerop (logand (get-window-flags) *window-flag-mode-line*)) :check)))
;------------------------------
:sep
(:popup nil "ï¾ï½§ï¾ï½¸ï½¼ï½®ï¾ï½·ï½°"
(:item nil "表示ããªã(&N)"
'toggle-function-bar
#'(lambda ()
(and (zerop (logand (get-window-flags) ed::*window-flag-function-bar*)) :check)))
:sep
(:item nil "&4å"
#'(lambda ()
(interactive)
(set-number-of-function-bar-labels 4))
#'(lambda ()
(if (= 4 (number-of-function-bar-labels))
:check
)))
(:item nil "&5å"
#'(lambda ()
(interactive)
(set-number-of-function-bar-labels 5))
#'(lambda ()
(if (= 5 (number-of-function-bar-labels))
:check
)))
(:item nil "&8å"
#'(lambda ()
(interactive)
(set-number-of-function-bar-labels 8))
#'(lambda ()
(if (= 8 (number-of-function-bar-labels))
:check
)))
(:item nil "1&0å"
#'(lambda ()
(interactive)
(set-number-of-function-bar-labels 10))
#'(lambda ()
(if (= 10 (number-of-function-bar-labels))
:check
)))
(:item nil "1&2å"
#'(lambda ()
(interactive)
(set-number-of-function-bar-labels 12))
#'(lambda ()
(if (= 12 (number-of-function-bar-labels))
:check
)))
(:item nil "&15å"
#'(lambda ()
(interactive)
(set-number-of-function-bar-labels 15))
#'(lambda ()
(if (= 15 (number-of-function-bar-labels))
:check
)))
)
))
(defun toggle-setting-menu ()
(interactive)
(track-popup-menu *my-toggle-popup-menu*))
(global-set-key #\C-RBtnUp 'toggle-setting-menu)
(add-hook '*init-app-menus-hook*
#'(lambda ()
(let ((view (get-menu *app-menu* 'ed::view)))
(insert-popup-menu view 5 *my-toggle-popup-menu* "表示ãã?(&V)")
)))ãããããã¡ã«å ¥ã£ãã¨ãIMEãOFFã«ãã
次ã®ä¾ã§ã¯ããããããã¡ã«å ¥ã£ãã¨ãIMEãèªåçã«OFFã«ãããã¨ãã§ããã
;;; ãããããã¡ã«å
¥ã£ãã¨ãIMEãOFFã«ãã
(export '(*ime-mode-into-minibuffer*))
(defvar *ime-mode-into-minibuffer* nil)
(defun ime-state-get-and-setoff (bef-buffer file-name)
(interactive)
(setq *ime-mode-into-minibuffer* (get-ime-mode))
(toggle-ime nil))
(defun ime-state-set (bef-buffer file-name)
(interactive)
(toggle-ime *ime-mode-into-minibuffer*))
(add-hook '*enter-minibuffer-hook* 'ime-state-get-and-setoff)
(add-hook '*exit-minibuffer-hook* 'ime-state-set)- åºå ¸
- ãããã¡ã¼ãªã¹ãç³» -- ããã¼ããã¼ãããã·ã¨
C-z ã§ã¢ã¤ã³ã³å
次ã®ä¾ã§ã¯ãxyzzyèªèº«ãEmacsåæ§ã«C-zãã¼ã§ã¿ã¹ã¯ãã¼ã«ã¢ã¤ã³ã³åããæ¹æ³ã示ãã
;;; C-z ã§ã¢ã¤ã³ã³å
(require "wip/winapi")
(c:define-dll-entry winapi:BOOL ShowWindow (winapi:HWND c:int) "user32")
(global-set-key #\C-z #'(lambda () (interactive)
(ShowWindow (get-window-handle) 6)))åæ§ã«ãã¿ã¹ã¯ãã¬ã¤ï¼ã¿ã¹ã¯ãã¼ã®éç¥é åï¼ã«ã¢ã¤ã³ã³ã表示ãããã®ã§ããã°ãttrayãå°å ¥ããã¨è¯ãã
- åºå ¸
- xyzzy [36]
- xyzzy Reference
ãã¡ã¤ã©
åãæ¢ããè¨å®ä¾ã®ã¿ã
ãã¡ã¤ã©ã®å種è¨å®
ãã¡ã¤ã©ã®åæãã£ã¬ã¯ããª
;; ãã¡ã¤ã©ã®åæãã£ã¬ã¯ããª
(setq *filer-primary-directory* (si:system-root)) ; å·¦å´
(setq *filer-secondary-directory* (user-homedir-pathname)) ; å³å´ãã¡ã¤ã©ã®åæãã¡ã¤ã«ãã¹ã¯
;; ãã¡ã¤ã©ã®åæãã¡ã¤ã«ãã¹ã¯
;; 2ç»é¢ç¨
(setq *filer-primary-file-mask* '("*")) ; å·¦å´
(setq *filer-secondary-file-mask* '("*")) ; å³å´
;; 1ç»é¢ç¨
(setq *filer-last-file-mask* '("*"))ãã¡ã¤ã©ã®ãã¹ãã¹ã¯ãªã¹ã
;; ãã¡ã¤ã©ã®ãã¹ãã¹ã¯ãªã¹ã
(setq *filer-path-masks*
'(("ãã¹ã¦ã®ï¾ï½§ï½²ï¾" "*")
("ï¾ï¾ï½·ï½ï¾ï¾ï¾" "*.doc" "*.txt" "*.man" "*readme*")
("C/C++" "*.c" "*.h" "*.cpp" "*.cxx" "*.cc" "*.inl")
("Lisp" "*.l" "*.el" "*.lsp" "*.lisp")
("Visual Basic" "*.bas" "*.frm" "*.vbp")
("å®è¡ï¾ï½§ï½²ï¾" "*.exe" "*.com" "*.bat" "*.pif")
("アーカイï¾ï¾" . ("*.lzh" "*.zip" "*.arj" "*.tar" "*.bz2" "*.gz"
"*.Z" "*.tbz" "*.taz" "*.tgz" "*.cab" "*.rar"
"*.gza" "*.bza" "*.yz1" "*.7z"))
("ï¾ï¾ï½¯ï½¸ï½±ï½¯ï¾ï¾" "*~" "*.bak")
("èªåセーï¾ï¾" "#*#")))å餿ã®ã´ã箱使ç¨
;; å餿ã®ã´ã箱使ç¨
(setq *filer-use-recycle-bin* t)ãã¡ã¤ã©ã®ã¹ãã¼ã¿ã¹ã¦ã£ã³ãã¦ã¸ã®ãã¡ã¤ã«åã®è¡¨ç¤º
;; ãã¡ã¤ã©ã®ã¹ãã¼ã¿ã¹ã¦ã£ã³ãã¦ã¸ã®ãã¡ã¤ã«åã®è¡¨ç¤º
(setq *filer-echo-filename* t)ãã¡ã¤ã©ã®ã¸ã£ã³ãç¨ã®ãã£ã¬ã¯ããª
;; ãã¡ã¤ã©ã®ã¸ã£ã³ãç¨ã®ãã£ã¬ã¯ããªï¼é£æ³ãªã¹ãï¼
(setq *filer-directories*
(list
(cons "home" (concat "D:/home/" (user-name)))
(cons "homedir" (user-homedir-pathname))
(cons "xyzzy" (si:system-root))
(cons "lisp" (merge-pathnames "lisp" (si:system-root)))
(cons "site-lisp" (merge-pathnames "site-lisp" (si:system-root)))
(cons "Windows" (get-windows-directory))
;(cons "System" (get-system-directory))
(cons "DeskTop" (get-special-folder-location :desktop))
(cons "Personal" (get-special-folder-location :personal))
;(cons "Program Files" (get-special-folder-location :programs))
;(cons "Recent" (get-special-folder-location :recent))
;(cons "SendTo" (get-special-folder-location :send-to))
;(cons "Start Menu" (get-special-folder-location :start-menu))
;(cons "Startup" (get-special-folder-location :startup))
;(cons "ShellNew" (get-special-folder-location :templates))
(cons "Temp" (or (map-backslash-to-slash (si:getenv "TEMP"))
(map-backslash-to-slash (si:getenv "TMP"))))
(cons "public_html"
(merge-pathnames "public_html" (concat "D:/home/" (user-name))))
'("share" . "d:/share/")
))ãã¡ã¤ã©ã®éãã®ãªã³ã¯å
;; ãã¡ã¤ã©ã®éãã®ãªã³ã¯å
(setq *filer-send-to-list*
(list
'("C:/" . "C:/")
'("D:/" . "D:/")
(cons "homedir" (user-homedir-pathname))
))ãã¡ã¤ã©ã®ã¬ã¤ãããã¹ã
;; ãã¡ã¤ã©ã®ã¬ã¤ãããã¹ã
(setq *filer-guide-text*
'("A:屿§ C:コï¾ï¾ï½° D:åé¤ E:è§£å F:æ¤ç´¢ J:DIRç§»å \
K:mkdir L:ï¾ï¾ï¾ï½²ï¾ï¾ M:ç§»å N:ï¾ï½§ï½²ï¾å O:å§ç¸® P:DIR??"
"R:åå夿´ S:DIR?? T:ショーï¾ï½¶ï½¯ï¾ U:DIRï½»ï½²ï½½ï¾ V:ï¾ï½½ï¾ X:å®è¡ .:ï¾ï½½ï½¸ \
/:ï¾ï½°ï½¸ *:load Home:ï¾ï½¸ï¾ï¾ S-Home:クï¾ï½± End:ï¾ï¾ï½°ï¾ï¾ F3:å®è¡ M-h:ï¾ï¾ï¾ï¾"))ãã¡ã¤ã©ã®ã¬ã¤ãããã¹ãã表示ããå¿
è¦ã®ç¡ãå ´åã«ã¯ãæ¬¡ã®æ§ã«å¤æ°ã®å¤ãnilã¨ç¤ºãã°è¯ãã
(setq *filer-guide-text* nil)ã¬ã¤ãããã¹ãããããã¢ãã表示
;;; ã¬ã¤ãããã¹ãããããã¢ãã表示
(setq *popup-filer-guide-text*
(concat
"A:屿§\t\tB:ï¾ï¾ï½²ï¾ï½ºï¾ï¾ï¾ï½²ï¾\tC:コï¾ï¾ï½°\t\tD:åé¤\t\tE:è§£å\n"
"F:æ¤ç´¢\t\tG:ï¾ï½§ï½²ï¾åæ¤ç´¢\tJ:DIRç§»å\tK:mkdir\t\tL:ï¾ï¾ï¾ï½²ï¾ï¾\n"
"M:ç§»å\t\tN:ï¾ï½§ï½²ï¾å\tO:å§ç¸®\t\tP:DIR??\t\tQ:çµäº\n"
"R:åå夿´\tS:DIR??\t\tT:ショーï¾ï½¶ï½¯ï¾\tU:DIRサイスï¾\tV:ï¾ï½½ï¾\n"
"W:é²è¦§\t\tX:å®è¡\t\tY:ショーï¾ï½¶ï½¯ï¾\tZ:ï¾ï¾ï¾ï¾ï¾ï¾ï½¨\n"
"\n"
"*:load\t\t.:ï¾ï½½ï½¸\t\t/:ï¾ï½°ï½¸\t\t<:å
é \t\t>:æ«å°¾\n"
"@:å¥åコï¾ï¾ï½°\t\:ï¾ï½°ï¾\t\t=:æ¯è¼\t\t^:イシï¾ï½ªï½¸ï¾\t]:éã\n"
"\n"
"C-h:ä¸ï¾ï¾ï½¨ï¾ï½¸ï¾ï¾\tC-r:å¾isearch\tC-s:åisearch\tC-u:ï¾ï¾ï½¨ï¾ï½¸ï¾ï¾ï½»ï½²ï½½ï¾\n"
"C-1:ï¾ï½§ï½²ï¾åº\tC-2:サイスï¾åº\tC-3:æ¥æåº\tC-4:屿§åº\n"
"C-M-1:ï¾ï½§ï½²ï¾ç\tC-M-2:サイスï¾ç\tC-M-3:æ¥æç\tC-M-4:屿§ç\n"
"\n"
"M-g:grep\tM-r:gresreg\tM-v:ï¾ï½°ï¾ï¾ï½µï¾ï¾ï½°\n"
"\n"
"F3:å®è¡\t\tF5:ï¾ï½°ï½¸ï¾ï½¸ï¾ï¾\tF6:ソーï¾\t\tS-F10:ï¾ï¾ï½¯ï¾ï¾ï½±ï½¯ï¾ï¾ï¾ï¾ï½ï½°\n"
"\n"
"TAB:ç§»å\tSPC:ï¾ï½°ï½¸\n"
"Home:ï¾ï½¸ï¾ï¾(ï¾ï½§ï½²ï¾)\tS-Home:クï¾ï½±\tC-Home:ï¾ï½¸ï¾ï¾(å«Dir)\tS-C-Home:å
¨ï¾ï½§ï½²ï¾ï¾ï½°ï½¸\n"
"End:ï¾ï¾ï½°ï¾ï¾\n"
"\n"
))
(define-key filer-keymap #\M-h
#'(lambda () (interactive)
(message-box *popup-filer-guide-text*)
))追å ç»é²ãã¦ãããã¼ãããã°ãæ¬¡ã®æ§ã«è¨è¿°ãã¦ããã¨è¯ãã
;; ã«ã¹ã¿ãã¤ãº
(setq *popup-filer-guide-text*
(concat
*popup-filer-guide-text*
"\n"
"M-f:diff\t\tM-h:ï½¶ï¾ï½²ï¾ï¾\tM-j:dir鏿\tM-s:å°æå\t"M-x:å®è¡\n"
"M-Home:ï¾ï½¸ï¾ï¾(Dir)\n"
"\n"
))- åºå ¸
- ãã¡ã¤ã© -- xyzzy ã®é³
大æåã®ãã¡ã¤ã«åããã¡ã¤ã©ã§ä¸æ¬ãã¦å°æåã¸
;;; 大æåã®ãã¡ã¤ã«åããã¡ã¤ã©ã§ä¸æ¬ãã¦å°æåã¸
(defun filer-downcase-filename ()
(let ((files (filer-get-mark-files)))
(when (and files (yes-or-no-p "å°æåã«ãã¾ã£ã"))
(filer-subscribe-to-reload (filer-get-directory))
(mapc #'(lambda (x) (rename-file x (string-downcase x))) files)
(filer-demand-reload)
(filer-goto-file (file-namestring (car files))))
t))
(define-key filer-keymap #\M-s 'filer-downcase-filename)- åºå ¸
- ãã¡ã¤ã© -- xyzzy ã®é³
ãã£ã¬ã¯ããªå ¨é¨ã鏿
;;; ãã£ã¬ã¯ããªå
¨é¨ã鏿
(defun filer-directory-select ()
(filer-mark-all nil)
(filer-toggle-mark-files))
(define-key filer-keymap #\M-Home 'filer-directory-select)- åºå ¸
- ãã¡ã¤ã© -- xyzzy ã®é³
äºç»é¢ãã¡ã¤ã©ãã鏿ãã¦ããã¹ãã®æ¯è¼
;;; äºç»é¢ãã¡ã¤ã©ãã鏿ãã¦ããã¹ãã®æ¯è¼
(defun my-filer-diff-file ()
(let ((file1 (ed::filer-fetch-file nil nil))
(file2 (ed::filer-fetch-file nil t)))
(unless (and file1 file2)
(error "diffãããã¡ã¤ã«ãæå®ãã¦"))
(diff file1 file2)
(and (find-buffer ed::*diff-new-buffer-name*)
(find-buffer ed::*diff-old-buffer-name*)
(filer-cancel))))
(define-key filer-keymap #\M-f 'my-filer-diff-file)- åºå ¸
- tips -- 66MHz.com
ãã£ã¬ã¯ããªé¸æãã¤ã¢ãã°
;;; ãã£ã¬ã¯ããªé¸æãã¤ã¢ãã°
(define-key filer-keymap #\M-j
#'(lambda ()
(setq dir (directory-name-dialog :title "ï¾ï¾ï½¨ï¾ï½¸ï¾ï¾ç§»å"
:default (filer-get-directory)))
(when dir
(filer-set-directory dir nil)
(filer-reload))))ãã¡ã¤ã©ã®èµ·åæ¹æ³ã®æ¡å¼µ
ä¸ç»é¢ãã¡ã¤ã©ããäºç»é¢ãã¡ã¤ã©ãéã
;;; ä¸ç»é¢ãã¡ã¤ã©ããäºç»é¢ãã¡ã¤ã©ãéã
(defun filer-open-dual-window ()
(interactive)
(unless (filer-dual-window-p)
(let ((*filer-primary-directory* (filer-get-directory))
(*filer-secondary-directory* (filer-get-directory)))
(filer-cancel)
(open-filer))))
(define-key filer-keymap #\M-2 'filer-open-dual-window)- åºå ¸
- ãã¡ã¤ã© -- xyzzy ã®é³
ä¸ç»é¢ãã¡ã¤ã©ã®è¡¨ç¤º
;;; ä¸ç»é¢ãã¡ã¤ã©ã®è¡¨ç¤º
;; ç¾å¨éãã¦ãããã¡ã¤ã«ã®ãã£ã¬ã¯ããªã表示ããã
(defun open-single-filer ()
(interactive)
(toggle-ime nil)
(multiple-value-bind (files result)
(filer nil t nil nil)
(when result
(dolist (f files t)
(unless (file-directory-p f)
(find-file f)
(add-history f '*minibuffer-file-name-history*))))))
(define-key ctl-x-map #\d 'open-single-filer)- åºå ¸
- ãã¡ã¤ã© -- xyzzy ã®é³
ã¨ã¯ã¹ããã¼ã©ã®è¡¨ç¤º
;;; ã¨ã¯ã¹ããã¼ã©ã®è¡¨ç¤º
(defun open-explorer ()
(interactive)
(call-process
(concat "c:/windows/EXPLORER.EXE /e," ; for Windows 9x/Me
;; ç¾å¨éãã¦ãããã¡ã¤ã«ã®ãã£ã¬ã¯ããª
(map-slash-to-backslash
(directory-namestring (or (get-buffer-file-name)
(si:system-root)))
))))ãã¡ã¤ã©é¸æã¡ãã¥ã¼
;;; ãã¡ã¤ã©é¸æã¡ãã¥ã¼
(add-hook '*init-app-menus-hook*
#'(lambda ()
(let ((tools (get-menu *app-menu* 'ed::tools)))
;; [ï¾ï½°ï¾] â [ï¾ï½§ï½²ï¾] ã®ã«ã¹ã¿ãã¤ãº
(delete-menu tools 18 t) ; å
ã
ã®ã¡ãã¥ã¼ãåé¤
(insert-popup-menu tools 18
(define-popup-menu
(:item nil "äºç»é¢ï¾ï½§ï½²ï¾(&D)" 'open-filer)
(:item nil "ä¸ç»é¢ï¾ï½§ï½²ï¾(&C)" 'open-single-filer)
(:item nil "エクスï¾ï¾ï¾ï½°ï¾(&E)" 'open-explorer)
) "ï¾ï½§ï½²ï¾(&F)..."))))ãã¡ã¤ã©ããããã¡ã¤ã«ã®å®è¡ãå¾ã«ãã¡ã¤ã©ãéãã
;;; ãã¡ã¤ã©ããããã¡ã¤ã«ã®å®è¡ãå¾ã«ãã¡ã¤ã©ãéãã
(define-key filer-keymap #\M-x
#'(lambda ()
(interactive)
(ed::filer-shell-execute)
(ed::filer-cancel)))- åè
- ãã¡ã¤ã© -- xyzzy ã®é³
èµ·åæã®ãã£ã¬ã¯ããª
次ã®ä¾ã¯ãfind-file ããã¨ãã«æåã«è¡¨ç¤ºããããã£ã¬ã¯ããªããã¼ã ãã£ã¬ã¯ããªã«è¨å®ãã¦ããã
(cd "~/")ä¸è¨ã®ä¾ã¯ãxyzzyã§ã¯æ¬¡ã®æ§ã«è¨è¿°ãããã¨ãã§ããã
(set-default-directory "~/")ãããã®ä¾ã¯ã使¥ä¸ã®ãããã¡ã®ãã¡ã¤ã«ãã¹ãç¡å¹ã®å ´åã«ã®ã¿æå¹ã§ããã
ãã¤ãã³ã³ãã¤ã«ã便å©ã«ããã
ã«ã¬ã³ããããã¡ã®ãã¡ã¤ã«ããã¤ãã³ã³ãã¤ã«
;;; ã«ã¬ã³ããããã¡ã®ãã¡ã¤ã«ããã¤ãã³ã³ãã¤ã«
(defun byte-compile-this-file ()
(interactive)
(if (string= "l" (pathname-type (get-buffer-file-name)))
(byte-compile-file (get-buffer-file-name))))siteinit.lã®ãã¤ãã³ã³ãã¤ã«ã¨ãã³ããã¡ã¤ã«ã®åé¤
;;; siteinit.lã®ãã¤ãã³ã³ãã¤ã«ã¨ãã³ããã¡ã¤ã«ã®åé¤
(defun compile-and-delete-dump-file ()
(interactive)
(and (find-buffer "siteinit.l")
(eval-buffer "siteinit.l"))
(byte-compile-file
(concat (si:system-root) "site-lisp/siteinit.l"))
(let ((dumpfile
(concat (si:system-root) "xyzzy."
(case (os-platform)
(whistler "wxp")
(windows-2000 "w2k")
(windows-nt "wnt")
(windows-me "wme")
(windows-98 "w98")
(windows-95 "w95")
(win32s "32s")
(t "nt")))))
(and (file-exist-p dumpfile)
(delete-file dumpfile)
(princ (concat "delete " (file-namestring dumpfile) "..."))))
(princ "done.\n"))
(global-set-key '(#\C-c #\b) 'compile-and-delete-dump-file)- åºå ¸
- xyzzy Note -- HIE no Page
;;; siteinit.lã®ãã¤ãã³ã³ãã¤ã«ã¨ãã³ããã¡ã¤ã«ã®åé¤
(defun byte-compile-and-delete-dump-file ()
(interactive)
(and (find-buffer "siteinit.l")
(eval-buffer "siteinit.l"))
(byte-compile-file
(merge-pathnames "site-lisp/siteinit.l" (si:system-root)))
(let ((path (namestring (si:dump-image-path))))
(and (file-exist-p path)
(princ (concat "delete "
(if (path-equal (directory-namestring path) (si:system-root))
(file-namestring path)
path)
"..."))
(delete-file path)))
(princ "done.\n"))
(global-set-key '(#\C-c #\b) 'byte-compile-and-delete-dump-file)ãã®ä¾ã§ã¯ãèµ·åæã®å¼æ°ã« [-config config-directory] ãæå®ãã¦ãã¦ããã³ããã¡ã¤ã«ã®åé¤ãè¡ããã
å ¨ã¦ã®ãããã¡ã®ãã¡ã¤ã«ããã¤ãã³ã³ãã¤ã«
;;; bufferã(*.l)ãã³ã³ãã¤ã«
(defun byte-compile-open-buffers()
(interactive)
(let ((b-n) (error-msges))
(with-output-to-temp-buffer ("*byte-compile*" nil)
(dolist (a-b (buffer-list))
(setq b-n (get-buffer-file-name a-b))
;(pathname-type(file-namestring b-n))
(if(and b-n
(string= "l" (pathname-type b-n)))
(if ;(msgbox "do ~A" b-n)
(byte-compile-file b-n)
(setq error-msges (concat error-msges "\n compiled:" b-n))
;(setq error-msges (concat error-msges "\n not :" b-n))
)
)))
(msgbox "do compile\n~A" error-msges)))- åºå ¸
- ãããã¡ã¼ãªã¹ãç³» -- ããã¼ããã¼ãããã·ã¨
ä¿åæã«èªåçã«ãã¤ãã³ã³ãã¤ã«
;;; ä¿åæã«èªåçã«ãã¤ãã³ã³ãã¤ã«
(add-hook '*after-save-buffer-hook*
#'(lambda ()
(interactive)
(let ((bn (get-buffer-file-name)))
(if (and (string= "l" (pathname-type bn))
(file-exist-p (format nil "~Ac" bn)))
(if (path-equal bn (merge-pathnames "site-lisp/siteinit.l" (si:system-root)))
(byte-compile-and-delete-dump-file)
(save-excursion
(byte-compile-file bn)))))))ãããã¡
ãããã°
(defun debug ()
(interactive)
(setq *error-output* (make-buffer-stream (create-new-buffer "*Stack Trace*")))
(setq si:*trace-on-error* t))emacs 風ã®ãããã¡åæå®
以ä¸ã .xyzzy ã«æ¸ãã¦ããã° emacs 風ã®ãããã¡åæå®ãã§ããã
;; emacs 風ã®ãããã¡åæå®
(pushnew '(#\B . emacs-interactive-buffer-name)
*interactive-specifier-alist* :test #'equal)
(pushnew '(#\b . emacs-interactive-exist-buffer-name)
*interactive-specifier-alist* :test #'equal)- åè
$XYZZY/lisp/buffer.l(241è¡è¾ºã)
æ¼¢åã³ã¼ãã»æ¹è¡ã³ã¼ãã®åæè¨å®
次ã®ä¾ã¯ãããã©ã«ãã®æ¼¢åã³ã¼ããEUC-JPãæ¹è¡ã³ã¼ããLFã«è¨å®ãã¦ããã
;; æ¼¢åã³ã¼ãã»æ¹è¡ã³ã¼ãã®åæè¨å®ï¼euc-jp/lfï¼
(setq *default-fileio-encoding* *encoding-euc-jp*
*default-eol-code* *eol-lf*)- åè
$XYZZY/lisp/encoding.l
*scratch* ãããã¡
Lispã³ã¼ããè©ä¾¡ãã
- M-x: eval-buffer
- å½è©²ãããã¡å ¨ä½ã®Lispãè©ä¾¡ãã¾ãã
eval-print-last-sexp- è¡æ«ã§å®è¡ãããã¨ã§ãè¡æ¯ã«Lispãè©ä¾¡ãã¾ããã¾ããè©ä¾¡ã®çµæããããã¡ã«åºåãã¾ãã
- ãã¼è¨å®ã¯ãC-j ã«ãã¤ã³ãããã¦ãã¾ãã
eval-last-sexp- è¡æ«ã§å®è¡ãããã¨ã§ãè¡æ¯ã«Lispãè©ä¾¡ãã¾ãã
- ãã¼è¨å®ã¯ãC-x C-e ã«ãã¤ã³ãããã¦ãã¾ãã
- M-x: eval-region
- ãªã¼ã¸ã§ã³éã®Lispãè©ä¾¡ãã¾ããä»»æã®å ´æãè©ä¾¡ãããå ´åã«ä¾¿å©ã§ãã
eval-defun- ãã¤ã³ãã®ä½ç½®ä»è¿ã®Lispå¼ãè©ä¾¡ãã¾ãã
- ãã¼è¨å®ã¯ãC-M-x ã«ãã¤ã³ãããã¦ãã¾ãã
eval-expression- Lispå¼ãè©ä¾¡ãã¾ãã対話çã«å¼ã³åºãããå ´åã¯ãããããã¡ã§å ¥åãããå¼ãè©ä¾¡ãã¾ãã
- ãã¼è¨å®ã¯ãESC-ESC ã«ãã¤ã³ãããã¦ãã¾ãã
*scratch* ãããã¡ã®åé¤è¨±å¦ã®è¨å®
;;; *scratch* ãããã¡ã®åé¤è¨±å¦ [t:許|nil:å¦] ã®è¨å®
(setq *kill-buffer-kills-scratch* t)ããã©ã«ãã§ã¯ãnil ã«ãªã£ã¦ãã¾ãã
*scratch* ãããã¡ãèªåã§ä¿åã»å¾©å ããã
;;; *scratch* ãããã¡ãèªåã§ä¿åã»å¾©å
ããã
;; *scratch* ãããã¡ã®æ¼¢åã³ã¼ãã»æ¹è¡ã³ã¼ãã®è¨å®
(save-excursion
(set-buffer "*scratch*")
(change-fileio-encoding *encoding-euc-jp*) ; EUC-JP
(change-eol-code *eol-lf*)) ; LF
;; *scratch* ãçµäºæã«ä¿å
(add-hook '*kill-xyzzy-hook*
#'(lambda ()
(set-buffer (find-buffer "*scratch*"))
(write-file "~/.scratch")))
;; *scratch* ãèµ·åæã«å¾©å
(add-hook '*post-startup-hook*
#'(lambda ()
(let ((file "~/.scratch"))
(when (file-exist-p file)
(set-buffer (find-buffer "*scratch*"))
;(erase-buffer (selected-buffer))
(insert-file-contents file t)
(message "*scratch* restored")))))å
容ãããå¼·åãã scratch-plus.l ãé
å¸ä¸ã§ãã
ã¦ã¤ã³ãã¦
ãã©ã¼ã«ã¹ã®ãªãã¦ã£ã³ãã¦ã§å³ã¯ãªãã¯ããã¨ãããéãã
;;; ãã©ã¼ã«ã¹ã®ãªãã¦ã£ã³ãã¦ã§å³ã¯ãªãã¯ããã¨ãããéãã
(defun mouse-right-press (&optional apps)
(interactive)
(if (eq (selected-window) *last-mouse-window*)
(mouse-menu-popup apps)
(let ((l (selected-window)))
(set-window *last-mouse-window*)
(delete-window)
(set-window l)
(cancel-mouse-event))))
(global-set-key #\RBtnUp 'mouse-right-press)- åºå ¸
- ã¾ãããã¡ã£ã·ãxyzzyé¨é -- Micro Tips
è£å®ã®åè£ããããã¢ããããã
(setq *popup-completion-list-default* :always)
(setq *minibuffer-popup-completion-list* :always)å°ãå夿°ã®å¤ã :always ã§ã¯ç¡ã :never ã«ããã¨ãåæå¤åæ§ã®*Completion*ãããã¡ã§ã®è¡¨ç¤ºã¨ãªãã
- åºå ¸
$XYZZY/html/ChangeLog.html(Tue Sep 25 2001 Version 0.2.2.211)- xyzzy Reference
ç·¨é
ä¸çºã¤ã³ãã³ã
次ã®ä¾ã¯ããããã¡å ¨ä½ãä¸çºã§ã¤ã³ãã³ããç´ãã®ã«ä¾¿å©ã§ããã
;;; ä¸çºã¤ã³ãã³ã
(defun indent-current-buffer ()
(interactive)
(when mode-specific-indent-command
(indent-region (point-min) (point-max))
(message "indent buffer")))
(global-set-key #\C-F8 'indent-current-buffer)
(set-function-bar-label #\C-F8 "ä¸çºï½²ï¾ï¾ï¾ï¾ï¾")ä¸çºã¤ã³ãã³ãã®çºã®ãã¼ã«ãã¼ãå¿ è¦ãªãã°ã次ã®ä¾ã®æ§ãªè¨è¿°ã追å ãã¦ããã¨è¯ãã ããã
;;; tool-bar: ä¸çºã¤ã³ãã³ã
(defun indent-current-buffer-tool-bar ()
(create-tool-bar
'indent-current-buffer-tool-bar
(merge-pathnames "toolbar.bmp" (etc-path))
'(("ä¸çºï½²ï¾ï¾ï¾ï¾ï¾" 32 indent-current-buffer (lambda () (or mode-specific-indent-command :disable))))))
(define-command-bar 'indent-current-buffer-tool-bar "ä¸çºï½²ï¾ï¾ï¾ï¾ï¾(&I)")- åè
- xyzzy [141]
;;; ãããã¡å
¨ä½ã®ã¤ã³ãã³ã
(defun indent-buffer ()
(interactive)
(when mode-specific-indent-command
(save-excursion
(goto-char (point-min))
(funcall mode-specific-indent-command)
(indent-region (point-min) (point-max)))))- åºå ¸
- xyzzy Part12 [538]
ã¿ã <=> ã¹ãã¼ã¹å¤æ
ãªã¼ã¸ã§ã³ã鏿ããM-x: tabify ã§ã¹ãã¼ã¹ãã¿ãã«ãM-x: untabify ã§ã¿ããã¹ãã¼ã¹ã«å¤æã§ãã¾ãã
ã¾ããã»ã¬ã¯ã·ã§ã³ã§ã¯ãM-x: tabify-selection åã³ M-x: untabify-selection ã§ç¸äºã«å¤æãè¡ãã¾ããåæ§ã« ç·¨é
â夿
ã¡ãã¥ã¼ãããå®è¡ã§ãã¾ãã
å°å³ãªæ©è½ã§ãããè¦ãã¦ããã¨é常ã«ä¾¿å©ã§ãã
ããã¼ã¤ã³ã°ããé åã®è¡¨ç¤ºè¨å®
;; ããã¼ã¤ã³ã°ããé åã®è¡¨ç¤ºç¶æ
(setq hide-restricted-region nil)ããã¼ã¤ã³ã°ããé åã®è¡¨ç¤ºç¶æ
ã¯ãããã©ã«ãè¨å®ã¨åã nil ãªãã°èã表示ããnon-nil ãªãã°é表示ã¨ãªãã
ã»ã¬ã¯ã·ã§ã³ã§ããã¼ã¤ã³ã°
ãªã¼ã¸ã§ã³ãæå®ãã¦ãC-x n (narrow-to-region) ã¨ããã¨ãæå®ããç¯å²ä»¥å¤ãç§»åã»ç·¨éã§ããªãããã«ãããã¨ãã§ãã¾ãã
以ä¸ã®ä¾ã§ã¯ãã»ã¬ã¯ã·ã§ã³ã§ç¯å²ã®æå®ãè¡ãããã¼ã¤ã³ã°ãããã¨ãã§ããã
;;; ã»ã¬ã¯ã·ã§ã³ã§ããã¼ã¤ã³ã°
(defun narrow-to-selection ()
(interactive "*")
(let ((type (get-selection-type)))
(if type
(let ((pre (pre-selection-p)))
(selection-start-end (start end)
(narrow-to-region start end)
(cond ((< start end)
(goto-char (point-min))
(start-selection type pre (point-max)))
(t
(goto-char (point-max))
(start-selection type pre (point-min))))))
(error "ç¯å²ã鏿ããã¦ãã¾ããã"))))ã¯ã¤ãã£ã³ã°ï¼å¶éãããé åãå
ã«æ»ãï¼æä½ã¯ narrow-to-region ã¨åãã C-x w (widen) ã§ãã
ã¢ã¼ãé¢é£
ããã©ã«ãã®ã¢ã¼ã
次ã®ä¾ã§ã¯ãæ°è¦ã«ä½æãããããã¡ã®ããã©ã«ãã®ã¢ã¼ããtext-modeã«ããã
;; ããã©ã«ãã®ã¢ã¼ã
(setq *default-buffer-mode* 'text-mode)ç¹å®ã®å¦çã«å¯¾ããå¦çã追å ããã
次ã®ä¾ã§ã¯ãããã¹ãã¢ã¼ããããã«é¢ããã¢ã¼ãã§ã¯ãèªåè©°ãè¾¼ã¿ã¢ã¼ããæå¹ã«ããã
(add-hook '*text-mode-hook*
'(lambda () (auto-fill-mode t)))ããã¯ããã¼ãã«ããã¯å¤æ°ã«ããã¯é¢æ°ã追å ããå ´åã®ä¸ä¾ã§ãããããã¯ã¨ã¯ãããç¹å®ã®ç¶æ³ã§æ¢åã®ããã°ã©ã ããå¼ã³åºããã颿°ï¼é¢æ°ç¾¤ãæ ¼ç´ãã¦ãã夿°ã®ãã¨ã§ãxyzzyã«ã¯ãè¨å®ç¨ã®ããã¯ãæ°å¤ãããã¾ãã
ç¹å®ã®ãã¡ã¤ã«ã«å¯¾ããã¡ã¸ã£ã¼ã¢ã¼ããæå®ããã
ãã¡ã¤ã«ã®åç§°ãæ¡å¼µåã¨ã¡ã¸ã£ã¼ã¢ã¼ãã¨ã®å¯¾å¿é¢ä¿ã¯ã*auto-mode-alist*夿°ã«æ ¼ç´ããã¾ãã
次ã®ä¾ã§ã¯ããã¡ã¤ã«ãéãéã«.txtã¨ãããã¡ã¤ã«æ¡å¼µåãªãã°ãèªåçã«text-modeã«ãªãã
(setq *auto-mode-alist*
(append '(("\\.txt$" . text-mode))
*auto-mode-alist*)次ã®ä¾ã§ã¯ãåè¨ã¨åæ§ã®çµæãå¾ããã¨ãã§ããã
(pushnew '("\\.txt$" . text-mode) *auto-mode-alist*)ã¾ããè¤æ°ã®ãã¡ã¤ã«ãæ¡å¼µåã«å¯¾ããæå®ãåæã«å ããã®ã§ããã°ãæ¬¡ã®æ§ã«è¨è¿°ããã¨è¯ãã
(setq *auto-mode-alist*
(append '(("\\.\\(xht[ml]?\\|rdf\\|rss\\)" . xml-mode)
("\\.s?html?" . html-mode))
*auto-mode-alist*)次ã®ä¾ã§ã¯ãåè¨ã¨åæ§ã®çµæãå¾ããã¨ãã§ããã
(pushnew '("\\.\\(xht[ml]?\\|rdf\\|rss\\)" . xml-mode) *auto-mode-alist*)
(pushnew '("\\.s?html?" . html-mode) *auto-mode-alist*)ãã¼ã¯ã¼ããã¡ã¤ã«ã®å ´ææå®
(setq *keyword-load-path* '("~/keywords"))ãã®ä¾ã§ã¯ããã¼ã¯ã¼ããã¡ã¤ã«ã使ãå ´åã«ãã¦ã¼ã¶ã®ãã¼ã ãã£ã¬ã¯ããªã«ãã keywordsãã£ã¬ã¯ããªå
ã«æ ¼ç´ããããã¼ã¯ã¼ããã¡ã¤ã«ãåªå
çã«ä½¿ç¨ãããã¨ãã§ããã
shell-modeã§Cygwinã®bashã使ç¨ããã
(setq *eshell* "bash -i")
(setq *shell-command-option* (concat "/E:2048" *shell-command-option*))shell-modeã§Cygwinã®bashã使ç¨ããå ´åã«ã¯ãCygwinãã¤ã³ã¹ãã¼ã«ããç°å¢å¤æ°ã®PATHã¨SHELLãé©åã«è¨å®ãã¦ããå¿ è¦ããã
PATH$PATH;d:\cygwin\bin;d:\cygwin\usr\local\bin;SHELL/bin/bash
å°ãCygwinã«ã¤ãã¦ã®è©³ç´°ã¯ãæ¬ãµã¤ãå ã®Cygwinåå¿é²ãã覧ä¸ããã
ã¤ã³ã¯ãªã¡ã³ã¿ã«ãµã¼ã
ã¤ã³ã¯ãªã¡ã³ã¿ã«ãµã¼ãã使ãã«ã¯ãåæåãã¡ã¤ã«ã«æ¬¡ã®ã³ã¼ãã追å ããã¨è¯ãã
(require "isearch")dabbrev
(require "dabbrev")
(global-set-key #\M-/ 'dabbrev-expand)
(global-set-key #\C-\; 'dabbrev-popup)dabbrev-popupã«ã¤ãã¦ã¯ãè£å®ã®åè£ã®ãããã¢ããè¨å®ããã¦ããã¨è¯ãã
è±èªã®ã¹ãã«ãã§ãã¯ï¼Ispellï¼
è±èªã®ã¹ãã«ãã§ãã¯ãè¡ãããå ´åã«ã¯ãispellãå¿ è¦ã«ãªãã¾ããæãæã£åãæ©ãã®ã¯ãxyzzyã®ä½è ã»äºäºæ°ã®ãµã¤ãã«ã¦å ¥æã§ãã Ispell for Win32 ãå°å ¥ãããã¨ã§ãã
Ispellãå°å ¥ããããåæåãã¡ã¤ã«ã«å®è¡ãã¡ã¤ã«ã®ãã¹ã次ã®ããã«æå®ãã¦ããã¾ãããã
;; Ispell --- ã¹ãã«ãã§ãã¯
(setq *ispell-command*
(map-slash-to-backslash (merge-pathnames "bin/ispell.exe" (si:system-root))))ã¾ãããã¼ã«ãã¼ãç»é²ãã¦ããã¨æè»½ã«Ispellã使ç¨ã§ãã¾ãã
;; Ispell --- ãã¼ã«ãã¼
(defun ispell-tool-bar ()
(create-tool-bar
'ispell-tool-bar
(merge-pathnames "toolbar.bmp" (etc-path))
'(("ispell" 15 (lambda () (interactive)
(ed::map-selection #'ispell-region)) :selection))))
(define-command-bar 'ispell-tool-bar "Ispell(&I)")å°ããã¼ã«ãã¼ãåé¤ãããå ´åã«ã¯ãESC-ESCã¨ãã¼ãæ¼ãã¦ãããããã¡ã« Eval: ã¨è¡¨ç¤ºãããã (delete-command-bar 'ispell-tool-bar) ã¨å
¥åããEnterãã¼ãæ¼ãã¾ããæå¾ã«Ispellã®çºã®ãã¼ã«ãã¼ã®è¨è¿°ãåé¤ãã¦ãã ããã
ããã¹ãã®æ¯è¼ï¼diffï¼
xyzzyã«ã¦ããã¹ãã®æ¯è¼ãè¡ãããå ´åã«ã¯ãdiffãå¿
è¦ã«ãªãã¾ãï¼diffé¢é£ã®æ¡å¼µLispãå°å
¥ããå ´åãåæ§ï¼ããã®éãCygwinãå°å
¥ãã¦ãã®diff.exeã使ãã®ãè¯ãããæ
ã
Cygwinãå°å
¥ããããªããªãã°ãCygwinããå¿
è¦ãªãã¡ã¤ã«ã ããæãåºãã¦ä½¿ãæ¹æ³ãããã®ã§ããã®æ¹æ³ã次ã«èª¬æããã
å°ãCygwinãå°å ¥ããéã«ã¯ãæ¬ãµã¤ãå ã®Cygwinåå¿é²ãåèã«ãã¦ã¿ã¦ä¸ããã
$XYZZY/binãã£ã¬ã¯ããªã使ãããdiff.exe,cygwin1.dll,cygintl-1.dllã$XYZZY/binãã£ã¬ã¯ããªã«ç½®ãã$XYZZY/site-lisp/siteinit.lã«ä¸è¨ã®Lispã³ã¼ããæ¸ãã¦ããï¼è¦ï¼åãã³ãï¼ã- diffã使ç¨ããå ´åã¯ãM-xdiff
;; diff --- ããã¹ãã®æ¯è¼
(in-package "editor")
(setq *diff-command-name*
(map-slash-to-backslash (merge-pathnames "bin/diff.exe" (si:system-root))))
(in-package "user")注é
GNU patch 2.5.4 㨠GNU diff 2.7 ã Win32 ç¨ã« Make ãã GNU patch GNU diff for Win32 ã使ç¨ããã°ãCygwinããå¿ è¦ãªãã¡ã¤ã«ã ããæãåºãæéãçãã¾ãã
css-mode
css-modeã§@è¦åãæéè¦æå®ã«è²ä»ãããã
css-modeã§CSS2ã®@è¦åï¼@importã@pageãªã©ï¼ãæéè¦æå®ï¼!importantï¼ãè²ä»ããããå ´åã«ã¯ãåæåãã¡ã¤ã«ã«ã·ã³ã¿ã¯ãã¹ãã¼ãã«ãæå®ããã¨è¯ãã
;; @è¦åã!ã«è²ä»ãããã
(set-syntax-word ed::*css-mode-syntax-table* #\@)
(set-syntax-word ed::*css-mode-syntax-table* #\!)æ´ã«ããã¼ã¯ã¼ããã¡ã¤ã«ï¼*keyword-load-path*/CSSï¼ã«ãã¼ã¯ã¼ããä¸è¨ä¾ã®æ§ã«è¿½å ãã¦ããå¿
è¦ãããã
···
;;; At-rules
;*0b
@charset
@font-face
@import
@media
@page
;;; Inheritance
;*2b
!important
inherit
···css-mode å¼·åç
css-enhance.l- xyzzyã§ã¿ã°æã£ã¦ãäººã®æ° [339-340] ã«æ²è¼ã®ãµã³ãã«ãã
autoloadã§å©ç¨å¯è½ãªæ§ã«ã¡ãã£ã¨ã ãæãå ãããã®ã
CSS Validator ã使ã£ã¦æ§æãã§ãã¯ããã
W3C CSS Validation Service ãã CSS Validator ã®ã½ã¼ã¹ãå ¥æãã¦å°å ¥ãããã¨ã§ãCSSã®æ§æãã§ãã¯ãæ°è»½ã«è¡ãã¾ãããããxyzzyã®css-modeã§å©ç¨ã§ããæ§ã«ããã¨é常ã«ä¾¿å©ã§ãã
次ã®ä¾ã§ã¯ãã«ã¬ã³ããããã¡ã®ã¢ã¼ããcss-modeã®æãCSS Validator ã³ãã³ãã©ã¤ã³ã´ã¡ã¼ã¸ã§ã³ï¼validator.zipï¼ãå©ç¨ããCSSã®æ§æãã§ãã¯ãè¡ããã
;;; CSS Validator
;; for the Command line version
(add-hook 'ed::*css-mode-hook*
#'(lambda ()
(defvar *css-validator-file* "D:/usr/local/CssValidator.bat")
(defun css-validator-exec ()
(interactive)
(let ((file (get-buffer-file-name)))
(when file
(pipe-command
(format nil "~A ~A"
(map-slash-to-backslash *css-validator-file*)
(map-slash-to-backslash file))))))
(define-key ed::*css-mode-map* '(#\C-c #\v) 'css-validator-exec)))ãã®ä¾ã§ç¨ãã¦ããCssValidator.batã®å
容ã¯ãæ¬¡ã®æ§ãªãã®ã§ããã
@echo off
set classpath=D:\usr\local\css-validator\validator.zip
Java org.w3c.css.css.StyleSheetCom %1
rem pause次ã®ä¾ã§ã¯ãã«ã¬ã³ããããã¡ã®ã¢ã¼ããcss-modeã®æãCSS Validator ãµã¼ã´ã¬ããã´ã¡ã¼ã¸ã§ã³ï¼sites.zipï¼ãå©ç¨ããCSSã®æ§æãã§ãã¯ãè¡ããã
;;; CSS Validator
;; for the Servlet version
(add-hook 'ed::*css-mode-hook*
#'(lambda ()
(defvar *css-validator-string*
"http://127.0.0.1:8001/servlet/css-validator/validator?warning=2&uri=")
(defun css-validator-servlet ()
(interactive)
(let ((file (get-buffer-file-name)))
(when file
(shell-execute (concat *css-validator-string* file) t)
)))
(define-key ed::*css-mode-map* '(#\C-c #\C-v) 'css-validator-servlet)))ãã®ä¾ã§ã¯ãããã©ã«ãã®ãã©ã¦ã¶ã«æ¤è¨¼çµæã表示ããããbrowser.dllæãã¯browser.dll æ¡å¼µç + browserexãæ´»ç¨ããå ´åã«ã¯ãå½è©²è¡ãæ¬¡ã®æ§ã«ä¿®æ£ãããã¨ã§xyzzyä¸ã«è¡¨ç¤ºãããã¨ãã§ããã
;(shell-execute (concat *css-validator-string* file) t)
(bx:close-browser)
(bx:navigate (concat *css-validator-string* file))ãã®ä¾ã¯ãbrowserexãæ´»ç¨ãããã¨ãã§ããã
注é
- ä¸è¨ã®Lispã³ã¼ãã®åä½ã«ã¯ãCSS Validator version 2.0 ãç¨ãã¦ãã¾ãã
- ãã¼ã«ã«ç°å¢ã§Jigsawã¨é£åãã¦ã®å®è¡ãã³ãã³ãã©ã¤ã³ã§ã®å®è¡ãè¡ãçºã«ã¯ãCSS Validator ãäºãå°å
¥ãã¦ããå¿
è¦ãããã¾ããï¼ç¾å¨ãã¦ã³ãã¼ãããã
sites.zipåã³validator.zipãåzipãã¡ã¤ã«ã¸ã®åç §ãªã³ã¯ã¯æ¶æ» ãã¦ãã¾ããï¼ - CSS Validator ã®å°å ¥åã³ä½¿ç¨æ¹æ³ã«ã¤ãã¦ã¯ãRUNï¼æ¥æ¬èªçï¼ãã覧ä¸ããã
lisp-mode
-*- encoding: UTF-8N -*- èªè
(setf (gethash "UTF-8N" *mime-charset-name-hash-table*) *encoding-utf8n*)html-mode
Another HTML-lint ã使ã£ã¦æ§æãã§ãã¯ããã
Another HTML-lint ã®ã½ã¼ã¹ãå ¥æãã¦å°å ¥ãããã¨ã§ãHTMLã®ææ³ãã§ãã¯ãæ°è»½ã«è¡ãã¾ãããããxyzzyã®html-modeã§å©ç¨ã§ããæ§ã«ããã¨é常ã«ä¾¿å©ã§ãã
次ã®ä¾ã§ã¯ãã«ã¬ã³ããããã¡ã®ã¢ã¼ããhtml-modeã®æãAHL ã³ãã³ãã©ã¤ã³ã´ã¡ã¼ã¸ã§ã³ï¼htmllintï¼ãå©ç¨ããHTMLã®æ§æãã§ãã¯ãè¡ããã
;;; Another HTML-lint
;; for the Command line version
(add-hook 'ed::*html-mode-hook*
#'(lambda ()
(defvar *htmllint-file* "D:/usr/local/htmllint/htmllint")
(defun htmllint-exec ()
(interactive)
(let ((file (get-buffer-file-name (selected-buffer))))
(when file
(pipe-command
(format nil "perl \"~A\" \"~A\""
(map-slash-to-backslash *htmllint-file*)
(map-slash-to-backslash file))))))
(define-key ed::*html-mode-map* '(#\C-c #\l) 'htmllint-exec)))次ã®ä¾ã§ã¯ãã«ã¬ã³ããããã¡ã®ã¢ã¼ããhtml-modeã®æãAHL ã²ã¼ãã¦ã§ã¤CGIã´ã¡ã¼ã¸ã§ã³ï¼htmllint.cgiï¼ãå©ç¨ããHTMLã®æ§æãã§ãã¯ãè¡ããã
;;; Another HTML-lint
;; for the gateway version
(add-hook 'ed::*html-mode-hook*
#'(lambda ()
(defvar *htmllint-string*
"http://127.0.0.1/htmllint/htmllint.cgi?V;X=w3m;URL=")
(defun htmllint-cgi ()
(interactive)
(let ((file (get-buffer-file-name)))
(when file
(shell-execute (concat *htmllint-string* file) t)
)))
(define-key ed::*html-mode-map* '(#\C-c #\C-l) 'htmllint-cgi)))ãã®ä¾ã§ã¯ãããã©ã«ãã®ãã©ã¦ã¶ã«æ¤è¨¼çµæã表示ããããbrowser.dllæãã¯browser.dll æ¡å¼µç + browserexãæ´»ç¨ããå ´åã«ã¯ãå½è©²è¡ãæ¬¡ã®æ§ã«ä¿®æ£ãããã¨ã§xyzzyä¸ã«è¡¨ç¤ºãããã¨ãã§ããã
;(shell-execute (concat *htmllint-string* file) t)
(bx:close-browser)
(bx:navigate (concat *htmllint-string* file))ãã®ä¾ã¯ãbrowserexãæ´»ç¨ãããã¨ãã§ãããã¾ããhtml+-modeãå°å ¥ãããã§å©ç¨ãããå ´åã«ã¯ãhtml-modeã«é¢ããè¨è¿°é¨åã夿´ããå¿ è¦ãããã
html+-modeãå°å
¥ããéã«siteinit.lã«è¿½å ããLispã³ã¼ãã®ä¾ã以ä¸ã«ç¤ºãã
(in-package "editor")
(export 'html+-mode)
(autoload 'html+-mode "html+-mode" t)
(pushnew '("\\.s?html?" . html+-mode) *auto-mode-alist* :test 'equal)
;; charsetã§æå®ãããæåã³ã¼ãã®ä½¿ç¨
(setq *html+-detect-charset* t)
;; DOCTYPEæ¯ã«ç°ãªãè£å®ãªã¹ãã®çæ
(setq *html+-use-html-kwd* t)
(setq *html-default-doctype* "HTML4.01 strict") ; åæå¤åã³æªæå®æ
;; ã¤ã³ãã³ãä»ãã®å¯¾è±¡å¤ã¨ããã¿ã°
(setq *html+-tags-list-no-indent* '("PRE" "XMP" "CODE" "SAMP"))
(in-package "user")- åè
- xyzzy [581]
- xyzzy part2 [407]
- browserex -- éè¨å¸
注é
- ãã¼ã«ã«ç°å¢ã§WWWãµã¼ãã¨é£åãã¦ã®å®è¡ãã³ãã³ãã©ã¤ã³ã§ã®å®è¡ãè¡ãçºã«ã¯ãAnother HTML-lint ãäºãå°å ¥ãã¦ããå¿ è¦ãããã¾ãã
æ¡å¼µ
clickable-uri
æ¡å¼µlispã®clickable-uriãå°å ¥ããã¨ããã¦ã¹ã®å·¦ããã«ã¯ãªãã¯æä½ã«ããã¦ã§ããã©ã¦ã¶ãã¡ã¼ã©ã¼çã®èµ·åãå¯è½ã«ãªãã¾ãã
ç§ã®å ´åãbrowserexãæç¨ããã¦é ãã¦ããã®ã§ãã³ãã³ãæå®ã«ãããæå®ãã¦å©ç¨ãã¦ãã¾ãã
(when (find "clickable-uri" *modules* :test #'string-equal)
(when (and (packagep (find-package "browserex"))
(symbolp (find-symbol "navigate" "browserex")))
(push '("^https?:" . bx:navigate)
*clickable-uri-open-command-alist*)
(push '("^file:" . bx:navigate)
*clickable-uri-open-command-alist*)))
xml-mode
XHTMLï¼HTMLã§é©åãªã¢ã¼ããèªå鏿ããã
次ã®ä¾ã§ã¯ãXHTMLãã¡ããªææ¸ã«å¯¾ãã¦HTMLææ¸ã®çºã®ãã¡ã¤ã«æ¡å¼µåãå«ãå ´åã«ããã¡ã¤ã«ãéãæç¹ã§èªåçã«xml-modeã«åãæ¿ãããã¨ãã§ããã
;;; XHTMLï¼HTMLã§é©åãªã¢ã¼ããèªå鏿ããã
(defun html-select-mode ()
(interactive)
(save-excursion
(goto-char (point-min))
(if (scan-buffer "<\\?xml[^>]+>" :regexp t)
(xml-mode)
(if (scan-buffer "<!DOCTYPE[ \t\r\n]+" :regexp t)
(html+-mode)))))
(pushnew '("\\.s?html?" . html-select-mode) *auto-mode-alist* :test 'equal)- åè
- xyzzyã®ä½¿ãæ¹ããããã¬ãã å±ã¾ããã ãã®ï¼ [660]
æ´ã«ãã³ã³ãã³ãã»ãã´ã·ã¨ã¼ã·ã§ã³çã«ããæ¡å¼µåç¡ãã®URIã®ã½ã¼ã¹ãéãéã«ãXHTMLï¼HTMLã®é©åãªã¢ã¼ããèªå鏿ããã«ã¯ãæ¬¡ã®æ§ãªè¨è¿°ããã¦ããã¨è¯ãã
;; æ¡å¼µåç¡ãã®ã½ã¼ã¹ãéãå ´åã®è¨å®ï¼ã³ã³ãã³ãã»ãã´ã·ã¨ã¼ã·ã§ã³ã¸ã®å¯¾å¦ï¼
;; MsIE ã Mozilla (XUL of "ContextMenu Extensions") ã§æå¹ã
(pushnew '("(/Temporary Internet Files/\\|/TEMP(.*)$)" . html-select-mode)
*auto-mode-alist* :test 'equal)å°ãXHTMLã®çºã®æ¡å¼µåãxml-modeã«é¢é£ä»ãããã«ã¯ãæ¬¡ã®æ§ãªè¨è¿°ãåæåãã¡ã¤ã«ã«è¿½å è¨è¼ãã¦ããå¿ è¦ãããã
(pushnew '("\\.xht[ml]?" . xml-mode) *auto-mode-alist* :test #'equal)注é
.html [RFC2854] ã¯å
æ¥ HTML ã®çºã®ãã¡ã¤ã«æ¡å¼µåã§ãããXHTML ã®çºã®ãã¡ã¤ã«æ¡å¼µåã§ã¯ãªããä¸è¬ã«ããã®æ¡å¼µåã XHTML ã«å¯¾ãã¦ä½¿ç¨ããã®ã¯é©åã§ã¯ãªããç¶ããªãããXHTML1ã® Appendix C. HTML Compatibility Guidelines
ï¼æè¬ãäºæã¬ã¤ãã©ã¤ã³ï¼ã«åºã¥ã XHTML 1.0 ã«å¯¾ãã¦ã®ã¿ã¯ãHTML ã®ãã¡ã¤ã«æ¡å¼µåã許ãããããã§ããã
The file extensions 'html' or 'htm' are commonly used, but other extensions denoting file formats for preprocessing are also common.
[å¼ç¨ï¼ The 'text/html' Media Type -- RFC 2854 ãã]
There are three known file extensions that are currently in use for XHTML 1.0; ".xht", ".xhtml", and ".html".
[å¼ç¨ï¼ The 'application/xhtml+xml' Media Type -- RFC 3236 ãã]
ãã®ä»
xyzzy lispè¨èªãå¼ãéã«ãç¥ã£ã¦ããã¨ä¾¿å©ãªã³ãã³ãã
- M-x: apropos
- ãã¼ã¯ã¼ããå ¥åããã¨ããã®ãã¼ã¯ã¼ããååã«å«ãå ¨ã¦ã®é¢æ°ã夿°ããªã¹ãã¢ãããã¾ãã
- M-x: describe-bindings
- ãã¼ãã¤ã³ãã®ä¸è¦§ã表示ãã¾ãã
- M-x: describe-function
- ãã¼ã¯ã¼ããå ¥åããã¨ããã®ãã¼ã¯ã¼ãã¨ä¸è´ãã颿°ã®èª¬ææã表示ãã¾ãã
- M-x: describe-variable
- ãã¼ã¯ã¼ããå ¥åããã¨ããã®ãã¼ã¯ã¼ãã¨ä¸è´ãã夿°ã®å¤ã¨ãã®èª¬ææã表示ãã¾ãã