all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* CC Mode 5.28 (Java); The comment fill for auto-fill mode does not work properly when inside Java classes
@ 2002-03-30  5:59 Dwayne A. Davis
  0 siblings, 0 replies; 2+ messages in thread
From: Dwayne A. Davis @ 2002-03-30  5:59 UTC (permalink / raw)


When using java-mode with auto-fill enabled (emacs 21.2.1 on Windows2000
Professional), inside a java class the line prefix is not being displayed
properly when using c-style/javadoc style comments within a class.

Below is the exerpt from a file that demonstrates the problem, you can see
the comments are fine until the second javadoc-style comment within the
class:

/*
 * Comments that extend past the fill-column when in auto-fill mode
 * should wrap, as this one has.
 */
public class Foo {
    // Long comments that use the '//' start should wrap as well,
    // which is what this one does.
    /**
     * Javadoc style comments appear to work fine here as well, as we
     * can see in this comment.
     */
    public String getName() {
	return name;
    }

    /**
     * However, this comment does not work; nothing has changed
    except we are farther down in the class...

-DAD


Emacs  : GNU Emacs 21.2.1 (i386-msvc-nt5.0.2195)
 of 2002-03-19 on buffy
Package: CC Mode 5.28 (Java)
Buffer Style: java

c-emacs-features: (1-bit)

current state:
==============
(setq
 c-basic-offset 4
 c-comment-only-line-offset '(0 . 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)
		   (knr-argdecl . 0)
		   (topmost-intro . 0)
		   (member-init-intro . +)
		   (member-init-cont . c-lineup-multi-inher)
		   (inher-intro . +)
		   (block-open . 0)
		   (block-close . 0)
		   (brace-list-open . 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)
		   (do-while-closure . 0)
		   (else-clause . 0)
		   (catch-clause . 0)
		   (comment-intro . c-lineup-comment)
		   (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 . +)
		   (inline-open . 0)
		   (topmost-intro-cont . +)
		   (statement-block-intro . +)
		   (knr-argdecl-intro . 5)
		   (substatement-open . +)
		   (label . +)
		   (statement-case-open . +)
		   (statement-cont . +)
		   (arglist-intro . c-lineup-arglist-intro-after-paren)
		   (arglist-close . c-lineup-arglist)
		   (access-label . 0)
		   (inher-cont . c-lineup-java-inher)
		   (func-decl-cont . c-lineup-java-throws)
		   )
 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
 auto-fill-function 'c-do-auto-fill
 comment-multi-line t
 comment-start-skip "/\\*+ *\\|//+ *"
 fill-prefix nil
 paragraph-start "[ 	]*\\(//+\\|\\**\\)[ 	]*\\(@[a-zA-Z]+\\>\\|$\\)\\|^\f"
 adaptive-fill-mode t
 adaptive-fill-regexp
[ 	]*\\(//+\\|\\**\\)[ 	]*\\([ 	]*\\([-|#;>*]+[ 	]*\\|(?[0-9]+[.)][ 	]*\\)*\
\)"
 )

^ permalink raw reply	[flat|nested] 2+ messages in thread

* re: CC Mode 5.28 (Java); The comment fill for auto-fill mode does not work properly when inside Java classes
@ 2003-05-16 17:34 John Lusk 4
  0 siblings, 0 replies; 2+ messages in thread
From: John Lusk 4 @ 2003-05-16 17:34 UTC (permalink / raw)


[-- Attachment #1: Type: text/plain, Size: 620 bytes --]

This is in response to an ancient post I saw in the archives.  I have 
the same problem.  When I went to the cc-mode project on SourceForge, I 
see they haven't created any downloadable releases past 5.28 (although 
there's plenty of discussion of 5.29 and 5.30 on their list).  Apart 
from the fact that our local sysadmin has cut off the CVS port with the 
firewall, I'm not real enthusiastic about snagging a CVS snapshot.

So, here's a (no doubt crude, brutal) patch for the cc-mode distributed 
w/emacs 21.2 that seems to work for me.

(Hmm.  Dumb ol' Mozilla wants to wrap.  I'll try attaching the diff.)

John.



[-- Attachment #2: cc-cmds.5.28.patch --]
[-- Type: text/plain, Size: 602 bytes --]

--- ../lisp/progmodes/cc-cmds.el	2001-07-16 02:46:48.000000000 -0400
+++ cc-cmds.el	2003-05-16 11:31:30.000000000 -0400
@@ -2425,7 +2425,8 @@
 	    ;; we're on the first line in a block comment so it'll be
 	    ;; wrong.  Ignore it to guess a better one below.
 	    (setq fill-prefix nil)
-	  (when (and (eq c-lit-type 'c++)
+	  (when (and (or (eq c-lit-type 'c++)
+                         (eq c-lit-type 'c))
 		     (not (string-match "\\`[ \t]*//" (or fill-prefix ""))))
 	    ;; Kludge: If the function that adapted the fill prefix
 	    ;; doesn't produce the required comment starter for line

[-- Attachment #3: Type: text/plain, Size: 148 bytes --]

_______________________________________________
Bug-gnu-emacs mailing list
Bug-gnu-emacs@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-gnu-emacs

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-05-16 17:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-03-30  5:59 CC Mode 5.28 (Java); The comment fill for auto-fill mode does not work properly when inside Java classes Dwayne A. Davis
  -- strict thread matches above, loose matches on Subject: below --
2003-05-16 17:34 John Lusk 4

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.