Emacs编辑器基本操作笔记

Emacs编辑器基本操作笔记

对基本操作做下笔记

安装

  • 首先下载源码
  • 下载解压, 然后./configure
  • ./configure时出现如下的错误
    configure: error: The following required libraries were not found:
    libXpm libjpeg libpng libgif/libungif libtiff
    Maybe some development libraries/packages are missing?
    If you don’t want to link with them give
    –with-xpm=no –with-jpeg=no –with-png=no –with-gif=no –with-tiff=no
    as options to configure
    这是需要安装图形库,
    sudo yum install libjpeg libjpeg-devel
    sudo yum install libungif libungif-devel
    sudo yum install libtiff libtiff-devel
    sudo yum install libXpm-devel
    最后用sudo yum install libpng-devel, 安装libpng时,显示已经安装了, 但是./configure 就是找不到,不知何故, 无奈之下, 只好用./configure –with-png=no

  • 然后make

  • 最后 sudo make install

按键说明

C-<chr>表示按住Ctrl键和<chr>键,其中C表示Ctrl

M-<chr>表示按Meta键和<chr>键,键盘上没有Meta键的话,以Alt键代替

SPC表示空格键

RET回车

屏幕浏览

C-v 移动到下一页

M-v 移动到上一页

扫描二维码关注公众号,回复: 2617410 查看本文章

在两页之间有两行的重叠

C-l 把光标所在行移动到屏幕中央,再按则移至顶部,再按移至底部

光标移动

C-p 上一行(Previous line)

C-b 向左移动(Backward)

C-f 向右移动(forward)

C-n 下一行 (Next line)

M-f 向右移动一个单词

M-b 向左边移动一个单词

C-a 移动到行首 M-a移动到句首

C-e 移动到行末

M-e 移动到句尾

文本删除(剪切)与复制

C-d 删除光标后一个字

M-d 删除光标后一个单词

M-Backspace 删除光标前一个单词

C-k 除从光标到行末

M-k 删除一句话

C-w 删除一段文本. C-<SPC>然后移动光标,从C-<SPC>开始的地方到光标所在的地方会高亮显示,然后按C-<SPC>, 则选中的一段将被删除

C-u #数字# C-<chr> 重复执行#数字#次操作,如按下C-u 100 C-f向后跳转100个字符

C-y粘贴。Emacs中,把删掉的内容在别处插入称为”yanking(拖拽)”,删除和yanking,实际也就是剪切-粘贴。如果要粘贴前几次剪切的内容,可以再按C-y后,按M-y

M-w 复制。通过按下C-<SPC>,然后移动光标选中文本,之后按下M-w复制

撤销

C-x u 撤销 【注意,不是C-x C-uC-x C-u表示转换成大写,在撤销快捷键中,按下C-x后记得要松开Ctrl再按u
C-/ 也是撤销,由于C-x u按着很难受,容易按成C-x C-u, 幸好有另一个等效的快捷键C-/C-/效果也是撤销,按起来更方便

undo tree是一个支持撤销还原的插件,C-x u 进入该模式,q退出,通过移动快捷键(C-f, C-b, C-p, C-n)选择撤销还原的节点

查找替换

C-s向前查找. C-s后,输入要查找的关键词,回车,所有关键词会高亮显示出来,再按一次C-s时光标自动跳到关键词出现的下个位置
C-r向后查找
M-x replace-string 全部替换
M-x query-replace 询问替换

文件

C-x C-f查找打开一个文件,输入该命令后回车,然后输入文件名,如果文件存在就直接打开,如果文件不存在,则新建一个文件

C-x C-s保存文件

缓冲区buffer

当打开另一个文件时,前一个文件还存在于Emacs中。Emacs把一个文件存于一个“buffer”中。

C-x C-b 列出所有buffer
C-x b 切换buffer,输入命令回车,再输入buffer名进行切换
C-x k 关闭(kill)当前buffer
M-x shell 打开一个shell buffer
在一个文件中修改后,打开另一个文件,前一个文件中的修改还留在Emacs中,但是没有保存。可以通过C-x s来保存修改过但没有保存的buffer

C-x s 对于每个修改过,但没有保存的buffer,依次询问是否保存

多窗口

C-x 2垂向分割为两个窗口

C-x 3纵向分割为两个窗口

C-x o切换窗口

C-x 1只保留光标在的那个窗口,其他的都关闭

C-x 4 C-f #文件名#在新窗口打开#文件名#,同时光标转到新窗口

C-x 4 0关闭当前窗口

在Emacs编辑器中使用中文输入法

C-\ 选择输入法,例如chinese-py
C-x RET C-\重新选择输入法

Emacs自带的中文输入法不太友好,这里推荐一个大神做的输入法(github传送门),下载之后打开,在makefile文件中更改安装路径,例如将PREFIX改成$$HOME/.emacs.d,把ELISPDIR改成$(PREFIX)/site-lisp/eim,然后make, make install即可。随后修改~/.emacs,加入如下几行(在linux以外的系统可能需要把setq eim-use-tooltip nil面的注释删掉)

(add-to-list 'load-path "~/.emacs.d/site-lisp/eim")
(autoload 'eim-use-package "eim" "Another emacs input method")
;; Tooltip 暂时还不好用
;;(setq eim-use-tooltip nil)

(register-input-method
 "eim-wb" "euc-cn" 'eim-use-package
 "五笔" "汉字五笔输入法" "wb.txt")
(register-input-method
 "eim-py" "euc-cn" 'eim-use-package
 "拼音" "汉字拼音输入法" "py.txt")

;; 用 ; 暂时输入英文
(require 'eim-extra)
(global-set-key ";" 'eim-insert-ascii)

即可。然后,打开emacs,输入命令C-\, 回车,输入eim- ,按TAB,提示选择eim-py或者eim-wb,选择eim-py就可以使用拼音输入法啦,如果出现can’t load file eim之类的错误,那就是上面的第一行中的loadpath添加不对,需要把add-to-list 'load-path后面的路径改成安装的路径,或者直接把安装之后的文件拷贝到"~/.emacs.d/site-lisp/eim"中。这款输入法还是很好用的,感谢大神wenbinye和RenWenshan的贡献。

补全

安装auto-complete插件,可以直接输入M-x package-install auto-complete安装. 然后安装yasnippet插件.

行号

使用插件nlinum, 安装

M-x package-install RET nlinum RET

安装之后,在配置文件~/.emacs或~/.emacs.d/ini.el加入

(add-hook ‘prog-mode-hook ‘nlinum-mode)
(add-hook ‘prog-mode-hook ‘hl-line-mode)

跳转到指定行:M-g g

注释

C-c C-c注释
C-u C-c C-c反注释

参考资料

  1. https://www.gnu.org/software/emacs/tour/
  2. https://www.douban.com/note/512802508
  3. https://blog.csdn.net/csfreebird/article/details/51005344
  4. https://github.com/wenbinye/emacs-eim
  5. https://tuhdo.github.io/index.html

猜你喜欢

转载自blog.csdn.net/X_And_Y/article/details/80101740