Michael Dauer <mick.da...@gmail.com> writes:
> Hi, > > #+begin_src elisp :results output > (aaa > bbb ( > #x09#x09#x09ccc)) > ccc > #+end_src > looks like this in the editor > (aaa > bbb ( > ccc)) > ccc > > Line 1-3 were indented automatically by pressing Tab. In line 4 I inserted 6 > spaces manually. This is what I would expect to find in line 3 too. But at my > surprise there are 3 tab chars in line 3. Line 2 was indented automatically > with 1 space. > > 1. So why is line 3 indented with 3 tabs instead of 6 spaces? > 2. How can I prevent this? > 3. Why does a tab have a width between 1 and 2 spaces? > 4. How can I prevent this misalignment? > >I don't understand what org-block face has fixed-pitch. > > Org mode version 9.4.6 (9.4.6-gcf30f7 > (setq-default tab-width 2) > (setq org-src-fontify-natively t > org-src-window-setup 'current-window > org-src-strip-leading-and-trailing-blank-lines t > org-src-preserve-indentation t > org-src-tab-acts-natively t) > Are you editing the source block using org-edit-special (C-c ,)? If not, then you are not editing the source block with the correct syntax for elisp and this will throw out auto formatting. Your example block is invalid elisp code which is #+begin_src elisp :results output (aaa bbb ( #x09#x09#x09ccc)) ccc #+end_src but I don't see how you can get any output as it is not valid elisp. It is not clear to me what you are trying to do. You have 3 tab characters (#x09), so don't see why you would expect them to be spaces? If what you want is for hitting tab to insert only spaces, have a look at the variable indent-tab-mode. You can, for example, do (setq-default indent-tab-mode nil) to force use of spaces instead of tabs. However, be careful about doing this globally if you also want to contribute to projects where tabs are used as this will cause havoc with diffs and git. You can also set this on a per language (via mode hooks) or per project (via local variables). To get a better feel for how language modes align code etc, you really need to make sure the code you are trying to align is syntactically valid and you are using the correct coding style for the language. -- Tim Cross