2017-05-24 30 views
1

我嘗試在Emacs中按順序運行幾個命令。沒有一個命令需要參數(縮進區域,未修復和刪除末尾空白)。我試圖按照舊的崗位上emacs-key-binding-for-multiple-commands並用以下解決方案上來:如何在emacs中運行多個命令?

(defun format-properly() 
    "Run `indent-region', `untabify' and `delete-trailing-whitespace' in sequence." 
    (interactive) 
    (indent-region) 
    (untabify) 
    (delete-trailing-whitespace)) 

(global-set-key (kbd "C-c a b c") 'format-properly) 

這給了我,當我嘗試運行它下面的錯誤信息:「錯誤數目的參數:(2 3) 0" 。

因爲我沒有Lisp的經驗,所以我不知道該怎麼做,並會對任何建議感到高興。 :)

謝謝! Julie

+3

當決定函數是否需要一個或多個參數時,通常需要查找函數並檢查幫助窗口或直接訪問源代碼。 'M-x描述函數RET縮進區域RET'告訴我們確實有參數 - 兩個強制的和一個額外的是可選的。閱讀每個函數的文檔字符串...您可能需要諸如'(when(region-active-p)...)'和'region-beginning'和'region-end'等函數...... To請直接訪問源代碼,鍵入'Mx find-function' – lawlist

+0

您是否還知道[keyboard macros](http://wikemacs.org/wiki/Keyboard_macros)?他們可能更容易設置。 – Ehvince

回答

相關問題