From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: "Drew Adams" <drew.adams@oracle.com>
Cc: 7509@debbugs.gnu.org
Subject: bug#7509: 24.0.50; doc for `comment-style' and `comment-styles'
Date: Fri, 03 Dec 2010 18:16:24 -0500 [thread overview]
Message-ID: <jwvhbeumovl.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <B72B852689214907BFBB00C33916B28D@us.oracle.com> (Drew Adams's message of "Tue, 30 Nov 2010 20:10:36 -0800")
> You're welcome. Thanks for making the changes.
I've installed the patch below, which I hope addresses your concerns
without offending my sense of modularity.
Stefan
--- lisp/newcomment.el 2010-10-21 20:12:38 +0000
+++ lisp/newcomment.el 2010-12-03 23:11:10 +0000
@@ -187,21 +187,58 @@
it is 1 so that regions are commented with two or three semi-colons.")
(defconst comment-styles
- '((plain . (nil nil nil nil))
- (indent . (nil nil nil t))
- (indent-or-triple
- . (nil nil nil multi-char))
- (aligned . (nil t nil t))
- (multi-line . (t nil nil t))
- (extra-line . (t nil t t))
- (box . (nil t t t))
- (box-multi . (t t t t)))
- "Comment region styles of the form (STYLE . (MULTI ALIGN EXTRA INDENT)).
+ '((plain nil nil nil nil
+ "Start in column 0 (do not indent), as in Emacs-20")
+ (indent-or-triple nil nil nil multi-char
+ "Start in column 0, but only for single-char starters")
+ (indent nil nil nil t
+ "Full comment per line, ends not aligned")
+ (aligned nil t nil t
+ "Full comment per line, ends aligned")
+ (box nil t t t
+ "Full comment per line, ends aligned, + top and bottom")
+ (extra-line t nil t t
+ "One comment for all lines, end on a line by itself")
+ (multi-line t nil nil t
+ "One comment for all lines, end on last commented line")
+ (box-multi t t t t
+ "One comment for all lines, + top and bottom"))
+ "Comment region style definitions.
+Each style is defined with a form (STYLE . (MULTI ALIGN EXTRA INDENT DOC)).
+DOC should succinctly describe the style.
STYLE should be a mnemonic symbol.
MULTI specifies that comments are allowed to span multiple lines.
+ e.g. in C it comments regions as
+ /* blabla
+ * bli */
+ rather than
+ /* blabla */
+ /* bli */
+ if `comment-end' is empty, this has no effect.
+
ALIGN specifies that the `comment-end' markers should be aligned.
+ e.g. in C it comments regions as
+ /* blabla */
+ /* bli */
+ rather than
+ /* blabla */
+ /* bli */
+ if `comment-end' is empty, this has no effect, unless EXTRA is also set,
+ in which case the comment gets wrapped in a box.
+
EXTRA specifies that an extra line should be used before and after the
region to comment (to put the `comment-end' and `comment-start').
+ e.g. in C it comments regions as
+ /*
+ * blabla
+ * bli
+ */
+ rather than
+ /* blabla
+ * bli */
+ if the comment style is not multi line, this has no effect, unless ALIGN
+ is also set, in which case the comment gets wrapped in a box.
+
INDENT specifies that the `comment-start' markers should not be put at the
left margin but at the current indentation of the region to comment.
If INDENT is `multi-char', that means indent multi-character
@@ -212,7 +249,10 @@
"Style to be used for `comment-region'.
See `comment-styles' for a list of available styles."
:type (if (boundp 'comment-styles)
- `(choice ,@(mapcar (lambda (s) `(const ,(car s)))
+ `(choice
+ ,@(mapcar (lambda (s)
+ `(const :tag ,(format "%s: %s" (car s) (nth 5 s))
+ ,(car s)))
comment-styles))
'symbol)
:version "23.1"
next prev parent reply other threads:[~2010-12-03 23:16 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-28 19:42 bug#7509: 24.0.50; doc for `comment-style' and `comment-styles' Drew Adams
2010-11-28 21:01 ` Stefan Monnier
2010-11-28 22:34 ` Drew Adams
2010-11-28 22:49 ` Drew Adams
2010-11-30 18:15 ` Stefan Monnier
2010-11-30 19:13 ` Drew Adams
2010-11-30 22:06 ` Stefan Monnier
2010-11-30 22:36 ` Drew Adams
2010-12-01 2:57 ` Stefan Monnier
2010-12-01 4:10 ` Drew Adams
2010-12-03 23:16 ` Stefan Monnier [this message]
2010-12-03 23:34 ` Drew Adams
2010-11-29 1:38 ` Stefan Monnier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwvhbeumovl.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=7509@debbugs.gnu.org \
--cc=drew.adams@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.