我正在用Emacs写一篇文档。如您所知,我正在使用的文本文件中有一些代码段。通常,当我打开此文件时,emacs将自动进入文本模式。编辑普通段落对我来说很好。但是对于那些代码段,我怎样才能将它们缩进gnu或linux样式,就像我在c-mode中所做的那样(在某些区域中通过c-set-style&& do Ctrl-Alt- \)?
实际上,顺便说一句,我可以通过调用M-x c-mode来将缓冲区转换为c模式,但是,我认为在文本模式下应该有很多优雅的方法。答案 0 :(得分:5)
orgmode设法通过将代码复制到临时缓冲区来进行编辑和编辑。格式化它,并在完成后更新已更改的文本。
如果切换到orgmode是一个选项,那么你这样做:
#+BEGIN_SRC emacs-lisp
(defun org-xor (a b)
"Exclusive or."
(if a (not b) b))
#+END_SRC
并使用C-c '
开始和完成编辑。
答案 1 :(得分:0)
您可以标记该区域,然后将视图缩小到该区域,更改模式,缩进,返回文本模式,然后再次返回到完整缓冲区。我现在忘记了确切的快捷方式,但转换成函数应该相当容易。