I’ve often been sad that there is no default keybinding for comment-region in Emacs’s ruby-mode. Eventually it annoyed me enough that I added one:
This assigns C-c # to comment the current region, or if the current region is already commented, it will uncomment the region.(add-hook 'ruby-mode-hook
(lambda ()
(define-key ruby-mode-map "\C-c#" 'comment-or-uncomment-region)
)
)
But what about when there’s no region currently marked? It would be nice if emacs would (un)comment the current line. To do this, I took a page from DJCB at Emacs-fu.
Now with nothing marked, pressing C-c # will cause emacs to toggle commenting on the current line.(defadvice comment-or-uncomment-region (before slick-comment activate compile)
"When called interactively with no active region, comment a single line instead."
(interactive
(if mark-active (list (region-beginning) (region-end))
(list (line-beginning-position)
(line-beginning-position 2)))))
In case it isn’t obvious, one should add the abbove snippets to their .emacs file to gain their benefits.
Comments
Leave a comment Trackback