设置emacs的外观

emacs的外观包括文本区的外观,辅助区的外观,状态行的外观,光标的外观等,

每个外观都有名字,并且都有下面属性:

  • Font Family: 字体名字
  • Font Foundry: ?
  • Width: 字体宽度
  • Height: 字体宽度
  • Weight: 字体重
  • Slant: 斜体
  • Underline: 下划线
  • Overline: 上划线
  • Strike-through: 透过线
  • Box around text: ?
  • Inverse-video: ?
  • Foreground: 前景色
  • Background: 背景色
  • Stipple: ?
  • Inherit: 继承别的外观

如何设置外观呢?emacs通过【Face】的东西来设置

face的定义:face可以定义字体,颜色等。大多数主编辑模式(major mode)分配各种face给函数名,注释,变量,关键字等,通过【Font Lock mode】。【Font Lock mode】的说明在后面。

Emacs can display text in several different styles, called faces. Each face can specify various face attributes, such as the font, height, weight, slant, foreground and background color, and underlining or overlining. Most major modes assign faces to the text automatically, via Font Lock mode.

注意:face里并不设定所有属性,没有被设定的属性就使用叫default的face的属性。比如face:popup-face,它只设定了前景色和背景色属性,所有它的其他属性的值就是face:default的相应属性的值。

这个概念非常重要,所以当改变了face:default里属性的值的话,就会影响所有face

list-faces-display :查看系统里有所有face

list-colors-display :查看系统里所有的颜色的名字和RGB值

set-face-foreground :改变指定face里的前景色(先输入要改变的face的名字,然后再输入颜色的名字)

set-face-background:改变指定face里的背景色(先输入要改变的face的名字,然后再输入颜色的名字)

ctrl h v 变量A:查看变量A的作用

Font Lock mode:

Font Lock mode is a minor mode, always local to a particular buffer, which assigns faces to (or fontifies) the text in the buffer. Each buffer's major mode tells Font Lock mode which text to fontify; for instance, programming language modes fontify syntactically relevant constructs like comments, strings, and function names.

Font Lock mode is enabled by default in major modes that support it. To toggle it in the current buffer, type M-x font-lock-mode.

font-lock-mode :作用在当前缓冲区

global-font-lock-mode:作用在当前缓冲区

Font Lock mode uses several specifically named faces to do its job, including font-lock-string-facefont-lock-comment-face, and others. The easiest way to find them all is to use

M-x customize-group 回车 font-lock-faces 回车. You can then use that customization buffer to customize the appearance of these faces.

从下图可以看出来:

1,关键字(font lock keyward face)后面是紫色,所以右面代码里关键字(template,protected,try等)部分全是紫色

2,函数名(font lock function name face)后面是蓝色,所以右面代码里函数名(insert,get_node等)部分全是蓝色

如何在上面的画面操作请参考Changing a Variable

注意:当通过用emacs改变变量的值后,会自动在.emacs里插入下面的代码。

(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)

注意:当通过用emacs改变face的设定后,会自动在.emacs里插入下面的代码。

;;设置face:default的背景色为黑色,前景色为白色,字体大小为218
(custom-set-faces
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)

注意:custom-set-facescustom-set-variables在.emacs里只能出现一次。

c/c++ 学习互助QQ群:877684253

本人微信:xiaoshitou5854

