Блоки комментариев со звездами в emacs - PullRequest
6 голосов
/ 05 июля 2011

Какие настройки и команды нужно выполнить, чтобы комментировать подобные в emacs:

  /**
   * 
   * something here
   */

Спасибо.

Ответы [ 6 ]

5 голосов
/ 05 июля 2011

Простой способ - определить собственную команду для вставки этого комментарий. Добавьте это в ваш файл .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 
 */
2 голосов
/ 18 ноября 2014

Используйте yasnippet snipept, если вы еще не используете его, попробуйте.

Поместите это в свои фрагменты / ** - mode /

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

или другая версия:

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

Я получил оба в моих отрывках /, кстати, вы должны скопировать yasnippets-xx/snippets в другое место, например ~/.emacs.d/snippets, и поместить это в ваш .emacs:

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

становятся каждый раз, когда вы обновляете yasnippet, yasnippet-xx / snippets будут заменены фрагментами автора, вы можете add/delete/modify свои собственные фрагменты в ~/.emacs.d/snippets для своих собственных нужд.

2 голосов
/ 05 июля 2011

Вы можете создавать шаблоны с помощью emacs. Шаблоны являются каркасом для файловой структуры и могут быть привязаны к файлам с определенными расширениями. Например, вы можете создать шаблон Java, который будет применяться к любому новому файлу, который вы создаете с расширением .java, и вы можете создать шаблон C ++, который будет применяться к любому файлу, который вы создаете, с расширением .cpp (и еще один для файлов .h. при необходимости).

В этой вики есть больше примеров, которые помогут вам начать работу с шаблоном класса C ++.

0 голосов
/ 27 июля 2012
M-x customize-group RET comment

Посмотрите на «Меню значений» переменной «Стиль комментария».

(Тогда вы можете использовать «comment-dwim» или «comment-or-uncomment-region» для переключениякомментарии в и из выбранных блоков)

Вы также можете использовать это, если хотите, чтобы текущая строка закомментировалась в / из, если нет активного региона:

(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))

Я обычно привязываю его кMd:

(global-set-key (kbd "M-d") 'px-toggle-comments)
0 голосов
/ 07 июля 2011

Вы можете определить макрос клавиатуры для выполнения работы и запустить его. Для вашей ситуации наберите начало /*, затем наберите C-x (, затем C-n M-m * и, C-x ). Делайте C-x e до последней строки, которую вы хотите закомментировать. Когда в последней строке, завершите его с /.

Я знаю, это выглядит очень некрасиво и тому подобное, но, FWIW, это работает для меня. Когда мне нужно закомментировать большие блоки, я использую этот подход.

0 голосов
/ 05 июля 2011

Вы ищете Mx comment-region и его друзей для вашего конкретного режима.

...