2009-07-03 53 views
4

我正在用Emacs寫一個文檔。如您所知,我正在使用的文本文件中有一些代碼段。通常,當我打開這個文件時,emacs會自動進入文本模式。對我來說編輯普通段落效果很好。但對於那些代碼段,我怎樣才能將它們縮進gnu或linux風格,就像我在c-mode中可以做的那樣(通過c-set-style & &在特定區域執行Ctrl-Alt- \)?使用Emacs,我如何縮進/格式化TXT文件中的代碼段?

順便說一句,實際上,我可以通過調用M-x c-mode來將緩衝區轉換爲c-mode,但是,我認爲在文本模式下應該有很多優雅的方法。

+0

爲M-x c-mode和M-x文本模式編寫快捷方式 – hiena 2009-07-03 15:19:19

回答

5

orgmode管理由複製代碼出到您編輯&格式,它臨時緩衝區,並更新更改的文本,當你做這樣做。

如果切換到org-模式是一種選擇,那你就去做這樣的:

#+BEGIN_SRC emacs-lisp 
(defun org-xor (a b) 
    "Exclusive or." 
    (if a (not b) b)) 
#+END_SRC 

,並開始和完成與C-c '編輯。編號:Emacswikilist of multiple modes

+0

謝謝pgs!我會試試這個。我不熟悉它,但是組織起來似乎很棒。有沒有其他方法以直接的方式來做到這一點?如標記一個區域並調用其中的某些函數或定製函數? – jcadam 2009-07-03 15:35:26

+1

您可能還可以通過運行多種主要模式和M-x縮進區域的方式之一來完成此操作。 – pgs 2009-07-04 03:06:04

0

您可以標記區域,然後將視圖縮小到區域,更改模式,縮進,返回到文本模式並再次返回到完整緩衝區。我現在忘記了確切的快捷鍵,但它應該很容易變成一個功能。

相關問題