# Emacs mode question: backward-sexp & forward-sexp for begin

**URL:** <https://www.ruby-forum.com/t/emacs-mode-question-backward-sexp-forward-sexp-for-begin/50426>\
**Category:** Ruby\
**Created:** [December 16, 2005, 4:42am UTC](https://www.ruby-forum.com/t/emacs-mode-question-backward-sexp-forward-sexp-for-begin/50426 "2005-12-16T04:42:10Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![zdavidlnx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/z/839c29/32.png) [@zdavidlnx](https://www.ruby-forum.com/u/zdavidlnx)\
**Post date:** [December 16, 2005, 4:42am UTC](https://www.ruby-forum.com/t/emacs-mode-question-backward-sexp-forward-sexp-for-begin/50426/1 "2005-12-16T04:42:10Z")

</div>

Hi all,

Is there a Ruby Emacs mode where I can do M-C-b (backward-sexp) and  
M-C-f (forward-sexp) for “begin”…“end” too [\*], and not just for  
“(”…")", “{”…"}", etc? I’d like to use “begin”…“end” more to  
delimit multiline blocks because it seems neater/creates less noise,  
but many times I end up using “{”…"}" for the above sole reason. I  
find easy jumping like this more useful than folding (which Emacs  
doesn’t do particularly well, anyway).

[\*] If it can additionally do “if”…“elsif”…“else”…“end”,  
“def”…“end”, etc. too then it would be infinitely more wonderful.

Regards,  
dave

---

<div class="post-metadata">

**Author:** ![zdavidlnx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/z/839c29/32.png) [@zdavidlnx](https://www.ruby-forum.com/u/zdavidlnx)\
**Post date:** [December 17, 2005, 2:09pm UTC](https://www.ruby-forum.com/t/emacs-mode-question-backward-sexp-forward-sexp-for-begin/50426/2 "2005-12-17T14:09:04Z")

</div>

David G. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) writes:

> [\*] If it can additionally do “if”…“elsif”…“else”…“end”,  
> “def”…“end”, etc. too then it would be infinitely more wonderful.
> 
> Regards,  
> dave

Hi David,

Does C-M-n / C-M-p do what you want?

Cheers,  
George.

---

<div class="post-metadata">

**Author:** ![zdavidlnx](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/z/839c29/32.png) [@zdavidlnx](https://www.ruby-forum.com/u/zdavidlnx)\
**Post date:** [December 18, 2005, 5:41am UTC](https://www.ruby-forum.com/t/emacs-mode-question-backward-sexp-forward-sexp-for-begin/50426/3 "2005-12-18T05:41:33Z")

</div>

George O. wrote:

> Hi David,
> 
> Does C-M-n / C-M-p do what you want?

Why yes, thank you! I should’ve checked for ruby-\* functions first, doh.

Regards,  
David
