`

慢慢将emacs 配置成极其强大的web IDE开发环境

 
阅读更多
原文地址:http://www.douban.com/group/topic/33058930/




EmEditor-->Notepad++--->geany--->vim--->emacs,这是我使用编辑器的过程。EmEditor和Notepad++是我在windows下面最喜欢的编辑器。
特别是Notepad++,我用的时间最长,免费,代码折叠是我最喜欢的功能,我进行web开发的时候,代码折叠是用得最多的,用鼠标一点,可以把div折
叠起来,看代码非常方便。

全面投向linux 后,一度尝试过各种各样的编辑器和IDE,
尝试过的文本编辑器:jEdit,gedit,geany,Sublime Text
尝试过的IDE:komodo-IDE7,NetBeans,ompoZer,Eclipse

我主要的工作是进行html+php+js+css方面的编辑。在Windows下面无法离开Notepad++和Dreamweaver CS这两样工具。
Dreamweaver CS 有两个优点:写css非常方便,有提示功能,可以一键格式化css格式,也可以一键格式化html格式。

转向linux后,对linux下面各种IDE基本失望(仅仅对komodo稍微有点好感)。IDE 基本很笨重,可定制的东西太少,用起来非常不方便。
文本编辑器方面,仅仅对geany情有独钟,说geany是linux最优秀的文本编辑器一点不过分。我需要的东西,geany基本具备,速度也很快。
基本Notepad++有的功能,geany也有。
geany 下面如下功能,我非常喜欢:
1. 代码折叠,默认支持,非常出色。在linux下面遇到唯一一款代码折叠这么出色的。
2. 虚拟终端。这个非常舒服。
3. snippets,写代码太方便了。
4. tags,写代码太方便了。将那个standard.css.tags和php-tags放进去,进行web开发非常爽。
5. tree browser
6. 代码提示和代码自动完成也有。

如果在linux还没有找到好用文本编辑器的朋友,并且也不想用vim或者eamcs,推荐试用下geany,这个应该不会使你失望。我曾经一度认为没有比geany更好的编辑器了。

不过随着使不断的使用,geany留给我以下遗憾:
1. 没有格式化源代码的功能。格式化不了html,php,css,一度需要我开vbox,用dw完成。
2. 智能注释,反注释。
3. 可定制的功能还是少。好用的插件,还不是很多。

我认为将emacs 配置成强大的web IDE开发环境,需要达到功能才可以。

1. 改造emacs里面不适应和不习惯的地方,看看能不能改造
2. 需必备功能:代码折叠。
3. 需必备功能:代码snippets,代码片段快速输入
4. 需必备功能:代码高亮
5. 需必备功能:代码自动补充和完成
6. 需必备功能:一键格式化html、php、css、js文件,使得源码格式化,符合规范。
7. 需必备功能:智能注释,反注释,写代码的时候,可以快速按一个键,快速注释或反注释,或添加注释。
8. 需必备功能:html、php、css、js 代码缩进美观
9. 需要必备功能:可以使用代码auto complete,可以使用zencoding
10. 更高级更能:比如可以使用tidy
11. 比如js,css,html压缩功能。比如css可以将多行压缩成一行。。。。js压缩(可以减少体积)
12. 强大的帮助系统,比如可以查询php语法,w3c方面的帮助,语法提示
13. php tag
14, php调试,编译


emacs 越来越有感觉,下面总结一下将emacs 配置成强大的web IDE开发环境所需要的插件。
1. 改造emacs里面不适应和不习惯的地方,看看能不能改造
通过如下插件,可以将emacs改造成ide环境
1.1 sr-speedbar(经过几个月的使用,emacs不用这个一样方便)
1.2 tabbar 标签功能
1.3 cedet (经过几个月的使用,emacs不用这个一样方便),web开发,没有必要使用)
1.4 ecb(经过几个月的使用,emacs不用这个一样方便),web开发,没有必要使用)
1.5 dired+
1.6 其他方便性功能:比如让光标指到某个括号的时候显示与它匹配的括号;用来显示当前光标在哪个函数;显示行号。。。。
2. 需必备功能:代码折叠。
2.1 这个试过很多,效果不是太好。以后再试试有无更好的插件。
3. 需必备功能:代码snippets,代码片段快速输入
3.1 yasnippet
4. 需必备功能:代码高亮
4.1 emacs默认高亮一般有问题,不过如果html语法混杂有js,css,php等代码的时候,代码高亮要配置才可以。
这个比较麻烦。
5. 需必备功能:代码自动补充和完成
5.1 auto-complete
6. 需必备功能:一键格式化html、php、css、js文件,使得源码格式化,符合规范。
6.1 内置indent-region函数本身就支持格式化,可以绑定一个键。一键格式化html代码(可能包含js,css,php代码)。
6.2 利用flush-lines删除所有空行,whitespace-cleanup删除所有空格,也可以编个自定义函数,绑定个键
7. 需必备功能:智能注释,反注释,写代码的时候,可以快速按一个键,快速注释或反注释,或添加注释。
7.1 M-,emacs最聪明的注释。
8. 需必备功能:html、php、css、js 代码缩进美观
8.1 其实和第4点一样,比较好的解决方法
mmm-mode+nxml-mode+php-mode+js3-mode
如果这几个模式没有配置好,缩进和格式化、高亮,都有问题。
9. 需要必备功能:可以使用代码auto complete,可以使用zencoding
9.1 auto complete
9.2 zencoding
10. 更高级更能:
比如js,css,html压缩功能。比如css可以将多行压缩成一行。。。。js压缩(可以减少体积)

另外,可以使用如下插件
rainbow-mode 自动显示css颜色,对经常写css很方便。
flymake-css,flymake-php。。。。。。。。
less-css-mode。。。。。。

帮助系统: 查看php语法, 语法提示.........


目前除了代码折叠,其他插件基本满意。使用了以上插件,基本可以把emacs配置成强大的web IDE开发环境。。
比geany 强大太多,dw的格式化代码功能也有,已不再想用其他编辑器。更重要的是,emacs可个定制性太强了,在慢慢的学习中,你的emacs
会慢慢根据你的改变而改变。

以上插件,可以通过google搜索(不用用baidu),emacs好的资料都在gg上面,一般都是英文的。
网上介绍emacs c++ 的插件比较多,web方面的插件介绍比较少。。。如果有更好的插件或者web配置,大家可以交流下。。
分享到:
评论

相关推荐

    Atom-emacs,用于javascript开发的gnu emacs配置。.zip

    将Atom的这些特性融合到Emacs中,使得开发者能够在保持Emacs原有的强大功能的同时,享受到更加现代化的开发环境。 压缩包中的"emacs-master"可能是一个Git仓库,包含了完整的Emacs配置文件,如.emacs或init.el,这...

    Atom-merlin,vim和emacs中ocaml的上下文相关完成.zip

    总的来说,Merlin为OCaml开发者提供了一种跨编辑器的统一开发体验,无论你是喜欢Atom的现代风格,还是Vim和Emacs的经典功能,都可以享受到强大的上下文相关完成和其他IDE级别的特性。通过熟练掌握Merlin的使用,...

    psc-ide-emacs:用于PureScript的psc-ide工具的Emacs集成

    **psc-ide-emacs:PureScript开发环境的Emacs整合** psc-ide-emacs是针对PureScript编程语言的集成开发环境(IDE)插件,它为Emacs用户提供了一个高效、功能丰富的开发工具集。PureScript是一种静态类型的函数式...

    Lux编程语言_Clojure_Emacs Lisp_下载.zip

    Lux编程语言,是一种基于Clojure和Emacs Lisp的创新编程工具,旨在提供一个高效、灵活且集成开发环境(IDE)的编程体验。Lux的核心设计理念是将Clojure的强大功能与Emacs Lisp的灵活性相结合,创造出一个既适合新手...

    GNU.Emacs完全手册

    2. **集成开发环境**: 如何构建特定语言(如Python、Java或C++)的IDE环境。 3. **代码跳转**: 快速定位函数定义、引用等代码元素。 **七、协作与版本控制** 1. **VCS集成**: 与Git、SVN等版本控制系统无缝对接。 2...

    Fortran开发环境的Windows安装.pdf

    在Windows环境下搭建Fortran开发环境,通常涉及三个主要部分:编辑器、编译器和集成开发环境(IDE)。本篇将详细解释这些概念以及如何在Windows上安装和使用不同的Fortran工具。 1. **基本概念辨析** - **编辑器...

    10个好用的Python集成开发环境.pdf

    在Python编程中,选择一款合适的集成开发环境(IDE)对于提升开发效率至关重要。本文将介绍10个优秀的Python IDE,帮助开发者找到最适合自己的工具。 1. **Pydev + Eclipse** Pydev是基于Eclipse的开源Python插件...

    折腾:coding IDE node环境安装.pdf

    ***的在线IDE特点:包含终端命令面板、支持vim和Emacs编辑器、在线运行环境,以及支持git。 3. nodeJS环境的重要性: - nodeJS是一个基于Chrome V8引擎的JavaScript运行环境,支持非阻塞、事件驱动I/O模型的...

    (一)、linux下开发环境的搭建

    常见的选择有Vim、Emacs这类轻量级但功能强大的终端编辑器,也有像Visual Studio Code、IntelliJ IDEA这样的集成开发环境(IDE)。对于初学者,VS Code因其丰富的插件和良好的跨平台性而受到青睐。 3. **版本控制**:...

    CloudStack 在Windows 平台上的开发环境设置

    然后,我们需要安装Eclipse IDE,这是一款广泛用于Java开发的集成开发环境。从Eclipse官网http://www.eclipse.org/downloads/下载最新版本,解压缩到所需的目录,无需执行任何安装程序。Eclipse适合于CloudStack的...

    ng2-mode:对Emacs的Angular支持

    8. **集成开发环境(IDE)特性**:如代码折叠、代码格式化、查找和替换等,提升开发体验。 **安装和配置ng2-mode** 要在Emacs中使用`ng2-mode`,首先需要确保已经安装了TypeScript和Angular CLI。然后可以通过...

    分享18个最佳代码编辑器/IDE开发工具

    JetBrains是IDE开发领域中非常有名的一家公司,它提供了多种针对不同编程语言的IDE,包括适用于Java的IntelliJ IDEA、适用于Python的PyCharm、适用于Web开发的WebStorm、适用于Ruby的RubyMine等。这些IDE以其智能...

    PHP开发工具与环境搭建

    - libxml2是一个强大的XML解析库,对于处理XML数据非常重要。安装该库通常涉及解压、配置、编译和安装等步骤。在配置阶段,可以通过`./configure`命令来设置安装路径等参数。 **2.4 gd-2.0.28.tar.gz的安装** - GD...

    emacs-srfi:Emacs中的“方案请求实施”浏览器

    Emacs是一款强大的文本编辑器,深受程序员和程序员爱好者们的喜爱,因为它不仅是一个编辑器,更是一个集成开发环境(IDE)。而“emacs-srfi”是一个专门为Emacs设计的扩展,它为用户提供了浏览和理解Scheme请求实施...

    软件开发工具

    软件开发工具涵盖了从项目规划、编码、测试到维护的全过程,包括但不限于编辑器、编译器、版本控制系统、调试器、自动化构建工具、集成开发环境(IDE)、测试框架和项目管理工具等。 随着技术的发展,软件开发工具...

    NetBeans课件

    NetBeans是一款强大的集成开发环境(IDE),尤其针对Java语言提供了丰富的功能。NetBeans 5.0版本引入了许多改进和新特性,使得开发过程更加高效和便捷。以下将详细阐述NetBeans IDE的一些关键特点: 1. **集成开发...

    pycharm使用手册

    PyCharm 是一个功能强大且功能齐全的集成开发环境(IDE),专门为 Python 编程语言设计。下面是 PyCharm 的一些重要知识点: 1. 安装准备工作 在安装 PyCharm 之前,需要确保已经安装了 Python 解释器,版本 2.4 到...

    Linux Python.zip

    开发工具包括集成开发环境(IDE)如PyCharm、VS Code,以及文本编辑器如Vim、Emacs等。此外,还可能需要使用版本控制工具如Git,以及虚拟环境管理器如venv或virtualenv,以隔离不同项目的依赖。 4. **运维与Python*...

    Python必学教程 Python开发工具 高效Python编程神器 最全Pycharm教程 - 精编版 共331页.pdf

    《Python必学教程 Python开发工具 高效Python编程神器 最全Pycharm教程 - 精编版》是一份详尽的PyCharm使用指南,旨在帮助开发者深入理解和掌握这款强大的Python集成开发环境(IDE)。PyCharm是JetBrains公司开发的...

Global site tag (gtag.js) - Google Analytics