2011-07-05 4 views
5

設定とコマンドは、一つはemacsの中で、このようなコメントをするために実行する必要がないもの:コメントブロックは

/** 
    * 
    * something here 
    */ 

感謝を。

答えて

4

簡単な方法は、この コメントを挿入する独自のコマンドを定義することです。あなたの.emacsファイルにこれを追加します。

(defun insert-doc-comment() (interactive) 
    (insert "/**\n * Brief description. Long description. \n * @param \n * @return \n * @exception \n * @see \n * @author \n */")) 

次に、あなたの好みのキーに新しいコマンドをバインドします

(define-key global-map [(S-f1)] 'insert-doc-comment) 

今Shiftキーを押しながらF1キーを押すと、このようなコメントブロックを挿入します:

/** 
* Brief description. Long description. 
* @param 
* @return 
* @exception 
* @see 
* @author 
*/ 
+0

あなたが言ったようにしました。しかし、Shift + F1を押すと '; 2P'と表示されます。なぜなのかご存知ですか? – ajmartin

+2

おそらくあなたはShift +ファンクションキーを認識していない端末にいるでしょう。 'C-h k'と' S-f1'を押して、Emacsがそれらのキーを 'S-f1'として認識しているかどうかを確認します。 – sanityinc

+0

はい、Shiftキーが認識されませんでした。キーを別のものに変更しました。ありがとう。 – ajmartin

0

あなたは特定のモードでM-x comment-regionとその友人を探しています。

+0

私は試しましたが、スラッシュでコメントしているようです。スラッシュと星の組み合わせが必要です(上記のように)。どのようにカスタマイズできますか? – ajmartin

1

emacsでテンプレートを構築できます。テンプレートはファイル構造のスケルトンであり、特定の拡張子を持つファイルに結びつけることができます。たとえば、.java拡張子を付けて作成した新しいファイルに適用されるjavaテンプレートを作成し、作成した任意のファイルに適用されるC++テンプレートを拡張子.cpp(および.hファイル用の別のファイル)にすることができます必要に応じて)。

このwikiには、C++クラステンプレートを使い始めるのに役立つサンプルがあります。

-1

作業を実行するキーボードマクロを定義して実行することができます。状況に応じて、最初に/*と入力してC-x (と入力し、C-n M-m *C-x)を入力します。コメントアウトしたい最後の行までC-x eを実行します。最後の行にあるときは、/で終了します。

私はそれが非常に醜いように見えると知っていますが、FWIW、それは私のために働く。大きなブロックをコメントにする必要があるときは、このアプローチを使用します。

0
M-x customize-group RET comment 

「コメントスタイル」変数の「値メニュー」を見てください。

あなたは現在の行をしたい場合にも、これを使用することができ

(その後、あなたは内と選択されたブロックのうち、コメントを切り替えるには、「コメント・オア・コメントを解除-領域」「コメント-DWIM」の両方を使用するか、することができます)アクティブ全く領域が存在しない場合/アウトにコメント:

(defun px-toggle-comments() 
    "If region is set, [un]comments it. Otherwise [un]comments current line." 
    (interactive) 
    (if (eq mark-active nil) 
     (progn 
       (beginning-of-line 1) 
       (set-mark (point)) 
       (forward-line) 
       (comment-dwim nil)) 
    (comment-dwim nil)) 
    (deactivate-mark)) 

私は通常、メリーランド州にバインド:

(global-set-key (kbd "M-d") 'px-toggle-comments) 
1

使用しyasnippet snipept、あなたはまだそれを使用していない場合は、それを試してみてください。私はあなたにyasnippets-xx/snippetsをコピーするべき方法で、私のスニペットで2 /両方を持っ

# -*- mode: snippet -*- 
# name: docblock 
# key: /** 
# -- 
/** 
* ${1:name} - ${2:short description} 
* @${3:argv1}: $4 
* @${5:argv2}: $6 
* 
* ${7:long description} 
*/ 
$0 

:モード/

# -*- mode: snippet -*- 
# name: dock 
# key: /* 
# -- 
/* 
* $1 
*/ 
$0 

または別のバージョン - スニペット/ **あなたにこれを入れて

別の~/.emacs.d/snippetsような場所、そしてあなたの.emacsでこれを置く:

(setq yas-snippet-dirs '("~/.emacs.d/snippets")) 

yasnippetを更新するたびに、yasnippet-xx/snippetsが著者のスニペットに置き換えられます。~/.emacs.d/snippetsadd/delete/modifyスニペットを自分のニーズに合わせて行うことができます。

関連する問題