EmacsでC++のnamespaceを挿入する.

他にもっと良い方法があるのかもしれませんが,EmacsC++のnamespaceを挿入するelispを書いてみたら中々良かったので,誰かの役に立つかもしれないし載せておきます.

(defun insert-namespace (name)
  "Insert namespace"
  (interactive "sname : ")
  (insert (format "namespace %s {\n\n}  // namespace %s" name name))
  (previous-line))

わたしはこれを以下のようにしてC-c nに割り付けて使っています.

(add-hook 'c-mode-common-hook
  '(lambda ()
     (local-set-key "\C-cn" 'insert-namespace)))

また,まったく関係ないですが,ff-find-related-fileというヘッダとソースのバッファを入れ替えてくれるコマンドが激しく便利です.
わたしはこれをC-c oに割り付けて使っています.

(add-hook 'c-mode-common-hook
  '(lambda ()
     (local-set-key "\C-co" 'ff-find-related-file)))