- 締切済み
elispで最後に開いたバッファを閉じるコマンド
emacs lispで「最後に開いたバッファを閉じる」コマンドを作りたいです。 例えばヘルプを開いたときにそのバッファをすぐ閉じたりするなどのときに使います。 どのようにすれば作れるでしょうか。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- _kappe_
- ベストアンサー率68% (1525/2219)
関連するQ&A
- eval-bufferコマンドの実行結果の表示
こんにちは。 OSは現在、64bit版のWindows7を使っています。 Emacsは、Gnu Emacs for Windows 23.4 を使っています。 Emacs-Lispモードのバッファで、eval-bufferコマンドを実行すると、 最後の式を評価した結果が、ミニバッファに表示されますが、 最後の式だけでなく、eval-bufferコマンドで評価した結果すべてを、 表示させる方法はないのでしょうか? 何か御存じの方がいらっしゃれば、是非、情報を提供して頂きたく思います。 では、よろしくお願い致します。
- ベストアンサー
- フリーウェア・フリーソフト
- Emacsのバッファ(buffer)について質問です。
Emacsでバッファ(buffer)を変更するコマンドがあるのですが, そもそもバッファとは何のことで, 変更することにどういう意味があるのでしょうか。 よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- emacsでバッファを再読み込みしたい
emacsで現在開いているバッファを再読み込みするような コマンドってありますか? 今はC-x C-f ファイル名で再オープンしています。 ファイル名を入れずにすむ方法があれば知りたいです。
- ベストアンサー
- Linux系OS
- Emacs-Lispモードで、式が返す値を全て表示
こんにちは。 Emacsは、Gnu Emacs for Windows 23.4 を使っています。 Emacs-Lispモードで、バッファに記述されている式を評価した時、その式が返す値が、ミニバッファに出力されます。 ところが、式が返す値が長すぎると、途中までしか表示されません。 例えば自分の環境だと、 (symbol-value 'load-path) という式を評価すると、ミニバッファには (nil "~" "~/My_Lisp_Programs" "c:/Emacs_for_Windows/emacs-23.4" "C:/Emacs_for_Windows/emacs-23.4/site-lisp" "C:/Emacs_for_Windows/emacs-23.4/../site-lisp" "C:/Emacs_for_Windows/emacs-23.4/lisp" "c:/Emacs_for_Windows/emacs-23.4/lisp/url" "c:/Emacs_for_Windows/emacs-23.4/lisp/textmodes" "c:/Emacs_for_Windows/emacs-23.4/lisp/progmodes" "c:/Emacs_for_Windows/emacs-23.4/lisp/play" "c:/Emacs_for_Windows/emacs-23.4/lisp/org" ...) という文字列が出力され、...以降が表示されません。 どうすれば、Emacs-Lispモードで、式が返す値を全て表示する事ができるのでしょうか? 何か御存じの方がいらっしゃれば、是非、情報を提供して頂きたく思います。 では、よろしくお願い致します。
- ベストアンサー
- フリーウェア・フリーソフト
- コマンドプロンプトでubasicの画面バッファ
コマンドプロンプトでubasic起動時の画面バッファの変更方法について教えて下さい。 ubasicをwinXPのコマンドプロンプトで起動させています。このとき、画面上では24行しか表示されず、スクロールバーも出ていないので、表示から一度外れたものは再度表示 できなくなります。 ubasicを起動させない状態でならば、コマンドプロンプトのタイトルバーをクリックしてプロパティを開き、画面バッファの高さを変えることができるので、スクロールバーも現れて、画面から外れたものも再度表示できるのですが、ubasicを起動させた状態では、プロパティの数値を変えても、OKをクリックすると元の数値に戻ってしまい、変えることができません。どうしたらいいのでしょうか? どなたか、ご存知の方がいたらお教え下さい。
- ベストアンサー
- Windows XP
- emacsでC-hのコマンドをしてもヘルプにならない
初めまして、taka-0910と申します。 WindowsXPにcygwinをインストールしてemacsを利用しています。 C-hのコマンドは、ヘルプ機能を実行してくれるコマンドだそうですが、バックスペースになってしまいます。 Webで調べてみたところ、.emacsという環境設定ファイルをつくって (global-set-key "\C-h" 'help-command) と書き込んでみました。 しかし、変化なくバックスペースのままになってしまいます。 また、終了コマンドであるC-x C-cも使えない状態であり、終了しません。 どのように設定すれば、このような問題は解決できるのでしょうか。申し訳ございませんがよろしくお願い致します。
- ベストアンサー
- その他([技術者向] コンピューター)
- emacsでサブディレクトリもload-path に追加する方法
Meadow3 で使っていた拡張を Linux の emacs-22.3 で使えるものは流用 しようとして、失敗しました。 Meadow 側の site-lisp 以下を Linux のホームディレクトリに .lisp/myelisp と いうフォルダをつくりました。 そして、.emacs に、(setq load-path (cons "~/.lisp/myelisp/" load-path)) と書きました。 ~/.lisp/myelisp/ には、Meadow にあった、subdirs.el があるのですが、 サブディレクトリをロードパスとして認識できずに、emacs 起動時に、 サブディレクトリ以下にある .el ファイルを読み込めないというエラーが 発生します。 M-x describe-variable RET load-path RET でロードパスを確認すると、 load-path is a variable defined in `C source code'.Its value is ("~/.lisp/myelisp/" "/usr/share/emacs/22.3/site-lisp" "/usr/share/emacs/site-lisp" "/usr/share/emacs/site-lisp/egg" "/usr/share/emacs/site-lisp/site-gentoo.d" "/usr/share/emacs/site-lisp/tamago" "/usr/share/emacs/site-lisp/egg/egg" 以下省略 と表示されます。 "/usr/share/emacs/22.3/site-lisp" に Medow のsite-lisp 以下を置くとう まく動くのですが、ログインユーザのホームディレクトリに、2階層以上の 階層構造のあるemacsの拡張ファイルを置くにはどうしたらよいのでしょう か。
- ベストアンサー
- その他([技術者向] コンピューター)
- Emacs Lisp: 関数に引数が渡せない?
お世話になります。 ----------------------------------------- ; -*- lisp-interaction -*- ; このファイルはtest.elisというファイル名で、そのファイルを開いたバッファで実行 (buffer-name) ;;; ミニバッファに以下のように表示される ;;; "test.elis" (buffer-name "test.elis") ;;; ★引数を与えるとそのバッファ名を返すはず ;;; エラーになる ;;; Debugger entered--Lisp error: (wrong-type-argument bufferp "test.elis") (get-buffer "test.elis") ;;; ミニバッファに以下のように表示される ;;; #<buffer test.elis> (buffer-file-name) ;;; ミニバッファに以下のように表示される ;;; "/home/userName/test.elis" (buffer-file-name "test.elis") ;;; ★引数を与えるとそのバッファのファイル名を返すはず ;;; エラーになる ;;; Debugger entered--Lisp error: (wrong-type-argument bufferp "test.elis") ----------------------------------------- Emacs Lispの勉強として、上のようなファイルを開いて、各関数の括弧綴じ)の後ろでC-x C-eとタイプして実行し、挙動を調べています。 ★をつけたbuffer-nameおよびbuffer-file-name関数は、それぞれ引数を渡したバッファ名、および、そのバッファのファイル名が返ると思われるのですが、実際には上記のようにエラーになります。 これはどうしてでしょうか。 Emacsは23.4.1を使っています。 よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- Emacsのコマンド入力で、スペースを入力する方法
こんにちは。 Emacsは、Gnu Emacs for Windows 23.4 を使っています。 eval-regionコマンドで、いくつかの式を評価した結果を、 別のファイルに出力したいと思っています。 マニュアルでは、eval-regionコマンドの説明は、以下のようになっていました。 ------------------------------------------------------------ コマンド: eval-region start end &optional stream read-function この関数は, カレントバッファのstartとendで指定した リージョン内のフォーム群を評価する. リージョンからフォームを読み取り, それらに対してevalを呼び出すことを リージョンの末尾に達するまで, あるいは, 処理されないエラーが知されるまで繰り返す. streamがnil以外ならば, リージョン内の式を評価した結果の値はstreamを使って表示する. see section 出力ストリーム. ------------------------------------------------------------ 上記の、startとendは、regionを設定した時に決まるものだと思います。 ある範囲をregionとして設定し、M-x eval-regionと入力したとに、 スペースキーを入力すると、ミニバッファには、[Sole completion] と表示され、上記のstreamを指定することができませんでした。 僕の環境では、M-xの後に、Lispコマンドを入力するときに、スペースキーを押すと、 スペースが入力されるのではなく、コマンド名の補完が行われます。 どうすれば、スペースを入力できるようになるのでしょうか? 何か御存じの方がいらっしゃれば、是非、情報を提供して頂きたく思います。 では、よろしくお願い致します。
- ベストアンサー
- フリーウェア・フリーソフト