This is the official manual for the latest Org-mode release.

Table of Contents

Next: , Previous: Structure of code blocks, Up: Working With Source Code


14.2 Editing source code

Use C-c ' to edit the current code block. This brings up a language major-mode edit buffer containing the body of the code block. Manually saving this buffer with <C-x C-s> will write the contents back to the Org buffer. You can also set org-edit-src-auto-save-idle-delay to save the base buffer after some idle delay, or org-edit-src-turn-on-auto-save to auto-save this buffer into a separate file using auto-save-mode. Use C-c ' again to exit.

The org-src-mode minor mode will be active in the edit buffer. The following variables can be used to configure the behavior of the edit buffer. See also the customization group org-edit-structure for further configuration options.

org-src-lang-modes
If an Emacs major-mode named <lang>-mode exists, where <lang> is the language named in the header line of the code block, then the edit buffer will be placed in that major-mode. This variable can be used to map arbitrary language names to existing major modes.
org-src-window-setup
Controls the way Emacs windows are rearranged when the edit buffer is created.
org-src-preserve-indentation
This variable is especially useful for tangling languages such as Python, in which whitespace indentation in the output is critical.
org-src-ask-before-returning-to-edit-buffer
By default, Org will ask before returning to an open edit buffer. Set this variable to nil to switch without asking.

To turn on native code fontification in the Org buffer, configure the variable org-src-fontify-natively.