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

于是猛然想起来要记一记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. 详解CSS display:inline-block的应用

    阅读目录 基础知识 inline-block的问题 inline-block的应用 总结 本文详细描述了display:inline-block的基础知识,产生的问题和解决方法以及其常见的应用场景,加 ...

  2. PHP curl 常用操作

    网页内容替换 $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, "http://www.baidu.com"); //执行后 ...

  3. iOS 8 UIAlertController 和 UIAlertAction

    将alertView 和 actionSheet 封装在UIAlertController 里面化整为零,使开发者更便利 当我们一味的追求高内聚,低耦合的时候,伟大的苹果反其道而行之,这也告诉了我们一 ...

  4. 网卡name-eth1如何修改为eth0

    正常来说,Linux在识别网卡时第一张会是eth0,第二张才是eth1. 有时候我们使用虚拟机克隆技术后网卡的信息就会改变,新克隆出来的虚拟主机网卡名字可能变为eth1.无论我们怎么修改都无法改变,这 ...

  5. prop&attr区别和用法,以多选框为例

    1.比较 相同点 : prop和attr作为jquery的方法都可以获取属性值; 不同点 : (1) 对于HTML元素本身就带有的固有属性,使用prop方法, attr获取checkbox的check ...

  6. shell脚本基础1 概述及变量

    shell概述:在linux内核与用户之间的解释器程序通常指/bin/bash负责指向内核翻译及传达用户/程序指令相当于操作系统的"外壳" shell的使用方式:交互式--命令行: ...

  7. MinGW下简单编译FFmpeg

    2009.03.21补充:ffmpeg-0.5正式发布,地址为:[url]http://www.ffmpeg.org/releases/ffmpeg-0.5.tar.bz2[/url].修改了第7步, ...

  8. 提升R代码运算效率的11个实用方法——并行、效率

    转载于36大数据,原文作者:Selva Prabhakaran  译者:fibears 众所周知,当我们利用R语言处理大型数据集时,for循环语句的运算效率非常低.有许多种方法可以提升你的代码运算效率 ...

  9. 如何利用Plxmon工具进行在线烧录PCI卡的EEPROM

    PLXMON是PLX公司提供的用于在线烧录PCI卡的EEPROM的工具. 烧录EEPROM有两种方式,一是比较传统的方法,即采用烧录机进行烧录.采用这种方式时,在调试过程中EEPROM需采用插件式封装 ...

  10. HI3531的DDR3配置流程

    DDR3 初始化配置流程 系统上电之后,必须先完成DDR3 SDRAM 的初始化操作,系统才能访问DDR3 SDRAM.在进行初始化之前需要注意以下几点: 对DDR3 SDRAM 进行上电操作时,需要 ...