* redundant space after run 'c-indent-new-comment-line'
@ 2007-02-14 7:24 William Xue
2007-02-14 22:34 ` Alan Mackenzie
2007-02-15 22:37 ` Alan Mackenzie
0 siblings, 2 replies; 10+ messages in thread
From: William Xue @ 2007-02-14 7:24 UTC (permalink / raw)
To: emacs-devel
First, 'M-;' make a c style comment in a new line in a .h file, it prints
'/* */', and the cursor blinks at the 2nd space char.
Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
'/*
* */' and the cursor blinks at the last '*', but I think it should be
blinks at the 2nd space in the second line.
Please point out if I am wrong or have missed something.
Thanks!
--
Sincerely yours,
William
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-14 7:24 redundant space after run 'c-indent-new-comment-line' William Xue
@ 2007-02-14 22:34 ` Alan Mackenzie
2007-02-15 1:51 ` William Xue
2007-02-15 15:18 ` Stefan Monnier
2007-02-15 22:37 ` Alan Mackenzie
1 sibling, 2 replies; 10+ messages in thread
From: Alan Mackenzie @ 2007-02-14 22:34 UTC (permalink / raw)
To: William Xue; +Cc: emacs-devel
Hi, William!
On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
> First, 'M-;' make a c style comment in a new line in a .h file, it prints
> '/* */', and the cursor blinks at the 2nd space char.
Yes. This is the place where you'll be wanting to start typing.
> Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
> '/*
> * */' and the cursor blinks at the last '*', but I think it should be
> blinks at the 2nd space in the second line.
More precisely, you get this (but not in gnu style - use C-. k&r first to
see this):
/*
* */
^
|
point
What you are saying, it I understand you correctly, is that you should
see this:
/*
* */
^
|
point
I agree with you. It's a bug.
> Please point out if I am wrong or have missed something.
c-indent-new-comment-line is a rat's nest of special cases. Invoking it
when there's no text inside the "/* */" needs special handling.
I'll fix it.
> Thanks!
Thank you!
> --
> Sincerely yours,
> William
--
Alan Mackenzie (Ittersbach, Germany).
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-14 22:34 ` Alan Mackenzie
@ 2007-02-15 1:51 ` William Xue
2007-02-15 15:18 ` Stefan Monnier
1 sibling, 0 replies; 10+ messages in thread
From: William Xue @ 2007-02-15 1:51 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: emacs-devel
On Thu, 15 Feb 2007 06:34:40 +0800, Alan Mackenzie <acm@muc.de> wrote:
> Hi, William!
>
> On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
>> First, 'M-;' make a c style comment in a new line in a .h file, it
>> prints
>> '/* */', and the cursor blinks at the 2nd space char.
>
> Yes. This is the place where you'll be wanting to start typing.
>
>> Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
>> '/*
>> * */' and the cursor blinks at the last '*', but I think it should be
>> blinks at the 2nd space in the second line.
>
> More precisely, you get this (but not in gnu style - use C-. k&r first to
> see this):
>
> /*
> * */
> ^
> |
> point
>
> What you are saying, it I understand you correctly, is that you should
> see this:
>
> /*
> * */
> ^
> |
> point
Yes, that is what I want.
>
> I agree with you. It's a bug.
>
>> Please point out if I am wrong or have missed something.
>
> c-indent-new-comment-line is a rat's nest of special cases. Invoking it
> when there's no text inside the "/* */" needs special handling.
>
> I'll fix it.
Thank you!
>
>> Thanks!
>
> Thank you!
>
>> --
>> Sincerely yours,
>> William
>
--
Sincerely yours,
William
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-14 22:34 ` Alan Mackenzie
2007-02-15 1:51 ` William Xue
@ 2007-02-15 15:18 ` Stefan Monnier
2007-02-15 19:34 ` Alan Mackenzie
1 sibling, 1 reply; 10+ messages in thread
From: Stefan Monnier @ 2007-02-15 15:18 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: William Xue, emacs-devel
> On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
>> First, 'M-;' make a c style comment in a new line in a .h file, it prints
>> '/* */', and the cursor blinks at the 2nd space char.
> Yes. This is the place where you'll be wanting to start typing.
But why 3 spaces? This looks like a bug. But when I try it in Emacs -Q,
I get 2 spaces, so maybe it's something in his .emacs ?
Stefan
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-15 15:18 ` Stefan Monnier
@ 2007-02-15 19:34 ` Alan Mackenzie
2007-02-16 1:53 ` William Xue
0 siblings, 1 reply; 10+ messages in thread
From: Alan Mackenzie @ 2007-02-15 19:34 UTC (permalink / raw)
To: Stefan Monnier; +Cc: William Xue, emacs-devel
Hi, Stefan!
On Thu, Feb 15, 2007 at 10:18:31AM -0500, Stefan Monnier wrote:
> > On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
> >> First, 'M-;' make a c style comment in a new line in a .h file, it prints
> >> '/* */', and the cursor blinks at the 2nd space char.
> > Yes. This is the place where you'll be wanting to start typing.
> But why 3 spaces? This looks like a bug. But when I try it in Emacs
> -Q, I get 2 spaces, so maybe it's something in his .emacs ?
Maybe. Maybe he copied the string by hand, and an extra space slipped
in.
William, if you suspect that you got one space too many in '/* */',
please dump your CC Mode configuration (with C-c C-b) and post it here.
> Stefan
--
Alan.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-14 7:24 redundant space after run 'c-indent-new-comment-line' William Xue
2007-02-14 22:34 ` Alan Mackenzie
@ 2007-02-15 22:37 ` Alan Mackenzie
2007-02-16 2:37 ` William Xue
1 sibling, 1 reply; 10+ messages in thread
From: Alan Mackenzie @ 2007-02-15 22:37 UTC (permalink / raw)
To: William Xue; +Cc: emacs-devel
Hi, William!
On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
> First, 'M-;' make a c style comment in a new line in a .h file, it prints
> '/* */', and the cursor blinks at the 2nd space char.
> Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
> '/*
> * */' and the cursor blinks at the last '*', but I think it should be
> blinks at the 2nd space in the second line.
I think the essence of this bug is that point ends up further to the
right after the M-j that where it started. An M-j should NEVER do this -
normally, of course, point ends up at the far left, just after the
comment prefix.
I've committed a fix to ..../progmodes/cc-cmds.el. Could you update your
Emacs and try it out, please.
> William
--
Alan Mackenzie (Ittersbach, Germany).
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-15 19:34 ` Alan Mackenzie
@ 2007-02-16 1:53 ` William Xue
0 siblings, 0 replies; 10+ messages in thread
From: William Xue @ 2007-02-16 1:53 UTC (permalink / raw)
To: Alan Mackenzie, Stefan Monnier; +Cc: emacs-devel
On Fri, 16 Feb 2007 03:34:25 +0800, Alan Mackenzie <acm@muc.de> wrote:
> Hi, Stefan!
>
> On Thu, Feb 15, 2007 at 10:18:31AM -0500, Stefan Monnier wrote:
>> > On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
>> >> First, 'M-;' make a c style comment in a new line in a .h file, it
>> prints
>> >> '/* */', and the cursor blinks at the 2nd space char.
>
>> > Yes. This is the place where you'll be wanting to start typing.
>
>> But why 3 spaces? This looks like a bug. But when I try it in Emacs
>> -Q, I get 2 spaces, so maybe it's something in his .emacs ?
>
> Maybe. Maybe he copied the string by hand, and an extra space slipped
> in.
>
> William, if you suspect that you got one space too many in '/* */',
> please dump your CC Mode configuration (with C-c C-b) and post it here.
>
>> Stefan
>
There are only 2 spaces here also. Maybe I added one more space
accidentially when writing the message, sorry.
--
Sincerely yours,
William
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-15 22:37 ` Alan Mackenzie
@ 2007-02-16 2:37 ` William Xue
2007-02-16 7:16 ` Alan Mackenzie
0 siblings, 1 reply; 10+ messages in thread
From: William Xue @ 2007-02-16 2:37 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: emacs-devel
On Fri, 16 Feb 2007 06:37:34 +0800, Alan Mackenzie <acm@muc.de> wrote:
> Hi, William!
>
> On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
>> First, 'M-;' make a c style comment in a new line in a .h file, it
>> prints
>> '/* */', and the cursor blinks at the 2nd space char.
>
>> Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
>> '/*
>> * */' and the cursor blinks at the last '*', but I think it should be
>> blinks at the 2nd space in the second line.
>
> I think the essence of this bug is that point ends up further to the
> right after the M-j that where it started. An M-j should NEVER do this -
> normally, of course, point ends up at the far left, just after the
> comment prefix.
>
> I've committed a fix to ..../progmodes/cc-cmds.el. Could you update your
> Emacs and try it out, please.
>
It seems not to work, even start emacs with -Q.
When did you commit the fix? I made a update about 12 hours ago and now
there is nothing newer.
Here is the information of 'c-c c-b', maybe it can help something.
---8<----------------------------------------------------------------->8---
Emacs : GNU Emacs 23.0.0.1 (i386-mingw-nt5.1.2600)
of 2007-02-12 on WILLIAMNB
Package: CC Mode 5.31.4 (C/lah)
Buffer Style: williamxue
c-emacs-features: (pps-extended-state col-0-paren posix-char-classes
gen-string-delim gen-comment-delim syntax-properties 1-bit)
current state:
==============
(setq
c-basic-offset 8
c-comment-only-line-offset 4
c-indent-comment-alist '((anchored-comment column . 0) (end-block space .
1) (cpp-end-block space . 2))
c-indent-comments-syntactically-p nil
c-block-comment-prefix "* "
c-comment-prefix-regexp '((pike-mode . "//+!?\\|\\**") (awk-mode . "#+")
(other . "//+\\|\\**"))
c-doc-comment-style '((java-mode . javadoc) (pike-mode . autodoc) (c-mode
. gtkdoc))
c-cleanup-list '(scope-operator empty-defun-braces defun-close-semi)
c-hanging-braces-alist '((substatement-open after) (brace-list-open))
c-hanging-colons-alist '((member-init-intro before) (inher-intro)
(case-label after) (label after) (access-label after))
c-hanging-semi&comma-criteria '(c-semi&comma-inside-parenlist)
c-backslash-column 48
c-backslash-max-column 72
c-special-indent-hook nil
c-label-minimum-indentation 1
c-offsets-alist '((inexpr-class . +)
(inexpr-statement . +)
(lambda-intro-cont . +)
(inlambda . c-lineup-inexpr-block)
(template-args-cont c-lineup-template-args +)
(incomposition . +)
(inmodule . +)
(innamespace . +)
(inextern-lang . +)
(composition-close . 0)
(module-close . 0)
(namespace-close . 0)
(extern-lang-close . 0)
(composition-open . 0)
(module-open . 0)
(namespace-open . 0)
(extern-lang-open . 0)
(objc-method-call-cont . c-lineup-ObjC-method-call)
(objc-method-args-cont . c-lineup-ObjC-method-args)
(objc-method-intro . [0])
(friend . 0)
(cpp-define-intro c-lineup-cpp-define +)
(cpp-macro-cont . +)
(cpp-macro . [0])
(inclass . +)
(stream-op . c-lineup-streamop)
(arglist-cont-nonempty c-lineup-gcc-asm-reg
c-lineup-arglist)
(arglist-cont c-lineup-gcc-asm-reg 0)
(comment-intro c-lineup-knr-region-comment
c-lineup-comment)
(catch-clause . 0)
(else-clause . 0)
(do-while-closure . 0)
(access-label . -)
(case-label . 8)
(substatement . +)
(statement-case-intro . +)
(statement . 0)
(brace-entry-open . 0)
(brace-list-entry . 0)
(brace-list-intro . +)
(brace-list-close . 0)
(block-close . 0)
(block-open . 0)
(inher-cont . c-lineup-multi-inher)
(inher-intro . +)
(member-init-cont . c-lineup-multi-inher)
(member-init-intro . +)
(topmost-intro . 0)
(knr-argdecl . 0)
(func-decl-cont . +)
(inline-close . 0)
(class-close . 0)
(class-open . 0)
(defun-block-intro . +)
(defun-close . 0)
(defun-open . 0)
(c . c-lineup-C-comments)
(string . c-lineup-dont-change)
(topmost-intro-cont . c-lineup-topmost-intro-cont)
(brace-list-open . 0)
(inline-open . +)
(arglist-close . c-lineup-arglist)
(arglist-intro . +)
(statement-cont . +)
(statement-case-open . 0)
(label . 2)
(substatement-label . 2)
(substatement-open . 0)
(knr-argdecl-intro . -)
(statement-block-intro . +)
)
c-buffer-is-cc-mode 'c-mode
c-tab-always-indent t
c-syntactic-indentation t
c-syntactic-indentation-in-macros t
c-ignore-auto-fill '(string cpp code)
c-auto-align-backslashes t
c-backspace-function 'backward-delete-char-untabify
c-delete-function 'delete-char
c-electric-pound-behavior nil
c-default-style "k&r"
c-enable-xemacs-performance-kludge-p nil
c-old-style-variable-behavior nil
defun-prompt-regexp nil
tab-width 8
comment-column 32
parse-sexp-ignore-comments t
parse-sexp-lookup-properties nil
auto-fill-function nil
comment-multi-line t
comment-start-skip "\\(//+\\|/\\*+\\)\\s *"
fill-prefix nil
fill-column 70
paragraph-start "[ ]*\\(//+\\|\\**\\)[ ]*$\\|^\f"
adaptive-fill-mode t
adaptive-fill-regexp
"[ ]*\\(//+\\|\\**\\)[ ]*\\([ ]*\\([-!|#%;>*·•‣⁃◦]+[ ]*\\)*\\)"
)
---8<----------------------------------------------------------------->8---
>> William
>
--
Sincerely yours,
William
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-16 2:37 ` William Xue
@ 2007-02-16 7:16 ` Alan Mackenzie
2007-02-16 17:51 ` William Xue
0 siblings, 1 reply; 10+ messages in thread
From: Alan Mackenzie @ 2007-02-16 7:16 UTC (permalink / raw)
To: William Xue; +Cc: emacs-devel
On Fri, Feb 16, 2007 at 10:37:07AM +0800, William Xue wrote:
> On Fri, 16 Feb 2007 06:37:34 +0800, Alan Mackenzie <acm@muc.de> wrote:
> >Hi, William!
> >On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
> >>First, 'M-;' make a c style comment in a new line in a .h file, it
> >>prints
> >>'/* */', and the cursor blinks at the 2nd space char.
> >>Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
> >>'/*
> >> * */' and the cursor blinks at the last '*', but I think it should be
> >>blinks at the 2nd space in the second line.
> >I think the essence of this bug is that point ends up further to the
> >right after the M-j that where it started. An M-j should NEVER do this -
> >normally, of course, point ends up at the far left, just after the
> >comment prefix.
> >I've committed a fix to ..../progmodes/cc-cmds.el. Could you update your
> >Emacs and try it out, please.
> It seems not to work, even start emacs with -Q.
> When did you commit the fix? I made a update about 12 hours ago and now
> there is nothing newer.
Revision 1.54 of .../progmodes/cc-cmds.el, about 8 hours ago, at ~22:30
GMT. I've just had a look at http://savannah.gnu.org, and it's
definitely there now.
> William
--
Alan.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: redundant space after run 'c-indent-new-comment-line'
2007-02-16 7:16 ` Alan Mackenzie
@ 2007-02-16 17:51 ` William Xue
0 siblings, 0 replies; 10+ messages in thread
From: William Xue @ 2007-02-16 17:51 UTC (permalink / raw)
To: Alan Mackenzie; +Cc: emacs-devel
On Fri, 16 Feb 2007 15:16:46 +0800, Alan Mackenzie <acm@muc.de> wrote:
> On Fri, Feb 16, 2007 at 10:37:07AM +0800, William Xue wrote:
>> On Fri, 16 Feb 2007 06:37:34 +0800, Alan Mackenzie <acm@muc.de> wrote:
>
>> >Hi, William!
>
>> >On Wed, Feb 14, 2007 at 03:24:54PM +0800, William Xue wrote:
>> >>First, 'M-;' make a c style comment in a new line in a .h file, it
>> >>prints
>> >>'/* */', and the cursor blinks at the 2nd space char.
>
>> >>Then, 'M-J' to run 'c-indent-new-comment-line', and it gives
>> >>'/*
>> >> * */' and the cursor blinks at the last '*', but I think it should
>> be
>> >>blinks at the 2nd space in the second line.
>
>> >I think the essence of this bug is that point ends up further to the
>> >right after the M-j that where it started. An M-j should NEVER do
>> this -
>> >normally, of course, point ends up at the far left, just after the
>> >comment prefix.
>
>> >I've committed a fix to ..../progmodes/cc-cmds.el. Could you update
>> your
>> >Emacs and try it out, please.
>
>
>> It seems not to work, even start emacs with -Q.
>
>> When did you commit the fix? I made a update about 12 hours ago and now
>> there is nothing newer.
>
> Revision 1.54 of .../progmodes/cc-cmds.el, about 8 hours ago, at ~22:30
> GMT. I've just had a look at http://savannah.gnu.org, and it's
> definitely there now.
>
>> William
>
It works! Thank you very much!
At first, I have only checked emacs-unicode-2, and haven't found it.
Now, according to your indication, I found it in
http://cvs.savannah.gnu.org/viewcvs/emacs/lisp/progmodes/?root=emacs
Thanks!
--
Sincerely yours,
William
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2007-02-16 17:51 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-14 7:24 redundant space after run 'c-indent-new-comment-line' William Xue
2007-02-14 22:34 ` Alan Mackenzie
2007-02-15 1:51 ` William Xue
2007-02-15 15:18 ` Stefan Monnier
2007-02-15 19:34 ` Alan Mackenzie
2007-02-16 1:53 ` William Xue
2007-02-15 22:37 ` Alan Mackenzie
2007-02-16 2:37 ` William Xue
2007-02-16 7:16 ` Alan Mackenzie
2007-02-16 17:51 ` William Xue
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).