From mboxrd@z Thu Jan 1 00:00:00 1970 From: Omid Subject: Re: Behavior of Org mode Babel code snippets with respect to M-q (fill-paragraph) and C-/ (undo) Date: Wed, 05 Feb 2014 18:02:51 -0500 Message-ID: <52F2C31B.40208@gmail.com> References: <525DE996.2000408@gmail.com> <52F2A1D2.4030802@gmail.com> <87fvnxutut.fsf@alphaville.bos.redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54598) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WBBUk-0006Cy-8i for emacs-orgmode@gnu.org; Wed, 05 Feb 2014 18:03:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WBBUb-0006Go-OR for emacs-orgmode@gnu.org; Wed, 05 Feb 2014 18:03:02 -0500 Received: from mail-yh0-x231.google.com ([2607:f8b0:4002:c01::231]:40512) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WBBUb-0006Gh-Jz for emacs-orgmode@gnu.org; Wed, 05 Feb 2014 18:02:53 -0500 Received: by mail-yh0-f49.google.com with SMTP id t59so1219310yho.8 for ; Wed, 05 Feb 2014 15:02:53 -0800 (PST) Received: from [192.168.1.100] (dhcpd2d254.math.fsu.edu. [128.186.2.254]) by mx.google.com with ESMTPSA id w8sm101135817yhg.8.2014.02.05.15.02.52 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 05 Feb 2014 15:02:52 -0800 (PST) In-Reply-To: <87fvnxutut.fsf@alphaville.bos.redhat.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Hello Nick, Thanks for your quick reply. The variable org-edit-src-content-indentation does indeed have to do with the indentation I was referring to. But it is relative. According to the documentation, it sets the "Indentation for the content of a source code block. This should be the number of spaces added to the indentation of the #+begin line in order to compute the indentation of the block content after editing it with M-x org-edit-src-code. Has no effect if `org-src-preserve-indentation' is non-nil." I wonder if one can set it to be zero as an absolute value, meaning that if the a line of code in the source block starts at column n of the buffer, it is left at column n after M-q. Regarding the behavior you observe, as I said I get that too from time to time. In fact, doing M-q on my own example in a fresh Org mode buffer, I now get what you get: #+BEGIN_SRC f90 :results verbatim :exports both program main ! This is a very very very very very very very very very very very very very very very very long comment line. print *, "Hello, World!" end program main #+END_SRC I don't have any special settings for the f90 mode in my .emacs. In fact, I have observed the same behavior for other languages too when edited in an Org source block. The "destructive" nature of this behavior is very special (C-/ (undo) doesn't work). Many a times, I have tried refilling a line of comments and ended up with a huge mix of code and comment that was impossible to undo (at least to the best of my knowledge) and I had to either revert the change if I had the file under version control, go to an auto backup file, or painfully and manually separate the code and comments to get back the original code block. Omid On 02/05/2014 04:34 PM, Nick Dokos wrote: > Omid writes: > >> Hello, >> >> I am using Org-mode version 8.2.5g (8.2.5g-elpa) in GNU Emacs 24.3.1. >> I have two questions about the behavior of the fantastic Org >> mode+Babel with respect to code and comments: >> >> Here is a minimal example: >> >> #+BEGIN_SRC f90 :results verbatim :exports both >> program main >> ! This is a very very very very very very very very very very very very >> very very very very long comment line. >> print *, "Hello, World!" >> end program main >> #+END_SRC >> >> Below is the code snippet after M-q (fill-paragraph) on the comment >> line. The comment line has been refilled (intended behavior) but all >> lines have been indented. This may also be an intended behavior; but >> >> FIRST QUESTION: Is there a way to disable this indentation upon M-Q in >> Org Babel code snippets? >> > > Try setting org-edit-src-content-indentation to 0. I'm not sure that > it is going to work, but (based on rather flimsy numerological evidence, > namely that its default value is 2 as is the indent below) it might. > >> #+BEGIN_SRC f90 :results verbatim :exports both >> program main >> ! This is a very very very very very very very very very very very very >> ! very very very very long comment line. >> print *, "Hello, World!" >> end program main >> #+END_SRC >> > > BTW, I don't get this behavior but I don't use f90 mode, so I'm not sure > whether there is some setup I'm missing. I get (with > org-edit-src-content-indentation set to 0): > > #+BEGIN_SRC f90 :results verbatim :exports both > program main ! This is a very very very very very very very very very > very very very very very very very long comment line. print *, > "Hello, World!" end program main > #+END_SRC > > Nick > > >