mieki256's diary



2005/05/25(水) [n年前の日記]

#3 [xyzzy] 編集中のHTMLファイルをFirefoxに送ったりIEに送ったり

_HTML関連Tips - Xyzzy Wiki を辿って、 _2chスレ の記述を使わせてもらったり。…消えると怖いから引用させてもらおう。

下は、ブラウザを指定できる方法。
;; C-F8    バッファから送る。
;;         利用するブラウザ・アプリを指定できる。

;; 「バッファから送る」で使用するリスト
(setf *buffer-send-to-list*
	  (list
	   '(" Internet Explorer"  . "C:/Program Files/Internet Explorer/iexplore.exe")
	   '(" Firefox"            . "C:/Program Files/Mozilla Firefox/firefox.exe")
	   ))

;; バッファから送る
(defun buffer-sendto-dialog ()
  (interactive)
  (let ((file (get-buffer-file-name)))
	(when file
	  (multiple-value-bind (result data)
		  (dialog-box
		   '(dialog 0 0 219 100
			 (:caption "送っちゃうよ")
			 (:font 9 "MS UI Gothic")
			 ;; (:font 9 "Microsoft Sans Serif")
			 (:control
			  (:listbox list nil #x50b10111 7 7 150 82)
			  (:button IDOK "送る" #x50010001 162 7 50 14)
			  (:button IDCANCEL "送らない" #x50010000 162 24 50 14)))
		   (list (cons 'list *buffer-send-to-list*))
		   nil)
		(when result
		  (let
			  ((cmd (cddr (assoc 'list data))))
			(if cmd
				(call-process (map-slash-to-backslash (concat cmd " " file)) :wait nil)
			  (message "なにもえらんでない。"))))))))

(define-key *global-keymap* '(#\c-F8) 'buffer-sendto-dialog)
(set-function-bar-label #\C-F8 "バッファから送る")
下は、標準で設定されるブラウザで開く方法。
;; C-F6    編集中のファイルを関連付け実行。
;;         標準で設定されてるブラウザ・アプリで開く。

(defun execute ()
  (interactive)
  (shell-execute (get-buffer-file-name)))

(global-set-key #\C-F6 'execute)
(set-function-bar-label #\C-F6 "関連付け実行")

~/.xyzzy を眺めてたら、アプリケーションランチャなる記述があった。これもどこからかコピペさせてもらったはずだけど…。ネタ元失念。前述の、ブラウザを指定できるタイプと似たような記述なので、これも一応引用しておこう…。
;; C-F7    アプリケーションランチャ

;; ランチャリスト
(defvar *launch-application-list*
  (list
   '(" CALC"                 . "C:/WINDOWS/system32/calc.exe")
   '(" FFFTP mirror job"     . "C:/Program Files/ffftp/FFFTP.exe --set your_setting --mirror --quit")
   ))

; アプリケーションランチャ
(defun application-launcher-dialog ()
  (interactive)
  (multiple-value-bind (result data)
      (dialog-box
       '(dialog 0 0 219 100
         (:caption "Application Launcher")
         (:font 9 "MS UI Gothic")
         (:control
          (:listbox list nil #x50b10111 7 7 150 82)
          (:button IDOK "実行" #x50010001 162 7 50 14)
          (:button IDCANCEL "キャンセル" #x50010000 162 24 50 14)))
       (list (cons 'list *launch-application-list*))
       nil)
    (when result
      (let
          ((cmd (cddr (assoc 'list data))))
        (if cmd
          (call-process (map-slash-to-backslash cmd) :wait nil)
          (message "何も選択していません。"))))))

(global-set-key #\C-F7 'application-launcher-dialog)
(set-function-bar-label #\C-F7 "ランチャ")

以上です。

過去ログ表示

Prev - 2005/05 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project