[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[BUG] defaults make it hard to edit Elisp blocks in org buffers
From: |
gerard . vermeulen |
Subject: |
[BUG] defaults make it hard to edit Elisp blocks in org buffers |
Date: |
Wed, 17 Jan 2024 18:34:20 +0000 |
* Why I do (setopt org-src-preserve-indention t)
Sometimes, I want to do small Elisp edits without calling
org-edit-source-code. Below, I describe a long standing bug
(several years) that is also present in main.
I use smartparens, but it reproduces also in a clean
environment (minimal init.el) using main.
#+begin_src emacs-lisp :results silent
(setopt org-edit-src-content-indentation 4 ;; to amplify the effect
org-src-preserve-indentation nil)
#+end_src
Place point after the first open parenthesis below and type return.
#+begin_src emacs-lisp
(())
#+end_src
This moves the code 4 spaces to the right. Place point after the first
open parenthesis of the lowest line below and type return.
#+begin_src emacs-lisp
(
(
))
#+end_src
This moves the code again 4 spaces to the right. It does not matter
whether the the parentheses contain for instance a function definition.
* Therefore, I work with those settings breaking the default.
#+begin_src emacs-lisp :results silent
(setopt org-edit-src-content-indentation 2
org-src-preserve-indentation t)
#+end_src
Place point after the first open parenthesis below and type return.
#+begin_src emacs-lisp
(())
#+end_src
The parentheses remain left-shifted. Place point after the first
open parenthis of the lowest line below and type return.
#+begin_src emacs-lisp
(
())
#+end_src
Again, the parentheses remain left-shifted.
#+begin_src emacs-lisp
(
(
))
#+end_src
The parentheses remain left-shifted. I prefer this over the default.
I have only seen it with Elisp blocks.
Regards -- Gerard
- [BUG] defaults make it hard to edit Elisp blocks in org buffers,
gerard . vermeulen <=