2011-02-10 56 views
9

我有以下格式輸入...插入空間,直到

A   B   C 
D   E   F 
[] 

我用縮進相對於跳從一列到另一個。 但是有沒有辦法跳到列號?如果是這樣,有沒有辦法在該列之前插入空格?

回答

11

也許indent-to-column會爲你工作。

indent-to-column is an alias for `indent-to'. 

(indent-to-column COLUMN &optional MINIMUM) 

Indent from point with tabs and spaces until COLUMN is reached. 
Optional second argument MINIMUM says always do at least MINIMUM spaces 
even if that goes past COLUMN; by default, MINIMUM is zero. 

The return value is COLUMN. 

它進入的標籤太多,但你可以清理這些,當你正在與untabify命令來完成。

4

您可以使用move-to-tab-stop以及自定義tab-stop-list變量來表示您的列。您可以使用M-xedit-tab-stopsRET以可視方式配置此變量。

您還可以使用M-Xruler-modeRETM-Xruler-mode-toggle-show-tab-stopsRET查看您的製表位。

跳躍多列,move-to-tab-stop不前綴ARG重複,但如果你定義一個鍵盤宏它調用它,你就可以使用PREFX ARG重複了多次,您需要:

錄製宏:
F3的Mxmove-to-tab-stopRETF4

綁定至鍵暫時:
CXCKb(鍵)

或名稱,並請求Emacs爲您提供的elisp在init文件放:
CXCKñ(名)RET
Mxinsert-kbd-macroRET(名)RET
(global-set-key (kbd "key") 'name)(用於適當關鍵

您可以輸入一個數字前綴ARG任何的:
號碼
中號 -號碼
C-號碼

例如如果你已經綁定的宏然後M-4M-2會向前移動42製表位,所以會

indent-tabs-mode變量設置爲nil以防止插入標籤頁。

+0

我已經將它從`tab-to-tab-stop`更改爲更合適的`move-to-tab-stop`,它只在需要時插入新的空白區域。 – phils 2011-02-10 08:54:09