From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Eric Schulte" Subject: Re: programming for org-mode Date: Thu, 15 Jul 2010 14:53:14 -0700 Message-ID: <87fwzkbeet.fsf@gmail.com> References: <3910304564.20100715085202@gmail.com> <87vd8gejvk.fsf@gmail.com> <12989.1279230047@alphaville.usa.hp.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from [140.186.70.92] (port=49627 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZWMq-0001aA-F0 for emacs-orgmode@gnu.org; Thu, 15 Jul 2010 17:53:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OZWMp-0002kM-E4 for emacs-orgmode@gnu.org; Thu, 15 Jul 2010 17:53:20 -0400 Received: from mail-pv0-f169.google.com ([74.125.83.169]:63796) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZWMp-0002k8-87 for emacs-orgmode@gnu.org; Thu, 15 Jul 2010 17:53:19 -0400 Received: by pvc30 with SMTP id 30so1106163pvc.0 for ; Thu, 15 Jul 2010 14:53:17 -0700 (PDT) In-Reply-To: <12989.1279230047@alphaville.usa.hp.com> (Nick Dokos's message of "Thu, 15 Jul 2010 17:40:47 -0400") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: nicholas.dokos@hp.com Cc: emacs-orgmode@gnu.org, Ivanov Dmitry Hi Nick, Nick Dokos writes: > Eric Schulte wrote: > >> ... >> If you are going to do any serious work with lisp, I would emphatically >> recommend using paredit-mode, and becoming friends with the Sexp >> movement functions >> +--------------------------------------------+ >> | C-M-f | runs the command paredit-forward | >> |-------+------------------------------------| >> | C-M-b | runs the command paredit-backward | >> |-------+------------------------------------| >> | C-M-u | runs the command backward-up-list | >> |-------+------------------------------------| >> | C-M-k | runs the command kill-sexp | >> |-------+------------------------------------| >> | C-y | runs the command yank | >> +--------------------------------------------+ >> >> They allow you to manipulate lisp code on the level of logical >> expressions, the utility of which can not be over stated. >> > > I presume that paredit is useful because it's a minor mode, so you can > enable it on an org-mode buffer (e.g. using babel). No, even for emacs-lisp code blocks I use C-c ' to edit the code in emacs-lisp mode. I do have "[" and "]" globally bound to `insert-parenthesis' and `move-past-close-and-reindent' respectively, but that's probably a little too radical for most users. I only enable paredit minor-mode in lispy modes. > But if you are editing a .el file, then emacs-lisp mode provides all > these facilities (C-M-f -> forward-sexp, etc.) and you don't need > paredit. Do I have that right? > Not quite, Paredit has a number of nice features aside from sexp movement, including /electric/ insertion of both open and close parenthesis, brackets and quotation's which greatly increase the speed with which one can write lisp code -- all the while ensuring that the code in the buffer is /valid/ in terms of balanced parenthesis. Cheers -- Eric > > Thanks, > Nick > > PS. The ultimate *reference* for emacs lisp is the Emacs Lisp Reference > manual > > http://www.gnu.org/software/emacs/manual/html_node/elisp/index.html > > At some point in one's emacs-lisp programming life, it will be necessary > to refer to it - but it is very much a reference manual, not a tutorial.