emacs

Bash 和 Zsh 开启 vi-mode

℡╲_俬逩灬. 提交于 2020-04-29 12:03:10
Bash 和 Zsh 开启 vi-mode bash 有两种操作模式,分别是 emacs 和 vi 。 在 bash 中 set -o vi # 临时开启 vi 模式 vi ~/.bashrc # 在其中写入 `set -o vi` source ~/.bashrc # 刷新配置 在 zsh 中 vi ~/.zshr # 在 plugins 数组中添加 vi-mode source ~/.bashrc # 刷新配置 vi 编辑模式快捷键 http://www.catonmat.net/download/bash-vi-editing-mode-cheat-sheet.txt http://mywiki.wooledge.org/set-o-vi-emacs 进入命令行模式: ESC | 进入命令行模式 进入输入模式: i | 在光标前插入 a | 光标后插入 I | 在行的开头插入 A | 在行的结尾插入 c<mov. comm> | Change text of a movement command <mov. comm> (见下文). C | 剪切到行尾 (同 c$) cc 或 S | 剪切整行 (同 0c$) s | 删除光标处文本,并进入插入模式。 (同 c[SPACE]) r | 修改光标处文本 (没有离开命令样式) R | 进入替换模式 v | 先执行命令

Google's R Style Guide【转】

我的梦境 提交于 2020-04-28 18:51:45
Google's R Style Guide R is a high-level programming language used primarily for statistical computing and graphics. The goal of the R Programming Style Guide is to make our R code easier to read, share, and verify. The rules below were designed in collaboration with the entire R user community at Google. Summary: R Style Rules File Names : end in .R Identifiers : variable.name , FunctionName , kConstantName Line Length : maximum 80 characters Indentation : two spaces, no tabs Spacing Curly Braces : first on same line, last on own line Assignment : use <- , not = Semicolons : don't use them

关于 Emacs 中的变量你需要知道的事情

北城余情 提交于 2020-04-26 11:47:26
学习 Elisp 是如何处理变量的,以及如何在你的脚本与配置中使用它们。 GNU Emacs 是由 C 和 Emacs Lisp(Elisp,Lisp 编程语言的一种方言)写成,它是一个编辑器的同时,又碰巧是 Elisp 的沙盒。因此,理解 Elisp 中的一些基本编程概念会对你有一些帮助。 如果你是 Emacs 新手,请先阅读 Sacha Chua 的《 给 Emacs 新手的资源 》精品帖。本篇文章假定你熟悉常见的 Emacs 术语,并且能够阅读并求值 Elisp 代码的简单片段。最好你也听说过变量作用域的概念,知道它在其它编程语言中的作用。本篇文章中的示例假定你使用的是相对较新的 Emacs 版本( v.25 之后的版本 )。 Elisp 手册 包含了 Elisp 的方方面面,但它是写给那些有明确查找目标的人们的(它在这方面也做得相当棒)。但是很多人想要能够在更高的层次上解释 Elisp 概念的材料,同时将信息压缩成最精华的部分。本篇文章也正是我回应这种呼声的一次尝试,为读者描绘基础的大体轮廓。使他们能在配置中用上这些技巧,也让他们在手册中查询细节变得更容易。 全局变量 用 defcustom 定义的用户设置和用 defvar 或 defconst 定义的变量是全局的。使用 defcustom 或 defvar 声明变量的一个非常重要的原因是,当一个变量已经被绑定bind

IntelliJ IDEA 快捷键终极大全

