2012-05-16 34 views
3

我正在爲HTML/PHP模板寫一個次要模式。定製emacs模式和字體鎖定默認值

我有PHP關鍵字VAR

(defvar web-mode-php-keywords 
'("array" "as" "break" "catch" "continue") 
    "PHP keywords.") 

該變種用於字體鎖定這樣的:

(defvar web-mode-php-font-lock-keywords 
(list 
    (cons (concat "\\<\\(" (regexp-opt web-mode-php-keywords) "\\)\\>") 'web-mode-keyword-face) 
... 

我不設法找到一種方法,讓用戶添加關鍵字到web-mode-php-keywords名單在他.emacs

web-mode-php-font-lock-keywords依靠web-mode-php-keywords,並試圖改變web-mode-php-keywords在呼k沒有工作,因爲web-mode-php-font-lock-keywords已經內置

我想我錯過了什麼... (這是關係到eval-after-load?)

回答

2

我想你可以做(setq web-mode-php-keywords '("array" "as" "break" "catch" "continue" "mykeyword1" "mykeyword2"...))之前加載web模式的文件。

+0

我不想讓用戶添加沒有設置所有關鍵字列表的關鍵字。我這樣做:'(defconst web-mode-php-constants (eval-when-compile (regexp-opt (append(if(boundp'web-mode-php-constants)web-mode-php- ()「) 」PHP常量。「).... ....但也許存在一個更好的解決方案 – fxbois