トップ «前の日記(2006-01-20 (Fri)) 最新 次の日記(2006-01-25 (Wed))» 編集

猫熊は燃えつきた?!日記

最近なんにもやっていませんが、なにかやったらこちらに置くようにしています。
2002|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|
2011|09|
2012|02|


2006-01-24 (Tue) [長年日記]

雪の中のダン

ちょっと遅いネタだけど、東京とは思えませんな。携帯電話のカメラじゃこんなもん。
雪だらけ狂喜する犬

ac-mode

この前のEmacs ユーザーの方に質問です。これは便利!(以下略)で ac-mode を使いはじめてみた。従来からインストールはしてあったのだけど、全然使ったことなかった。さすがに、C-i が取られちゃうと、indent が大変なので、key bind を変えたりしていたら、一個バグを見付けてしまった。

一ヶ所だけある meassage() に "%任意の文字" が渡るとエラーになる。適当に princ() にしてしまったのよ。

もう一点、日本語の後にすぐ ascii がつながっているときの ac-dabbrev-completion() はちょっとだめだな。あとで、考えてみよう。

もう一丁 ac-mode

わざわざ ~/urls.txt というファイルを用意するのはいやなので、w3m の history を使うようにしてみた。(以下、都合によりすべて書き換え。
(defun url-complete ()
  (interactive)
  (save-excursion
    (let ((begin (point))
	  (buf (get-buffer url-complete--buffer))
	  (url-regexp (concat "[" ac-mode-url-char "]+"))
	  match-url match-region comp w3m)
      (when (and (< (skip-chars-backward ac-mode-url-char) 0)
		 (or (looking-at "https?:")
		     (looking-at "ftp:"))
		 (file-exists-p ac-mode-url-file))
	(re-search-forward url-regexp begin t)
	(setq match-url (match-string 0))
	(setq match-data
	      (list (match-string 0) (match-beginning 0) (match-end 0)
		    (ac-point-at-eow url-regexp)))
	(set-buffer url-complete--buffer)
	(erase-buffer)
	(call-process "look" nil url-complete--buffer nil match-url
		      (expand-file-name ac-mode-url-file))
	(and (or (featurep 'w3m) (require 'w3m))
	     (boundp 'w3m-input-url-history)
	     (not w3m-input-url-history)
	     (w3m-arrived-setup))
	(setq w3m (boundp 'w3m-input-url-history))
	(let* ((line1 (progn (goto-char (point-min))
			     (when (re-search-forward "^.+$" nil t)
			       (list (match-string 0)))))
	       (line2 (progn (goto-char (point-max))
			     (when (re-search-backward "^.+$" nil t)
			       (list (match-string 0)))))
	       (comp (when (and line1 line2)
		       (try-completion match-url (list line1 line2))))
	       (w3mcomp (when w3m
			  (try-completion match-url w3m-input-url-history)))
	       (w3mall (when w3m
			 (all-completions match-url w3m-input-url-history nil 'nospace))))
	  (cond ((and (stringp comp) (string-lessp match-url comp))
		 (list match-data comp))
		((and (stringp w3mcomp) (string-lessp match-url w3mcomp))
		 (list match-data w3mcomp))
		(t
		 (cons match-data (nconc (split-string (buffer-string))
					 w3mall)))))))))
今までの urls.txt が優先で、その後に w3m の history が出てくる。urls.txt は空でも良いので用意しておかないとだめ。

いろんな complete

現在使っている complete 関係の関数と key bind は

  • M-C-i => 普通?の complete
  • M-/ => dabbrev-expand
  • C-x9i => hippie-expand
  • M-] => ac-complete
  • M-' => migemo-dabbrev-expand

とあいなりました。他にもあるかも。普段は最初の三つぐらいしか使わないような気がするけど、url-complete() 改造版は結構便利かもです。

本日のツッコミ(全1件) [ツッコミを入れる]
Mitsugu (2006-01-25 (Wed) 19:41)

こんなのあるんですね。ちなみに「ハテナ」はブックマークはしています。<br>]http://b.hatena.ne.jp/mitsugusakamoto/


書いている人: 白井秀行 (mailto:shirai@meadowy。org)
訪問して下さった人: 今日: 人, 昨日: , 過去: 人 (2007年5月10日から)
RDF Feed