前言

本文介绍了Emacs里的自动补全功能,包括其内置的缓冲区文件名补全和使用扩展package实现的文本的补全和程序代码的补全功能等。

本文提到的几个package(或mode):

  • ido-mode
  • auto-complete
  • company
  • yasnippet

缓冲区名字补全: ido-mode

在使用C-x b或者M-x dired输入缓冲区名字或者路径名字的时候,需要记住使用过的缓冲区或者文件目录的结构,这使得用户要输入记住和输入很多东西,增加了使用Emacs的困难程度。

ido-mode解决了这个问题,它会在我切换缓冲区或者要使用C-x C-f查找文件的时候,自动为我列出匹配项目,我仅需键入有限的几个输入,或者根本不用输入,直接使用C-s向后选择ido-mode给提供的选项,使用C-r向前选择,然后回车即可选中。

要打开ido-mode,使用M-x customize,然后搜索ido,找到ido-mode打开即可,你可以让它只作用于buffer补全或者只作用于文件补全,也可以同时作用。

要想让ido-mode支持模糊匹配,还需要打开:Ido Enable Flex Matchin。

auto-complete 补全

auto-complete这个package是很多以auto-complete-开头的其它package的基础,所以要想使用这个系列的补全插件要先安装auto-complete。

根据我的使用情况auto-complete package可以在一下两个package archive(package源,见第三篇文章)找到:

  • (“melpa” . “https://melpa.org/packages/“)
  • (“marmalade” . “http://marmalade-repo.org/packages/“)

确保添加了上面任何一个package archive之后,执行:

M-x package-install RET auto-complete RET 进行安装。

也可以使用前面第三篇文章里,使用M-x list- package进入包安装界面,搜索auto-complete来进行安装。

company-mode :complete anything

company是Emacs中一个文本补全框架,正如其名字,它可以补全任何东西。使用也很简单。

网上有关于company和auto-complete功能比较的讨论:More info about how this compares to auto-complete

具体使用哪个更合适,我现在还没有结论,要自己尝试后才能知道哪个更适合自己。

yasnippet: template complete

yasnippet跟Vim中的UltiSnip很像,可以自己定义补全模板,定义模板中光标的停留地点和跳转顺序等。

yasnippet甚至支持在自定义模板的时候嵌入Elisp代码。

yasnippet针对每个mode可以有一套补全的模板,模板文件在yasnippet/snippets/下面,按照mode名字单独存放。


作者水平有限,对相关知识的理解和总结难免有错误,还望给予指正,非常感谢!

在这里也能看到这篇文章:github博客, CSDN博客, 欢迎访问

【积水成渊-逐步定制自己的Emacs神器】4:Emacs自动补全相关推荐

  1. gocode+auto-complete搭建emacs的go语言自动补全功能

    上篇随笔记录了在emacs中使用go-mode和goflymake搭建了go语言的简单编程环境(推送门),今天来记录一下使用gocode+auto-complete配置emacs中go语言的自动补全功 ...

  2. emacs c语言 自动补全,Emacs 与 C/C++ 代码自动补全

    基于 Emacs 的 company 模式并配合 semantic 文法分析器,实现 Emacs 的 C/C++ 代码自动补全. 关于 Emacs 的代码自动补全 代码自动补全的功能,对于使用 Ema ...

  3. 一款SQL自动检查神器,再也不用担心SQL出错了,自动补全、回滚等功能大全

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:最美分享Coder 来源:http://suo.im/6uI ...

  4. vs代码补全的快捷键_一款Python编程的自动补全插件神器——kite

    最近发现了一款Python编程的插件神器--kite,相见恨晚啊,它是一款基于AI技术的自动补全功能插件,可用于大部分的Python编程环境,如PyCharm.VSCode.Vim.Sublime T ...

  5. 这个 Python 代码自动补全神器搞得我卧槽卧槽的

    是时候跟你说说这个能让你撸代码撸得舒服得不要不要的神器了--kite. ​! 简单来说,它是一款 IDE 的插件,能做到代码自动补全,可能你会说了,这有什么牛逼的?一般的编辑器不都有这个功能么? 它虽 ...

  6. Vim自动补全神器YouCompleteMe的配置

    简介:YouCompleteMe号称Vim的自动补全神器,该项目在github的地址:YouCompleteMe:以下在10.0.1 build-1379776平台配置完成 插件安装操作: 1.确保V ...

  7. kite:Python 代码自动补全神器

    kite:Python 代码自动补全神器 吃了 学习python的正确姿势 的安利:这个 Python 代码自动补全神器搞得我卧槽卧槽的. 代码自动补全还是挺舒服的嘿嘿嘿. 下面是官网下载给出的示例: ...

  8. vs代码补全的快捷键_效率工具 | 一款基于深度学习的代码自动补全神器

    前言 代码补全对于大多数开发人员来说是至关重要的,它可以有效的提高开发效率.减少拼写错误和输入代码量.我们使用的大多数开发工具都自带补全功能,或者可以通过安装插件具备补全功能.但是,以往的代码补全功能 ...

  9. vim插件自动补齐_(转)Vim自动补全神器:YouCompleteMe

    原文出处:http://blog.jobbole.com/58978/ 第一次听说这个插件还是在偶然的情况下看到别人的博客,听说了这个插件的大名.本来打算在实训期间来完成安装的,无奈网实在不给力,也就 ...

最新文章

  1. 利用大数据,你将会购买更多的东西
  2. 线段树(成段更新,区间求和lazy操作 )
  3. 猜数字游戏python程序_python实现的简单猜数字游戏
  4. HTML字体怎么显示,教你如何用CSS来控制网页字体的显示样式
  5. 服务器自动挂载硬盘,Linux硬盘分区及开机自动挂载
  6. JVM参数设置、分析
  7. openoffice转换过程中遇到繁体字文档转换失败的问题
  8. format 参数说明
  9. windows7计算机管理,win7系统打开计算机管理(compmgmt.msc)的操作方法
  10. 宇宙第一 IDE Visual Studio 支持 Java 了!
  11. 知乎上的44条神回复,针针见血,看完整个人通透多了
  12. solr查询如何支持多个fq 多条件查询
  13. 2、金字塔原理:思考的逻辑(6-7)-阅读笔记
  14. 物理计算机技术研究生就业前景,物理学就业前景
  15. MySQL5.7.xx安装卡在Staring the server解决方案--亲测有效
  16. 三季度现货白银基本面分析
  17. (七)《数电》——CMOS与TTL门电路
  18. Google及Facebook第三方登录问题,“将你登入到此应用时出错,请稍后再试”
  19. Javascript深克隆和浅克隆
  20. 利用正则表达式爬取网络小说,并按照章节下载到本地

热门文章

  1. 剑指offer2.1
  2. 批量手机号归属地查询
  3. 企业邮箱群发邮件 - 邮件群组群发邮件详解
  4. 小米拒绝权限_小米手机 MIUI 12 测试新隐私保护:可设置每个应用是否允许访问相册和信息存储目录...
  5. okhttp的视频下载
  6. SCCM 2012 R2部署,先决条件(二)
  7. 运放电压和电流负反馈的讨论
  8. java嵌套for循环基础练习 -班级平均分
  9. PhotoShop批量生成App大小不同的Icon
  10. 漫说从打工者到企业家的蜕变过程所碰到的问题及解决方案