タグ:Emacs ( 1 ) タグの人気記事
拡張子なしで open-junk-file したら、ディレクトリを作るようにする
Text::Xslate みたいなテンプレートシステムを試すときに、ファイルじゃなくてディレクトリが作れると便利。ということで、open-junk-file で拡張子がない (というか、ファイル名に "." が含まれない) 名前を指定すると、ディレクトリをつくるようにしてみた。

popwin.el との兼ね合いで、少し微妙なコードになっている。


(defun open-junk-file ()
"Open a new file whose filename is derived from current time.
You can write short program in it. It helps to try-and-error programs.

For example, in Emacs Lisp programming, use M-x `open-junk-file'
instead of *scratch* buffer. The junk code is SEARCHABLE."
(interactive)
(let* ((file (format-time-string open-junk-file-format (current-time)))
(dir (file-name-directory file)))
(make-directory dir t)
(let ((newfile (read-string "Junk Code (Enter extension): " file)))
(if (string-match "\\." newfile)
(funcall open-junk-file-find-file-function newfile)
(progn (make-directory newfile t)
(find-file newfile))))))


diff -u open-junk-file.el{.org,}

--- open-junk-file.el.org 2011-04-16 15:13:58.000000000 +0900
+++ open-junk-file.el 2011-04-16 15:34:50.000000000 +0900
@@ -137,7 +137,12 @@
(let* ((file (format-time-string open-junk-file-format (current-time)))
(dir (file-name-directory file)))
(make-directory dir t)
- (funcall open-junk-file-find-file-function (read-string "Junk Code (Enter extension): " file))))
+ (let ((newfile (read-string "Junk Code (Enter extension): " file)))
+ (if (string-match "\\." newfile)
+ (funcall open-junk-file-find-file-function newfile)
+ (progn (make-directory newfile t)
+ (find-file newfile))))))
+

;;;; Bug report
(defvar open-junk-file-maintainer-mail-address



参考:
使い捨てコード用のファイルを開く - (rubikitch loves (Emacs Ruby CUI Books))
[PR]
by fkmn | 2011-04-16 17:03 | IT


とあるWebアプリケーションエンジニアの日記
S M T W T F S
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
カテゴリ
以前の記事
ブログパーツ
リンク
検索
タグ
最新のトラックバック
プログラミングが「出来る..
from とりあえず9JP?
Genographic ..
from ナンジャモンジャ
ジュセリーノ
from ありの出来事
くちこみブログ集(ライフ..
from くちこみブログ集(ライフ)(..
以降、丁寧語で行こう!
from エッセイ的な何か
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧

fkmnの最近読んだ本 フィードメーター - フッ君の日常 あわせて読みたい AX