From: Geoffrey Furnish <furnish@xiphi.lsscorp.com>
Subject: CC Mode 5.28 (C++); trouble formatting template decls
Date: Thu, 25 Apr 2002 22:22:33 -0700 [thread overview]
Message-ID: <200204260522.g3Q5MXt09799@xiphi.lsscorp.com> (raw)
Hello Barry,
I'm not sure this counts as a bug report, maybe more like an enhancement
request.
I was kinda hoping that cc-mode would help me out with auto indenting of
complex template parameter lists in template decls. These are becoming a
little more idiomatic these days. Here's an example of what cc-mode is doing
right now:
template<
class A,
template<
class T,
class U
> class B,
template
<
class R,
class S
>
What I was hoping for was something like this:
template<
class A,
template<
class T,
class U
> class B,
// or maybe with hanging <, like this:
template
<
class R,
class S
> class C
> class X {};
In other words, inside a template decl, <> should behave kinda like {}.
Emacs : XEmacs 21.4 (patch 6) "Common Lisp" [Lucid] (i686-pc-linux) of Mon Mar 18 2002 on xiphi.lsscorp.com
Package: CC Mode 5.28 (C++)
Buffer Style: rtt
c-emacs-features: (8-bit)
current state:
==============
(setq
c-basic-offset 4
c-comment-only-line-offset 0
c-block-comment-prefix "* "
c-comment-prefix-regexp '((pike-mode . "//+!?\\|\\**") (other . "//+\\|\\**"))
c-cleanup-list '(scope-operator)
c-hanging-braces-alist '((brace-list-open) (brace-entry-open) (substatement-open after)
(block-close . c-snug-do-while) (extern-lang-open after)
(inexpr-class-open after) (inexpr-class-close before))
c-hanging-colons-alist nil
c-hanging-semi&comma-criteria '(c-semi&comma-inside-parenlist)
c-backslash-column 48
c-label-minimum-indentation 1
c-offsets-alist '((string . c-lineup-dont-change)
(c . c-lineup-C-comments)
(defun-open . 0)
(defun-close . 0)
(defun-block-intro . +)
(class-open . 0)
(class-close . 0)
(inline-close . 0)
(func-decl-cont . +)
(knr-argdecl . 0)
(topmost-intro . 0)
(topmost-intro-cont . 0)
(member-init-intro . +)
(member-init-cont . c-lineup-multi-inher)
(inher-intro . +)
(inher-cont . c-lineup-multi-inher)
(block-open . 0)
(block-close . 0)
(brace-list-close . 0)
(brace-list-intro . +)
(brace-list-entry . 0)
(brace-entry-open . 0)
(statement . 0)
(statement-case-intro . +)
(substatement . +)
(case-label . 0)
(access-label . -2)
(do-while-closure . 0)
(else-clause . 0)
(catch-clause . 0)
(comment-intro . -)
(arglist-cont . 0)
(arglist-cont-nonempty . c-lineup-arglist)
(stream-op . c-lineup-streamop)
(inclass . +)
(cpp-macro . [0])
(cpp-macro-cont . c-lineup-dont-change)
(friend . 0)
(objc-method-intro . [0])
(objc-method-args-cont . c-lineup-ObjC-method-args)
(objc-method-call-cont . c-lineup-ObjC-method-call)
(extern-lang-open . 0)
(extern-lang-close . 0)
(inextern-lang . +)
(namespace-open . 0)
(namespace-close . 0)
(innamespace . +)
(template-args-cont c-lineup-template-args +)
(inlambda . c-lineup-inexpr-block)
(lambda-intro-cont . +)
(inexpr-statement . 0)
(inexpr-class . +)
(statement-block-intro . +)
(knr-argdecl-intro . +)
(substatement-open . 0)
(label . 2)
(statement-case-open . 0)
(statement-cont . +)
(arglist-intro . +)
(arglist-close . +)
(inline-open . 0)
(brace-list-open . 0)
)
c-delete-function 'delete-char
c-electric-pound-behavior nil
c-indent-comments-syntactically-p nil
c-tab-always-indent t
defun-prompt-regexp nil
tab-width 8
comment-column 32
parse-sexp-ignore-comments t
signal-error-on-buffer-boundary t
auto-fill-function 'c-do-auto-fill
comment-multi-line t
comment-start-skip "/\\*+ *\\|//+ *"
fill-prefix nil
paragraph-start "[ ]*\\(//+\\|\\**\\)[ ]*$\\|^\f"
adaptive-fill-mode t
adaptive-fill-regexp "[ ]*\\(//+\\|\\**\\)[ ]*\\([ ]*\\([#;>*]+ +\\)?\\)"
)
reply other threads:[~2002-04-26 5:22 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200204260522.g3Q5MXt09799@xiphi.lsscorp.com \
--to=furnish@xiphi.lsscorp.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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).