设置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. Cesium区分单击【LEFT_CLICK】和双击事件【LEFT_DOUBLE_CLICK】

    问题描述 在cesium中,用户鼠标左键双击视图或Entity时,实际触发的是两次click和一次dbclick事件,非常影响代码设计,本文记录了如何区分单击[LEFT_CLICK]和双击事件[LEF ...

  2. ABP入门教程11 - 展示层实现增删改查-视图

    点这里进入ABP入门教程目录 创建目录 在展示层(即JD.CRS.Web.Mvc)的Views下新建文件夹Course //用以存放Course相关视图 创建视图 在JD.CRS.Web.Mvc/Vi ...

  3. MongoDB 不在开源了,使用 Homebrew 安装只能玩社区版了

    使用了大半年的 mongodb ,最近在公司的新项目中应用,在 mac 上安装 mongodb 时发现始终安装不了,一直在报下面这样的错误: brew install mongodb 升级 brew  ...

  4. (办公)访问其他系统接口httpClient,异步访问

    访问其他系统接口httpClient,但是都是同步的,同步意味当前线程是阻塞的,只有本次请求完成后才能进行下一次请求;异步意味着所有的请求可以同时塞入缓冲区,不阻塞当前的线程; httpClient请 ...

  5. 0day2安全——笔记4(修改临界变量)

    第二章 修改临界变量 #include <stdio.h> #include <string.h> #define PASSWORD "1234567" i ...

  6. LeetCode 1255 得分最高的单词集合 Maximum Score Words Formed by Letters

    地址 https://leetcode-cn.com/problems/maximum-score-words-formed-by-letters/ 题目描述你将会得到一份单词表 words,一个字母 ...

  7. python将图片旋转,颠倒,修改尺寸

    直接上代码,根据需求注释选择相应修改 from PIL import Image import os import os.path rootdir = r'G:\jianfeng\project\ru ...

  8. 不用输入ssh -i命令行即可携带pem文件快速登录的方法

    如果要登录的服务器只允许pem认证 每次输入ssh -i xxxx.pem 用户@ip 地址  就很烦 这里有个一劳永逸的方法: 进入到自己的用户目录,例如/home/me 把pem文件放在当前目录 ...

  9. Ajax和跨域请求

    Ajax 一.概述 Web 程序最初的目的就是将信息(数据)放到公共的服务器,让所有网络用户都可以通过浏览器访问. 在次之前,我们可以通过以下几种方式让浏览器发出对服务端的请求,获取服务端的数据: 地 ...

  10. keras使用多GPU并行训练模型 | keras multi gpu training

    本文首发于个人博客https://kezunlin.me/post/95370db7/,欢迎阅读最新内容! keras multi gpu training Guide multi_gpu_model ...