在Emacs 24+的開發版本中,通過ELPA使用jtags-mode
(版本0.96),我似乎無法以編程方式啓用次要模式(手動調用可以正常工作)。在我鑽研了我所嘗試過的血淋淋的細節以及我期望能夠工作的設置之前,最重要的是,在向Java鉤子變量添加jtags-mode
之後,當我第一次訪問Java源代碼時,我得到了Emacs的以下抱怨文件:如何自動啓用Emacs jtags-mode?
Toggling jtags-mode off; better pass an explicit argument. [2 times]
後徹底閱讀jtags-mode
設置的文檔,我希望下面就足矣:
;; Support for Java coding.
(autoload 'jtags-mode "jtags" "Toggle jtags mode." 1)
(defun java-setup()
(setq tab-stop-list '(4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 92)
indent-tabs-mode nil
tab-width 4
fill-column 96
c-comment-start-regexp "\\(@\\|/\\(/\\|[*][*]?\\)\\)"
jtags-display-menu-flag t
jtags-mode 1)
(java-mode-indent-annotations-setup))
(add-hook 'java-mode-hook 'java-setup)
(add-hook 'java-mode-hook 'jtags-mode)
...
但是,這導致了投訴上方。自從我試圖在java-setup()
函數中直接調用jtags-mode
,無濟於事。
如果沒有明顯或簡單的解決方案,我很樂意指出如何調試此問題。
是的,這是我嘗試過的許多事情之一,再次無濟於事。謝謝。 – pajato0 2012-04-22 20:19:15
嘗試清除'java-mode-hook'變量(或重新啓動Emacs)。如果你不這樣做,你仍然會調用添加到它的所有函數(包括'jtags-mode')。 – Lindydancer 2012-04-23 05:44:16
這是問題!謝謝,很好地完成。 – pajato0 2012-04-23 05:46:52