emacs 设置emacs的外观的更多相关文章

  1. emacs设置了单例模式后无法设定文件关联解决办法

    emacs设置单例模式的本质就是使用下列参数启动: C:\emacs-24.5\bin\emacsclientw.exe --no-wait --alternate-editor="C:\e ...

  2. emacs设置字体

    * C-h f set-default-font set-default-font is an alias for `set-frame-font' in `frame.el'. (set-defau ...

  3. Emacs: 设置窗口标题格式

    Emacs默认的窗口标题常常比较简单,例如我的默认标题是"emacs@ubuntu".如果想要在标题中显示更多的信息,我们可以对它进行一些设置.由于Emacs的可扩展性,这种修改实 ...

  4. emacs - GNU Emacs

    总览 (SYNOPSIS) emacs [ command-line switches ] [ files ... ] 描述 (DESCRIPTION) GNU Emacs 是 Emacs 的 一个 ...

  5. emacs 配置.emacs

    emacs 配置.emacs (require 'package) (package-initialize) (add-to-list'package-archives '("melpa&q ...

  6. iOS 11开发教程(十九)iOS11应用视图美化按钮之设置按钮的外观

    iOS 11开发教程(十九)iOS11应用视图美化按钮之设置按钮的外观 美化按钮说白了就是对按钮的属性进行设置,设置按钮的属性有两种方法:一种是使用编辑界面中的属性检查器:另一种是使用代码进行设置.以 ...

  7. 设置emacs启动窗口的两种方法

    1. 设置位置和大小 ;;设置窗口位置为屏库左上角(0,0) (set-frame-position (selected-frame) 0 0) ;;设置宽和高 (set-frame-width (s ...

  8. emacs设置tab缩进

    这两天使用Emacs自带的JavaScriptMode时,发现与其它编辑器下缩进不同,而且用emacs重新缩进对齐后,再用其它的编辑器打时缩进却乱掉了.分析应该是Tab缩进的问题,在.emacs中增加 ...

  9. mac系统下为emacs设置中文字体,解决乱码问题

    近期换了个系统,如今用mac系统. 当打开emacs后,中文支持的不是非常好.有的地方能显示.在.el文件的凝视里显示为口口口口口口口口这种框.例如以下图所看到的 找了半天.是由于中文字体的问题.仅仅 ...

随机推荐

  1. 在标准实体特殊消息上注册插件及Dynamics CRM 2015中计算字段的使用

    关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复157或者20151005可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 前面的 插件系列博客教程 讲述了 ...

  2. MySQL问题记录——2003-Can't connect to MySQL server on 'localhost'(10038)

    MySQL问题记录——2003-Can't connect to MySQL server on 'localhost'(10038) 摘要:本文主要记录了连接到MySQL数据库时出现的问题以及解决办 ...

  3. sshd 启动后 出现:Could not load host key: /etc/ssh/ssh_host_rsa_key

    今天在启动sshd时,出现了如下问题,导致客户端不能成功连接服务端,不能建立ssh连接: 有两个提示 Could not load host key: /etc/ssh/ssh_host_rsa_ke ...

  4. Shell—文件内容操作

    读取文件的每一行内容并输出 #!/bin/bash # 方法1 while read line do echo $line done < a.txt # 方法2 cat a.txt | whil ...

  5. Redis—简介与安装

    Redis 简介 Redis 安装 Redis 配置文件 # Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程.daemonize yes # 当Redis以守护进 ...

  6. Deepin nginx lumen配置

    正常安装 sudo apt install nginxsudo apt install php-fpm 启动后将 /etc/nginx/sites-enabled/default 配置文件 copy一 ...

  7. Spring汇总

    如今做Java尤其是web几乎是避免不了和Spring打交道了,但是Spring是这样的大而全,新鲜名词不断产生,学起来给人一种凌乱的感觉,我就在这里总结一下,理顺头绪. Spring Spring ...

  8. AcWing 28. 在O(1)时间删除链表结点

    地址 https://www.acwing.com/problem/content/description/85/ 题目描述给定单向链表的一个节点指针,定义一个函数在O(1)时间删除该结点. 假设链表 ...

  9. WPF 动态生成对象属性 (dynamic)

    原文:WPF 动态生成对象属性 (dynamic) 项目中列行的数据 都需要动态生成 所以考虑到对象绑定  可需要一个动态生成属性的意思 缺点 加载速度会慢 很明显的慢 解决办法 尽量减轻动态属性的量 ...

  10. WIN10X64LTSC2019中度精简版by双心

    WIN10X64LTSC2019中度精简版by双心https://www.cnblogs.com/liuzhaoyzz/p/11295032.html 一.前言:关于LTSC中度精简版的说明 一个MM ...