F4を変えてみた。

前書いた奴のオカシナ動きを多少直して。

■具体的に何をするか。

  1. F4を押した時にタグジャンプをする。
  2. F4を押した時に、カーソル付近にローカルのパスがあれば、xyzzyのファイラでそのパスを開く
;iniモードのF4でdirectoryへジャンプ(したい)
;分かり良さそうに変えておいた。v0.03
(defun goto-directory()
  (interactive)
  (let (tmp dir)
	(save-excursion
	  ;パスらしきものか行頭が出てくるまで後ろに移動して
	  (while (not (looking-at "[CcDd]:[/\\]\\|^."))
		(backward-char))
	  ;パスらしき所を取り出す。
	  (setq dir (buffer-substring (match-beginning 0)(match-end 0)))
	  (goto-char (match-end 0))	; ex C:/の後ろに移動。
	  (if (file-exist-p dir);一応取り出したのが存在するか確認して
		  (while (looking-at "[^\t:\*\?\"<>|\\/]*[/\\]")
			;サブディレクトリらしき所をtmpへ入れる
			(setq tmp (buffer-substring (match-beginning 0)(match-end 0)))
			(setq tmp (concat dir tmp))	; subdirectoryらしきものとくっ付ける
			(if (and (sub-directory-p tmp dir) (file-exist-p tmp))
				; tmpがまともなディレクトリかcheck
				(setq dir tmp)	; よさそうならばdirに入れてしまう。
			  (return))			; ディレクトリじゃないなら抜ける。
			(goto-char (match-end 0))))	; 次のdirectoryの記述に移動
	  (message "direct ~A tmp ~A" dir tmp)
	  (cond ((file-exist-p dir)
			 (open-filer)				; ファイラを開く
			 (filer-chdir dir))
			(t
			 (plain-error "ない" )))
	  )))			; 画面を移動。

それとタグジャンプとURIを開くclickable-uriを適当に組み合わせてみた。

(defun my-jump()
  (interactive)
  (unless (jump-tag)
	(unless (clickable-uri-open)
	  (goto-directory))))

こんな感じならiniモードとかのキー設定を気にしなくていいんじゃないかと。思ってみた。けど、試してすら居ないので、妙な事になるかもしれない。