不打扰是莪最后的温柔 提交于 2020-04-26 07:40:52
自动代码 常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码 。 例如要输入for(User user : users)只需输入user.for+Tab ; 再比如,要输入Date birthday = user.getBirthday()只需输入user.getBirthday().var+Tab即可。 代码标签输入完成后,按Tab,生成代码。 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate) fori/sout/psvm + Tab Ctrl+Alt+T 生成try catch 或者 Alt+enter CTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里 Ctrl + O 重写方法 Ctrl + I 实现方法 Ctr+shift+U 大小写转化 ALT+回车 导入包,自动修正 ALT+/ 代码提示 CTRL+J 自动代码 Ctrl+Shift+J,整合两行为一行 CTRL+空格 代码提示 CTRL+SHIFT+SPACE 自动补全代码 CTRL+ALT+L 格式化代码 CTRL+ALT+I 自动缩进 CTRL+ALT+O 优化导入的类和包 ALT+INSERT 生成代码(如GET,SET方法

IntelliJ IDEA 快捷键终极大全,速度收藏!

这一生的挚爱 提交于 2020-04-24 09:47:04
作者:满风 https://my.oschina.net/dyyweb/blog/494504 自动代码 常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码 。 例如要输入for(User user : users)只需输入user.for+Tab ; 再比如,要输入Date birthday = user.getBirthday()只需输入user.getBirthday().var+Tab即可。 代码标签输入完成后,按Tab,生成代码。 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate) fori/sout/psvm + Tab Ctrl+Alt+T 生成try catch 或者 Alt+enter CTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里 Ctrl + O 重写方法 Ctrl + I 实现方法 Ctr+shift+U 大小写转化 ALT+回车 导入包,自动修正 ALT+/ 代码提示 CTRL+J 自动代码 Ctrl+Shift+J,整合两行为一行 CTRL+空格 代码提示 CTRL+SHIFT+SPACE 自动补全代码 CTRL+ALT+L 格式化代码 CTRL+ALT+I

自创小插件让emacs支持工程项目

无人久伴 提交于 2020-04-22 06:05:28
在emacs下一直没有找到合适的工程项目类插件,于是自己写了一个。主要的痛点如下: 配置clang补全的时候需要指定搜索头文件的路径,没办法在.emacs文件里把所有的路径都加上,并且每次新创建一个工程项目的时候就要修改一次emacs配置文件实在是太痛苦了 由于开发机器不是linux,所以不能在本地编译,需要本地编辑完成后上传到开发机上编译(不想用tramp,因为不知到怎么在远程编辑的时候配置补全,估计就算折腾成功后也会很慢;没法mount远端目录到本地,因为网速太慢;不想在远程shell里面使用emacs,那个神奇的平台没有编译好的emacs包) 插件的主要功能: C-x p 打开一个项目,项目的定义文件存放在一个特定目录下,用lisp来描述加载这个项目的时候需要执行的初始化操作。 提供函数 proj-save-rsync 用来保存当前所有的 buffer 并调用一个脚本讲本地的源码上传的远程开发机器。 插件安装方法: 复制下面的代码到 .emacs 中: (defun proj-save-rsync ( ) "Save buffers and do a command." (save-some-buffers) (shell-command proj-rsync-script ) (interactive) ) (defun proj-load (arg)

emacs

十年热恋 提交于 2020-04-19 21:43:02
1、 emacs源码安装 https://www.cnblogs.com/eat-and-die/p/10309681.html 来源: oschina 链接: https://my.oschina.net/yunjie/blog/3274705

Emacs窗口弹出式代码补全之ycmd

拟墨画扇 提交于 2020-04-12 20:06:54
1.下载ycmd server端 # git clone https://github.com/ycm-core/ycmd.git # git submodule update --init --recursive 2.配置支持的语言 # ./build.py --all //支持所有go语言报错,暂时无解 # ./build.py --clang-completer # --java-completer --system-libclang 3.安装emacs需要的插件 M-X package-install RET ycmd company-ycmd flycheck-ycmd 4.配置 ;;YCMD (require 'ycmd) ;;(add-hook 'c++-mode-hook 'company-mode) (add-hook 'c++-mode-hook 'ycmd-mode) ;;下载ycmd的路径 (set-variable 'ycmd-server-command '("python3" "/Users/xxx/github/ycmd")) (set-variable 'ycmd-global-config "/Users/xxx/github/ycmd/.ycm_extra_conf.py") (require 'company-ycmd) (company

Emacs镜像

可紊 提交于 2020-04-12 20:05:28
ELPA 点赞 收藏 分享 文章举报 慢慢的燃烧 发布了760 篇原创文章 · 获赞 468 · 访问量 249万+ 他的留言板 关注 来源: oschina 链接: https://my.oschina.net/u/4382774/blog/3231214

Mac上emacs gpg: 无法检查签名:没有公钥

こ雲淡風輕ζ 提交于 2020-04-12 19:47:20
报错: gpg: 无法检查签名:没有公钥 解决: 1.无法自动更新gnu elpa公钥,需要到官网手动下载新的文件 http://elpa.gnu.org/packages/gnu-elpa-keyring-update.html 2.emacs直接打开tar包 # emacs gnu-elpa-keyring-update-2019.3.tar //更新gnu elpa公钥 # M-x package-install-from-buffer 点赞 收藏 分享 文章举报 慢慢的燃烧 发布了760 篇原创文章 · 获赞 468 · 访问量 249万+ 他的留言板 关注 来源: oschina 链接: https://my.oschina.net/u/4300655/blog/3231215