最近有几次离开自己一直坐着的座位,去别的机房考试了。

于是猛然想起来要记一记Emacs的简洁配置了。

算是把NOIP残存的记忆再拾一点起来。。。。。。

update:

1:实测NOILinux不资磁透明度设定,已删去。

2.撤销键包含在cua-mode里,已删去。

3.编译指令里的%s应加上单引号,不然编译文件名带空格的cpp时会出问题。(NOIP有带空格的文件名吗?)

4.编译函数加了个save-buffer指令。考场配置加入自动运行。

附上一些解释

(global-set-key [f9] 'compile-file)
;;一键编译(弄Devcpp留下来的习惯)
(global-set-key (kbd "C-a") 'mark-whole-buffer)
;;全选(Like Windows)
(global-set-key (kbd "RET") 'newline-and-indent)
;;换行时自动缩进
(defun compile-file()(interactive)
(save-buffer)
(compile(format "g++ -o '%s' '%s' -lm -Wall"
(file-name-sans-extension(buffer-name))(buffer-name))))
;;编译指令(真TM难记)
(cua-mode t)
;;Windows的剪切复制粘贴键
(show-paren-mode t)
(global-linum-mode t)
;;括号匹配,显示行号
(setq kill-ring-max 200)
;;撤销的缓存开大点
(setq default-cursor-type 'bar)
;;把光标变成条,一块真的看不爽(用VIM的Dalao请无视)
(setq default-tab-width 4)
;;默认tab宽度
(setq c-default-style "awk")
;;缩进风格
(set-background-color "gray15")
(set-foreground-color "gray")
;;背景颜色(白的太亮了)前景颜色也要跟着改

Update:

蒟蒻突然发现,所有的指令,好像都可以在Emacs内部完成编辑,按M-x(Alt+x)然后输入即可(不用加最外层的括号了)。改完以后记得点击Options->Save Options保存配置,不然叉掉以后再打开就没了。

(一个例外:把setq改成set-variable

这样输入有一个好处,会有一个模糊查找的索引,按一下Tab即可。

如果记不清全部的拼写,可以敲比较确定的部分,不记得的用*或者-代替,然后直接在索引里找找就好啦。

妈妈再也不用担心我的记性啦!


我还是太弱了,少了这些一点都不适应。

Dalao们的都没十行吧。。。。。。

无聊版(F10一键运行,F8文本比较,F7一键测样例)

想玩一玩Lisp的大佬们可以自己随便百度一下qaq

(global-set-key[f9]'compile-file)
(global-set-key[f10]'autorun)
(global-set-key[f8]'differ)
(global-set-key[f7]'yeah)
(global-set-key(kbd"C-a")'mark-whole-buffer)
(global-set-key(kbd"C-q")'kill-this-buffer)
(global-set-key(kbd"RET")'newline-and-indent)
(defun compile-file()(interactive)
(save-buffer)
(compile (format "g++ -o '%s' '%s' -lm -Wall -O2 -std=c++11"
(file-name-sans-extension(buffer-name))(buffer-name))))
(defun autorun()(interactive)
(shell-command(format "time timeout 5 ./'%s'"
(file-name-sans-extension(buffer-name)))))
(defun differ(name)(interactive "sStandard Output Name:")
(shell-command(format "diff -b -B '%s.out' '%s'"
(file-name-sans-extension(buffer-name)) name)))
(defun yeah(name)(interactive "sSample Name:")
(shell-command(format "cp '%s.in' '%s.in'"
(file-name-sans-extension name )
(file-name-sans-extension(buffer-name))))
(autorun)
(shell-command(format "diff -b -B '%s.out' '%s'"
(file-name-sans-extension(buffer-name)) name)))
(cua-mode t)
(show-paren-mode t)
(global-linum-mode t)
(setq kill-ring-max 200)
(setq default-cursor-type 'bar)
(setq default-tab-width 4)
(setq c-default-style "awk")
(set-background-color "gray15")
(set-foreground-color "gray")

Emacs配置(考场必备)(Emacs)的更多相关文章

  1. emacs(考场+平时)配置方案

    考场配置: ;;在配置后面会对语句逐一解释的 (global-set-key (kbd "C-z") 'undo) (global-set-key (kbd "RET&q ...

  2. 存个emacs配置

    emacs配置 (global-set-key [f9] 'compile-file) (global-set-key [f10] 'gud-gdb) (global-set-key (kbd &qu ...

  3. emacs配置

    原配置 (global-set-key [f9] 'compile-file) (global-set-key [f10] 'gud-gdb) (global-set-key (kbd "C ...

  4. 小蒟蒻的垃圾emacs配置

    (global-set-key [f9] 'compile-file) (global-set-key [f10] 'gud-gdb) (global-set-key (kbd "C-s&q ...

  5. emacs配置&博客界面源代码

    emacs配置 如果想要考场简单配置也可以去下面看,需要别的考场配置可以自己在下面比较全的里面找 考试备忘录(有新的就会更的...) By Junlier (global-set-key [f9] ' ...

  6. 简单Emacs配置

    (global-set-key [f9] 'compile-file) (global-set-key [f10] 'gud-gdb) (global-set-key (kbd "C-s&q ...

  7. emacs配置eslint 语法检查.找不到node解决

    使用emacs配置eslint 当调用语法检查时报错 Suspicious state from syntax checker javascript-eslint: Checker javascrip ...

  8. emacs配置详解及C/C++IDE全功能配置演示(附配置文件)

    我的emacs插件下载地址: http://pan.baidu.com/share/link?shareid=4196458904&uk=3708780105 说明: 1.为什么使用emacs ...

  9. 一些有用的 Emacs 配置(窗口快速切换、一键透明效果、任意位置删除整行等)

    本篇文章记录的是一些有用的 Emacs 配置,有些是自己原创,有些是借鉴别人(能记起来出处的我放了链接). 规定:C 代表 Ctrl,M 代表 Alt. 1.设置一次跳跃 n 行的快捷键 按 C-M- ...

  10. emacs 配置

    个人的Emacs配置,环境是archlinux,参考了不少网上资料,因为太多,就不一一列举了,在这里感谢那些作者的辛苦经验劳动. (custom-set-variables ;; custom-set ...

随机推荐

  1. python中的变量,运算符

    范例: name = 'Crossin' myVar = 123 price = 5.99 visible = True “=”的作用是把右边的值赋予给左边的变量. python中有四种较为常见的数据 ...

  2. selenium2 python自动化测试实战(回归测试)

    selenium2 python自动化测试实战 最近接手商城的项目,针对后台测试,功能比较简单,但是流程比较繁多,涉及到前后台的交叉测试.在对整个项目进行第一轮测试完成之后,考虑以后回归测试任务比较重 ...

  3. location对象浅探

  4. php实现粘贴截图并完成上传功能

    <?php header("Access-Control-Allow-Origin:*"); $url = 'http://'.$_SERVER['HTTP_HOST']; ...

  5. python 两个list 求交集,并集,差集

    def diff(listA,listB): #求交集的两种方式 retA = [i for i in listA if i in listB] retB = list(set(listA).inte ...

  6. 图书管理系统【JavaWeb:部署开发环境、解决分类、图书、前台页面模块】

    前言 巩固Servlet+JSP开发模式,做一个比较完整的小项目. 成果图 该项目包含了两个部分,前台和后台. 前台用于显示 后台用于管理 该项目可分为5个模块来组成:分类模块,用户模块,图书模块,购 ...

  7. ABP框架源码学习之授权逻辑

    asp.net core的默认的几种授权方法参考"雨夜朦胧"的系列博客,这里要强调的是asp.net core mvc中的授权和asp.net mvc中的授权不一样,建议先看前面& ...

  8. mysql那些事

    ---恢复内容开始--- 登录 mysql登录 -u+用户 -p 密码 显示数据库 show databases; 使用某个数据库 use xxx; 显示数据库表 show tables 显示表结构 ...

  9. linux 获取CPU个数

    #include<stdio.h> #include<unistd.h> int main() { int cpu_num; cpu_num = sysconf(_SC_NPR ...

  10. Python 关于super 的 用法和原理(挖坑)

    一.前言 Python 面向对象中有继承这个概念,初学时感觉很牛逼,里面也有个super类,经常见到,最近做一些题才算是理解了.特地记录分享给后来研究的小伙伴,毕竟现在小学生都开始学了(滑稽脸) 二. ...