* commenting trouble
@ 2009-01-09 19:52 Reynaldo
2009-01-09 23:34 ` Ian Eure
0 siblings, 1 reply; 5+ messages in thread
From: Reynaldo @ 2009-01-09 19:52 UTC (permalink / raw)
To: help-gnu-emacs
Hello,
Recently I wrote this (my first lines of Emacs Lisp)
(defun comentar (&optional beg end)
(interactive "r")
(save-excursion
(if (and beg end)
(comment-region beg end)
(let ((beg (progn
(beginning-of-line)
(point)))
(end (progn
(end-of-line)
(point))))
(comment-region beg end)))))
And my purpose was to use the same function to comment a line without
having to select a region, or comment a region (selecting it, of course)
but it doesn't work as expected. If for once I delete the if condition
then it works fine when I comment a line, but i wanted to extend it to
comment a region.
Is this possible? Or does one need to have separate command (and key
bindings) to work on a line or on a region as with kill-line and kill-region
Regards,
Reynaldo
^ permalink raw reply [flat|nested] 5+ messages in thread
* commenting trouble
@ 2009-01-09 21:12 Reynaldo
0 siblings, 0 replies; 5+ messages in thread
From: Reynaldo @ 2009-01-09 21:12 UTC (permalink / raw)
To: help-gnu-emacs
Hello,
Recently I wrote this (my first lines of Emacs Lisp)
(defun comentar (&optional beg end)
(interactive "r")
(save-excursion
(if (and beg end)
(comment-region beg end)
(let ((beg (progn
(beginning-of-line)
(point)))
(end (progn
(end-of-line)
(point))))
(comment-region beg end)))))
And my purpose was to use the same function to comment a line without
having to select a region, or comment a region (selecting it, of course)
but it doesn't work as expected. If for once I delete the if condition
then it works fine when I comment a line, but i wanted to extend it to
comment a region.
Is this possible? Or does one need to have separate command (and key
bindings) to work on a line or on a region as with kill-line and kill-region
Regards,
Reynaldo
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: commenting trouble
2009-01-09 19:52 Reynaldo
@ 2009-01-09 23:34 ` Ian Eure
2009-01-10 1:09 ` Reynaldo
0 siblings, 1 reply; 5+ messages in thread
From: Ian Eure @ 2009-01-09 23:34 UTC (permalink / raw)
To: Reynaldo; +Cc: help-gnu-emacs
On Jan 9, 2009, at 11:52 AM, Reynaldo wrote:
> Hello,
>
> Recently I wrote this (my first lines of Emacs Lisp)
>
> (defun comentar (&optional beg end)
> (interactive "r")
> (save-excursion
> (if (and beg end)
> (comment-region beg end)
> (let ((beg (progn
> (beginning-of-line)
> (point)))
> (end (progn
> (end-of-line)
> (point))))
> (comment-region beg end)))))
>
> And my purpose was to use the same function to comment a line without
> having to select a region, or comment a region (selecting it, of
> course)
> but it doesn't work as expected. If for once I delete the if condition
> then it works fine when I comment a line, but i wanted to extend it to
> comment a region.
>
> Is this possible? Or does one need to have separate command (and key
> bindings) to work on a line or on a region as with kill-line and
> kill-region
>
I use this code I ganked from Aquamacs (lines 308-324):
http://github.com/davidswelt/aquamacs-git/tree/master/src/site-lisp/macosx/osxkeys.el#L308
It gives you (comment-or-uncomment-region-or-line), which I bind to C-
c C-c in the appropriate modes.
- Ian
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: commenting trouble
2009-01-09 23:34 ` Ian Eure
@ 2009-01-10 1:09 ` Reynaldo
0 siblings, 0 replies; 5+ messages in thread
From: Reynaldo @ 2009-01-10 1:09 UTC (permalink / raw)
Cc: help-gnu-emacs
Ian Eure escribió:
> On Jan 9, 2009, at 11:52 AM, Reynaldo wrote:
>
>> Hello,
>>
>> Recently I wrote this (my first lines of Emacs Lisp)
>>
>> (defun comentar (&optional beg end)
>> (interactive "r")
>> (save-excursion
>> (if (and beg end)
>> (comment-region beg end)
>> (let ((beg (progn
>> (beginning-of-line)
>> (point)))
>> (end (progn
>> (end-of-line)
>> (point))))
>> (comment-region beg end)))))
>>
>> And my purpose was to use the same function to comment a line without
>> having to select a region, or comment a region (selecting it, of course)
>> but it doesn't work as expected. If for once I delete the if condition
>> then it works fine when I comment a line, but i wanted to extend it to
>> comment a region.
>>
>> Is this possible? Or does one need to have separate command (and key
>> bindings) to work on a line or on a region as with kill-line and
>> kill-region
>>
> I use this code I ganked from Aquamacs (lines 308-324):
>
> http://github.com/davidswelt/aquamacs-git/tree/master/src/site-lisp/macosx/osxkeys.el#L308
>
>
> It gives you (comment-or-uncomment-region-or-line), which I bind to
> C-c C-c in the appropriate modes.
>
> - Ian
Great! That's what I was looking for, I'll study the code.
Thanks very much!
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: commenting trouble
[not found] <mailman.4452.1231543773.26697.help-gnu-emacs@gnu.org>
@ 2009-01-12 22:49 ` Xah Lee
0 siblings, 0 replies; 5+ messages in thread
From: Xah Lee @ 2009-01-12 22:49 UTC (permalink / raw)
To: help-gnu-emacs
On Jan 9, 11:52 am, Reynaldo <reynaldo...@gmail.com> wrote:
> Hello,
>
> Recently I wrote this (my first lines of Emacs Lisp)
>
> (defun comentar (&optional beg end)
> (interactive "r")
> (save-excursion
> (if (and beg end)
> (comment-region beg end)
> (let ((beg (progn
> (beginning-of-line)
> (point)))
> (end (progn
> (end-of-line)
> (point))))
> (comment-region beg end)))))
>
> And my purpose was to use the same function to comment a line without
> having to select a region, or comment a region (selecting it, of course)
> but it doesn't work as expected.
> ...
I have writen exactly that.
See:
• How To Write A Emacs Command For Comment Handling
http://xahlee.org/emacs/elisp_comment_command.html
I sent a bug report to gnu emacs official list, about how comment-dwim
does not comment out the current line when there's no selection. I
think it is not intuitive.
Bug #1286
http://groups.google.com/group/gnu.emacs.bug/browse_frm/thread/7186aed0c6f4b58e
2 emacs developers responded that the current behavior has always been
like that and did not consider it not intuitive.
Xah
∑ http://xahlee.org/
☄
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-01-12 22:49 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-09 21:12 commenting trouble Reynaldo
[not found] <mailman.4452.1231543773.26697.help-gnu-emacs@gnu.org>
2009-01-12 22:49 ` Xah Lee
-- strict thread matches above, loose matches on Subject: below --
2009-01-09 19:52 Reynaldo
2009-01-09 23:34 ` Ian Eure
2009-01-10 1:09 ` Reynaldo
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).