Next: Exporting code blocks, 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. Saving this buffer will write the new contents back to the Org buffer. 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.