emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [BUG] in last org in indentation of source blocks


From: Titus von der Malsburg
Subject: Re: [O] [BUG] in last org in indentation of source blocks
Date: Thu, 28 May 2015 10:02:57 -0700

On 2015-05-28 Thu 04:49, Rainer M Krug wrote:
> I reralised this morning that there eems to be a bug introduced in one
> of the last commits which causes repeted editing of source blocks to
> indent more each time the are edited (C-').
>
> Original:
> ,----
> | #+begin_src sh
> | echo 2
> | #+end_src
> `----
>
> After C-' and back again
> ,----
> | #+begin_src sh
> |   echo 2
> | #+end_src
> `----
>
> After second C-' and back
> ,----
> | #+begin_src sh
> |     echo 2
> | #+end_src
> `----
>
> When C-', the indirect buffer has the same indentation as the source
> block, but when switching back, two more spaces are added.

I can’t reproduce the second indent but I think it’s a bug that there is
any indentation at all.

The documentation of `org-edit-special' (C-x ') says:

  Call a special editor for the element at point. …

No mention of indentation or other reformatting of my code.

The same goes for `org-edit-src-exit' (C-c C-c) which says:

  Kill current sub-editing buffer and return to source buffer.

The edit-in-buffer feature should not touch the indentation.  If the
syntax of the language is sensitive to indentation (e.g. Python) this
can break the code.  Example:

#+BEGIN_SRC python :results output
  print "test"
#+END_SRC

is invalid Python syntax.

Also having one function perform two very different actions (edit code
in separate buffer *and* reformat the code) is poor design.  At least in
this special case.  When I open the code in a separate buffer but then
decide not to change it (C-c C-c), I'll end up with extra indentation
and this will create unnecessary changes when I commit the file in git.

  Titus

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]