2010-12-16 23 views
2

Emacs documentationで、Emacsはファイル名をレジスタに保存することをサポートしています。C-x r j rで素早く検索することができます。rはレジスタの名前です。しかし、これは明らかに1文字のレジスタ名に制限されています。ファイル名とディレクトリ名のエイリアスのエイリアス

など。次の例では、動作します。

(set-register ?c '(file . "/gd/gnu/emacs/19.0/src/ChangeLog")) 

すなわち、それは私がちょうどC-x r j zを入力して、上記のファイルChageLogを訪問することができます。しかし

、私はのように、長い名前を持つレジスタ内の上記のファイルへのパスを保存しようとした場合:

:私は彼が通訳をあるLispから、次のエラーメッセージが表示されます

(set-register ?clog '(file . "/gd/gnu/emacs/19.0/src/ChangeLog")) 

無効な読み取り構文: "?"

私の質問は次のとおりです:ファイル名(およびディレクトリパス)を長い名前のエイリアスを使ってemacsに保存する方法はありますか? (ファイルを編集したり、diredで読み込んだりするため)。

ありがとうございました

答えて

2

Bookmarksを参照してください。

+0

はhuaiyuanありがとうございます。私はこれを検討していますが、ブックマークの主な機能は、ユーザーが後でジャンプできる位置を記録できるようにすることです。ブックマークを使って私が手で入力できる、あらかじめ定義されたパスを保存する方法は? –

+1

ファイル*パス*(例:ヤンクング用)を覚えていますか、ファイル(またはディレクトリ)にアクセスしますか?後者の場合、ブックマークは間違いなくあなたが望むものです。ファイル/ dirにアクセスし、 'C-x r m(名前を入力)RET'を実行して保存します。バッファを削除すると、 'C-x r b(ブックマーク名)RET 'でそのバッファを参照できます。ブックマークは永続的です - Emacsは、終了時にブックマークを保存するかどうかを尋ねます(またはすぐに 'M-x bookmark-save'を使用して)。 – phils

+0

ブックマークの場所を手動で入力する方法を尋ねていますか?もしそうなら、[here](http://www.emacswiki.org/emacs/BookmarkPlus#BookmarkingWithoutVisiting)の答え([Bookmark +](http://www.emacswiki.org/emacs/BookmarkPlus))。また、ブックマークに関連付けられたターゲットファイル(パス)を変更するには、常にコマンド 'bookmark-relocate'を使用することができます。 – Drew

2

Emacsのレジスタは、単一のキーでアクセスできるように設計されているため、文字で名前が付けられています。 ?x構文は文字構文です。通常の変数でパスを保存したり、ハッシュテーブルを使って変数の名前空間を汚染したりすることはできますが、これを行うための既存のパッケージとこれだけを知ることはできません。

もっと一般的な使用例は、アクセスしたいファイルをすばやく/頻繁に開いたままにしておくことです。the session state。バッファ間の切り替えは、iswitchのようなものでより便利にすることができます。

Bookmarksがあなたのユースケースに合わない理由もわかりません。手動でパスを入力したい場合は、ファイルを一度訪問してブックマークを保存する方が簡単ですが、手で入力すると便利です。(add-to-list 'bookmark-alist '(bookmarkname (filename . "/path/to/your/file")))

関連する問題