为不同的主要模式将字体锁面设置为不同的值
setting font-lock-face to different values for different major-modes
我正在尝试将 font-lock-comment-face
设置为 Blue
以用于 csharp-mode
,将 c++-mode
设置为 Red
这可能吗?
我现在正在使用:
(set-face-attribute 'font-lock-comment-face nil :foreground "#57a64a")
(set-face-attribute 'font-lock-keyword-face nil :foreground "#569cd6")
但这会全局设置值,而不仅仅是模式。
忘记添加我使用的版本:GNU Emacs 24.4.1 (i686-pc-mingw32) of 2014-10-24 on LEG570
在 Windows 8
哇!谢谢,我认为这是不可能的,但后来我发现了这个:http://www.emacswiki.org/emacs/FacesPerBuffer
看看 wiki 上的例子,似乎正是你需要的:
(make-face 'php-comment-face)
(set-face-foreground 'php-comment-face "LightGrey")
(add-hook 'php-mode-hook
(lambda ()
;; ...
(set (make-local-variable 'font-lock-comment-face)
'php-comment-face)
;; ...
感谢相关问题:Set Emacs defaut font face per-buffer/mode
UPD
要赢得 cc-mode 绑定,您应该将 (add-hook csharp-mode-hook ...
放在 (add-hook c-mode-hook ...
之后,如下所示:
(make-face 'c-comment-face)
(set-face-foreground 'c-comment-face "Red")
(add-hook 'c-mode-hook
(lambda ()
;; ...
(set (make-local-variable 'font-lock-comment-face)
'c-comment-face)))
(make-face 'cs-comment-face)
(set-face-foreground 'cs-comment-face "Blue")
(add-hook 'csharp-mode-hook
(lambda ()
;; ...
(set (make-local-variable 'font-lock-comment-face)
'cs-comment-face)))
如果你在单独的文件中有钩子代码,你应该在 c-mode 之后加载 csharp-mode 设置。别忘了 (remove-hook ...
试试这个。
我正在尝试将 font-lock-comment-face
设置为 Blue
以用于 csharp-mode
,将 c++-mode
设置为 Red
这可能吗?
我现在正在使用:
(set-face-attribute 'font-lock-comment-face nil :foreground "#57a64a")
(set-face-attribute 'font-lock-keyword-face nil :foreground "#569cd6")
但这会全局设置值,而不仅仅是模式。
忘记添加我使用的版本:GNU Emacs 24.4.1 (i686-pc-mingw32) of 2014-10-24 on LEG570 在 Windows 8
哇!谢谢,我认为这是不可能的,但后来我发现了这个:http://www.emacswiki.org/emacs/FacesPerBuffer
看看 wiki 上的例子,似乎正是你需要的:
(make-face 'php-comment-face)
(set-face-foreground 'php-comment-face "LightGrey")
(add-hook 'php-mode-hook
(lambda ()
;; ...
(set (make-local-variable 'font-lock-comment-face)
'php-comment-face)
;; ...
感谢相关问题:Set Emacs defaut font face per-buffer/mode
UPD
要赢得 cc-mode 绑定,您应该将 (add-hook csharp-mode-hook ...
放在 (add-hook c-mode-hook ...
之后,如下所示:
(make-face 'c-comment-face)
(set-face-foreground 'c-comment-face "Red")
(add-hook 'c-mode-hook
(lambda ()
;; ...
(set (make-local-variable 'font-lock-comment-face)
'c-comment-face)))
(make-face 'cs-comment-face)
(set-face-foreground 'cs-comment-face "Blue")
(add-hook 'csharp-mode-hook
(lambda ()
;; ...
(set (make-local-variable 'font-lock-comment-face)
'cs-comment-face)))
如果你在单独的文件中有钩子代码,你应该在 c-mode 之后加载 csharp-mode 设置。别忘了 (remove-hook ...
试试这个。