热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

小情人emacs的自动补全

前天打字的时候发现手指疼…..OTL…思考了一下可能是我近几个月以来一直在使用全部手敲代码不使用自动补全的“恶果”(当然我还是建议全部手敲的,至少可以感

前天打字的时候发现手指疼…..OTL…思考了一下可能是我近几个月以来一直在使用全部手敲代码不使用自动补全的“恶果”(当然我还是建议全部手敲的,至少可以感觉到强烈的屌丝满足感)。

先来个效果图

image

是不是看上去碉堡了…

用的github上面的这个神奇的东西

auto-complete

下载之后有说明文档,按照说明文档进行安装,这里说下遇到过的问题

如果你是第一次和你的情人约会(给emacs安装插件)

需要你添加这样一句话在你的.emacs文件中

(add-to-list 'load-path "~/.emacs.d")

里面的"~/.emacs.d"表示你的.emacs.d的文件夹的位置(就是你按照文档安装的时候安装到的路径,这个是默认路径,亲测windows和osX都可以这样写)

之后如果可能说

symbol's value as variable is void ac-dictionary-directories

这个时候把下面这一行提前(在 上面增加的那一行之后)

(require 'auto-complete-config)

然后有可能会说找不到popup什么什么巴拉巴拉的一堆

搜了一下感觉是这样,auto-complete只是负责补全,但是那个下拉框一样的东西是需要popup这个插件的

在git上面找到这个:

popup

然后按照文档轻松安装一下,然后再进入emacs发现不报错了。小情人的又一次调教完成了!可以开始享受了。

之后我把.emacs和.emacs.d两个文件和dropbox里面做了链接,然后以后走到哪,emacs的配置都可以轻松同步了,小情人随叫随到,真是让人爱不释手啊。

ps: 上周参加BCTF和队友们聊天说用什么编辑器,后来说到了vim和emacs两个。但是又说这两个家伙实在是麻烦了,配置起来很浪费时间。我就说,这才是他们的魅力。就好像在养一个情人,所有你做的事情都是私人定制的,她哪里让你不舒服你都能修改(快捷键),可以给她买衣服(装插件)。关键的问题是她不会反抗!!

最后再附上一个最近修改的.emacs文件的内容

1: (custom-set-variables

2: '(custom-enabled-themes (quote (dichromacy)))

3: '(inhibit-startup-screen t))

4: (custom-set-faces

5: )

6: ;;添加load-path

7: (add-to-list 'load-path "~/.emacs.d")

8: ;;自动补全

9: (require 'auto-complete-config)

10: (ac-config-default)

11: (auto-complete-mode t)

12: ;;设置非macOS的字体

13: (set-default-font " -outline-Verdana-normal-normal-normal-sans-17-*-*-*-p-*-iso8859-1")

14: (when (eq system-type 'darwin)

15: ;;设置一个MacOS字体

16: (set-default-font " -apple-Monaco-medium-normal-normal-*-14-*-*-*-m-0-iso10646-1")

17: ;;干掉小方框!!因为上面那个万恶的字体没有草泥马的斜体!!!

18: (set-fontset-font "fontset-default" 'gb18030' ("STHeiti" . "unicode-bmp"))

19: )

20: ;;设置一个屌逼的c风格的缩进

21: (setq c-basic-offset 4)

22: ;;设置一个开始的路径

23: (setq default-directory "/Users/lulala/Documents/")

24: ;;关掉默认的tab设置为4个空格

25: (setq default-tab-width 4)

26: (setq-default indent-tabs-mode nil)

27: ;;弄出来行号

28: (global-linum-mode t)

29: ;;设置好左右匹配

30: (global-set-key [(meta left)] 'backward-sexp)

31: (global-set-key [(meta right)] 'forward-sexp)

32: ;;M-g设置为gotoline

33: (global-set-key [(meta g)] 'goto-line)

34: ;;设置注释区域

35: (defun my-comment-or-uncomment-region (beg end &optional arg)

36: (interactive (if (use-region-p)

37: (list (region-beginning) (region-end) nil)

38: (list (line-beginning-position)

39: (line-beginning-position 2))))

40: (comment-or-uncomment-region beg end arg)

41: )

42: (global-set-key [(control /)] 'my-comment-or-uncomment-region)

43:  

44: ;;设置搜索时严格按照大小写

45: (setq-default case-fold-search nil)

46:  

47: ;;设置搜索时高亮系那是全部

48: (setq search-highlight t)

49:  

50: ;;设置替换时高亮显示

51: (setq query-replace-highlight t)

52: ;;设置背景颜色

53: (set-background-color "#faf9de")

54: ;;应该是行号之后空一条

55: (put 'upcase-region 'disabled nil)

56: ;;set meta real meta

57: (when (eq system-type 'darwin)

58: (setq mac-option-modifier 'meta)

59: (setq mac-command-modifier 'control)

60: (global-set-key [kp-delete] 'delete-char) ;; sets fn-delete to be right-delete

61: )

62: ;;()的匹配

63: (show-paren-mode t)

64: (setq show-paren-style 'parentheses)

65: ;;光标移动到鼠标的时候把鼠标干掉!

66: (mouse-avoidance-mode 'animate)

67: ;;设置光标为|而不是小黑块

68: (setq-default cursor-type 'bar)

69: ;;设置打开ejs的时候默认使用html-mode

70: (

71: setq auto-mode-alist

72: ( append

73: '(("\\.ejs\\'" . html-mode)

74: ("\\.s?html?\\'" . html-mode)

75: (" \\.asp\\'" . html-helper-mode)

76: ("\\.phtml\\'" . html-helper-mode)

77: ("\\.css\\'" . css-mode)

78: ("\\.pc$" . c-mode)

79: )

80: auto-mode-alist))


转:https://www.cnblogs.com/qoshi/p/3598068.html



推荐阅读
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 提升Python编程效率的十点建议
    本文介绍了提升Python编程效率的十点建议,包括不使用分号、选择合适的代码编辑器、遵循Python代码规范等。这些建议可以帮助开发者节省时间,提高编程效率。同时,还提供了相关参考链接供读者深入学习。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了设计师伊振华受邀参与沈阳市智慧城市运行管理中心项目的整体设计,并以数字赋能和创新驱动高质量发展的理念,建设了集成、智慧、高效的一体化城市综合管理平台,促进了城市的数字化转型。该中心被称为当代城市的智能心脏,为沈阳市的智慧城市建设做出了重要贡献。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • PHP连接MySQL的2种方法小结以及防止乱码【PHP】
    后端开发|php教程PHP,MySQL,乱码后端开发-php教程PHP的MySQL配置报错信息:ClassmysqlinotfoundinAnswer:1.在confphp.ini ... [详细]
author-avatar
北辰孤星123
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有