`
ppgunjack
  • 浏览: 81260 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

尝试使用Emacs

 
阅读更多

Emacs的强大毋庸置疑,但是要把它折腾到好用是件成本很高的事情。

现在由于工作需要要同时浏览c++、java代码,要在linux、window、远程、本地、IDE,shell间来回切换,太过麻烦,于是开始强迫自己用Emacs处理这些问题。

 

刚开始用Emacs的时候的确很变扭,没有定制过的原始Emacs确实不怎么好用,尤其很难让用惯了IDE和window编辑器的人满意,不过当熬过这个阶段,你很快就能体会到它的优势和在很多事情上的便捷。

下面看看Emacs在开发中的表现:

 

1.文本和命令编辑过程中自动补完路径

在编写文档、脚本和代码过程中很多时候都需要填写冗长的路径。

在文本编辑模式和命令编辑过程中都可以利用autoComplete插件来提供自动路径完成。

 

2.文件夹操作

在有大量文件的文件夹中使用命令行是更简便的方式,可以很容易用正则来定位、打开、删除文件和文件夹

 

3.修改定制Emacs

要将Emacs打造顺手,有时需要查阅Emacs一些函数、变量定义,甚至添加修改功能实现的lisp脚本,那么对于编辑lisp的操作就很重要,下图是在ECB下的lisp编辑

 

在lips编辑中的autoComplete:

 

4.Emacs进行c,c++开发

这是Emacs开发中最强的领域,如果搭配好,结合GDB,基本上能打造成集VS,Source Insight,windbg于一体的开发环境。

 

ECB下阅读和编辑代码:

 

 

用Emacs集成环境下的GDB调试非常方便,能同时从不同方面观测程序:

 

在GDB环境下编译:

 

C++自动完成是比较麻烦的部分,这里使用autoComplete+clang的方案,clang的出现很好解决了C++代码的语法解析准确性和解析速度的问题,并且在Linux和window下都能通用。

stl的自动完成:

 

boost中智能指针的智能补全:

 

可以看到Emacs可以很好完成开发中的所有事情,但是适应和改造它确实是件痛苦的过程。

不过一旦跨过这个阶段,就会非常习惯和依赖它,因为里面每种功能都很容易用在其他模式下。它支持的类型非常广泛,包括各种代码、脚本、网页编辑、shell、telnet、远程ftp编辑、版本控制、文件比较,再结合autoComplete和yasnippet模板能极大提高文字、代码、脚本编辑和shell调用的效率。

Emacs在编辑上的便捷性不是用文字和图片能表述的,需要自己去亲身体会,尽管开头不容易,但学会Emacs将是一项长期高回报的投资。

  • 大小: 41.4 KB
  • 大小: 96.1 KB
  • 大小: 286.3 KB
  • 大小: 160.6 KB
  • 大小: 34.2 KB
  • 大小: 185.7 KB
  • 大小: 60.4 KB
  • 大小: 13.5 KB
  • 大小: 8.3 KB
分享到:
评论

相关推荐

    How Emacs change my Life.pdf

    松本行弘在文档中详细叙述了他对Emacs的情感变化:最初他尝试使用Emacs但从未真正使用它,原因可能是Emacs消耗了太多的内存(记忆)。而且,Emacs曾被禁止使用,这表明在某个时期Emacs并不被普遍接受或支持。文档中...

    emacs perl extention

    Emacs Perl Extension,通常被称为PDE(Perl Development Environment),是一种集成在Emacs编辑器中的强大Perl编程...所以,无论是经验丰富的开发者还是初学者,都值得尝试使用Emacs和PDE来提升Perl编程的效率和乐趣。

    Go-Goism在Emacs使用Go语言替代EmacsLisp语言

    Go-Goism是一种尝试在Emacs环境中使用Go语言来替代传统的Emacs Lisp语言的技术。这一概念的出现,主要是为了利用Go语言的性能优势和现代化特性,为Emacs扩展提供更高效、更易维护的解决方案。在Emacs社区,开发者们...

    Harley Hahns的emacs field 指南

    《Harley Hahn’s Emacs Field Guide》由资深技术作家Harley Hahn撰写,旨在为用户提供一份全面深入的Emacs使用指南。本书不仅适合初学者快速上手Emacs,也适用于高级用户进一步探索Emacs的强大功能。 **主要内容...

    emacs 参考卡 快捷键

    - 使用 `M-x recover-session` 可以尝试恢复由于系统崩溃而丢失的文件。 - **撤销更改**: - 通过 `C-x u`、`C-_` 或 `C-/` 可以撤销最近一次的更改。 - **恢复缓冲区内容**: - 使用 `M-x revert-buffer` 可以...

    emacs-lisp编程入门

    Emacs Lisp(简称Elisp)是GNU Emacs编辑器的核心编程语言,它允许用户自定义、扩展和控制这个功能丰富的文本编辑器。...在实践中不断尝试和学习,你会发现Emacs Lisp编程不仅能提高你的生产力,还能带来无尽的乐趣。

    高级linux程序设计

    同时,也鼓励读者尝试使用Emacs进行代码编辑。 - **代码编辑与管理**:讲解了如何使用Emacs或其他编辑器来编辑C/C++源代码。 - **编译与调试**:详细说明了在Linux环境下编译和调试C/C++程序的方法,包括使用gcc...

    Emacs Configure

    4. **备份原配置**:在尝试新的配置前,最好备份原有的`.emacs`,这样如果新配置出现问题,可以迅速回滚。 5. **个性化定制**:每个人的使用习惯不同,别人的好用并不代表适合自己。所以,要根据自己的需求对配置...

    emacs快捷键大全

    - **恢复文件**:使用 `M-x recover-file` 可以尝试恢复因系统崩溃而丢失的文件。 - **撤销操作**:使用 `C-x u` 或 `C-_` 来撤销最近的操作。 - **重置缓冲区**:使用 `M-x revert-buffer` 可以将缓冲区内容恢复到...

    vim+latex相关工具下载链接合集

    - 如果暂时无法习惯 Vim 的操作方式,还可以尝试使用 Emacs、Atom、VSCode、Sublime 等文本编辑器。这些编辑器同样拥有丰富的 LaTeX 插件支持,能够满足不同用户的个性化需求。 #### 七、学习资源推荐 - **博文...

    emacs-evil

    这个插件使得习惯于 Vim 编辑方式的用户在使用 Emacs 时能更加得心应手,同时也为 Emacs 用户提供了一种更高效的操作方式。 首先,了解 Evil 插件的基本概念是非常重要的。Evil 并不是替代 Emacs 的一个完整编辑器...

    emacs快捷键参考

    如果是第一次使用Emacs,可以尝试`C-h t`获得教程。 - **移除帮助窗口**: - 快捷键:`C-x 1` - 描述:使用`C-x 1`命令可以关闭帮助窗口。 - **滚动帮助窗口**: - 快捷键:`C-M-v` - 描述:按下`C-M-v`可以在...

    emacs配置-python开发环境

    Emacs是一款强大的文本编辑器,尤其受到程序员的青睐,因为它可以高度自定义并支持各种编程语言的开发环境。在这个特定的配置中,我们关注的是它作为...如果你是Python开发者并且对Emacs感兴趣,这个配置值得尝试。

    An Introduction to Programming in Emacs Lisp

    - **剪切和存储文本(Cutting and Storing Text)**:解释了如何使用Emacs Lisp操作剪贴板,包括剪切、复制和粘贴文本到不同的位置。 ##### 11. 列表实现(List Implementation) - **列表实现(List Implementation)**...

    eclipse的键位设置(emacs改进)

    5. 保存并应用更改后,可以尝试使用新键位进行实际操作,确保它们按预期工作。 然而,"还有一些问题,备份下"这句描述提示我们,在进行键位改进的过程中可能会遇到问题。例如,某些内置的Eclipse功能可能已经绑定了...

    windows环境下emacs elpa常用package打包

    在使用这些Package时,通常需要在`.emacs`或`.emacs.d/init.el`配置文件中激活它们。例如,如果包含的包中有`org-mode`,用户可能需要添加如下代码来启用: ```lisp (require 'org) ``` 如果包较多,还可以使用`use-...

    auctex下载 emacs+auctex 写tex文件的利器

    AUCTeX是一款强大的LaTeX编辑器扩展,专为Emacs设计,极大地提升了在Emacs中编写LaTeX文档的效率和体验。它提供了丰富的代码自动完成、...如果你是LaTeX爱好者,不妨尝试一下AUCTeX,相信它会为你的工作带来显著提升。

    尝试修复点(emacsflycheck扩展)_Emacs Lisp_下载.zip

    总的来说,"尝试修复点(emacsflycheck扩展)"是一个专注于提高Emacs Flycheck工具在处理Elisp代码时性能和稳定性的项目。通过分析和应用这个扩展,Emacs用户可以提升他们的编程体验,减少由于语法错误导致的中断,...

    尝试在Emacs中进行良好的基于​​像素的平滑滚动-Android开发

    good-scroll.el在Emacs中尝试良好的基于​​像素的平滑滚动。关于此软件包实现按像素行的平滑滚动。 它尝试影响good-scroll.el尝试在Emacs中进行基于像素的良好平滑滚动。About此程序包实现了按像素行的平滑滚动。 ...

    parinfer-notes:我关于parinfer的笔记

    我认为parinfer是一个有趣的主意,并且对于各种编辑器而言,有许多实现方式的事实可能使它成为那些刚开始使用Lisp的人的一个很好的起点(那些从未尝试使用emacs编写Lisp的人可能会错失很多功能)。 但是,我认为它...

Global site tag (gtag.js) - Google Analytics