Linux下的常用文本编辑器
Linux的文本编辑器
ed
在早期的unix平台上,ed可以说是唯一的编辑工具。它是一个很古老的行编辑器,vi这些编辑器都是从ed 演化而来。行编辑器使用起来很不方便,每次只能对一行进行操作,。而后面介绍的pico、vi、emacs等全屏幕编辑器可以对整个屏幕进行编辑,用户编辑的文件直接显示在屏幕上,修改的结果可以立即看出来,克服了行编辑的那种不直观的操作方式,便于用户学习和使用,具有强大的功能。
Linux虽然现在通用vi来编辑,但也在系统中保留了ed,只是没有人会去用罢了。
- pico
pico很象DOS下的edit程序,打开之后,屏幕下方有操作的提示信息,功能简单,也可以完成操作,一步一步做就可以了。pico的功能键直接列在屏幕的最下方,可以做为帮助来指导操作。
字符界面下的pico
这个工具对初学Linux是有帮助的,毕竟Linux中的新东西太多了,可以从简单熟悉的东西入手,在建立了基本的概念之后,再来学习vi等复杂的工具。这不失为一种选择。
vi和vim
vi在是Unix平台上历史悠久的编辑器,它的命名是取“visual”(可视化的)这个单词的前两个字母,vi是Unix平台上可视化编辑器(或者说基于屏幕的编辑器)的代表,由加州大学和伯克利大学等机构,以原来的Unix行编辑器ed等为基础开发出来的,是一个使用多年,流传非常广泛的编辑工具。在Linux诞生的时候,vi与基本Unix应用程序一样被保留下来,成为我们管理系统的好帮手。
vim意为“vi iMproved”,改进了的vi,由Bram Moolenaar编写。Bram于1989年新买了一台计算机,在上面使用vi的时候觉得很多地方都不太方便,所以他找到了Stevie的源代码,在上面进行改进。在这期间还有Sven等很多人的加入,持续地改进,直到我们现在使用得很广泛的6.x版本。
vim与vi相比,增加了更多的特性,如彩色与高亮显示,可以使我们的编辑工作更轻松。通过设置,vim会自动检测文件中内容的类型,并以不同的颜色进行高亮显示,如注释变成蓝色,关键字变成褐色,而字符串变成红色等,与vi传统的黑白显示模式相比,vim更易读易用。另一个有趣的功能是vim支持从右到左输入字符,这在使用一些特殊语言(如Farsi)进行编程时是比较有用的。在vim中,我们还可以使用多窗口显示,在一个屏幕中同时对多个文件进行操作。我们还可以通过.vimrc文件定制的方法,来使用户在打开vi的时候获得自己熟悉的和适用于自己特殊目的的环境。
在编辑那些比较大的文件特别是程序文件的时候,vim比vi更方便一些。
emacs
emacs是Open Source的领袖Richard Stallman开发的,是Linux发烧友和程序员的终极武器,其功能大大超过了文本编辑。我们可以在emacs中进行文本编辑,也可以编写程序代码,做程序调试,编辑HTML/SGML,读News,收发e-mail…,而且emacs经过配置后还支持中文。不过功能的强大往往意味着操作方法的复杂,emacs也是如此,必须记非常多的命令才能使用它。
启动了功能菜单的emacs
很多UNIX程序员每天开机的第一件事就是打开emacs,看看自己的邮箱,然后开始编程工作,看其他人在News Group中讨论问题…emacs就是他们的一天,难怪有人说emacs是个操作系统。,目前emacs有terminal和Xwindow版本,terminal版是比较难操作的,而Xwindow版因为支持鼠标,所以相对容易上手一些。在自己的Linux水平从中级向高级发展的时候,不妨把emacs做为选择对象。
- Eclipse
- Brackets
- Light Table
- Chocolat
- Sublime Text
- 脚本编程
- 自定义界面
- 常规文件切换
- 合成和错误检测
- 多媒体选择和编辑
- 外部插件集成
- Themes
Linux下的常用文本编辑器的更多相关文章
- Linux下的Vim文本编辑器(入门)
引言 vim filename:打开名为filename的文件,如果不存在就会创建一个filename文件 Vim的三种使用模式 1. 命令模式 启动Vim时,就进入了命令模式 在该模式下: i:切换 ...
- Linux系统 vi/vim文本编辑器
Linux系统 vi/vim文本编辑器 (一)Vim/Vi简介 (二)Vim/Vi工作模式 (三)Vim/Vi基本使用 (四)Vim/Vi应用技巧 (一)Vim/Vi简介 Vim/Vi是一个功能强大的 ...
- Linux命令行下的vim文本编辑器
Linux命令行下的vim文本编辑器 下面这个网站的地址讲解的非成分清楚!!!! http://blog.csdn.net/niushuai666/article/details/7275406 学习 ...
- 10分钟 教你学会Linux/Unix下的vi文本编辑器
10分钟 教你学会Linux/Unix下的vi文本编辑器 vi编辑器是Unix/Linux系统管理员必须学会使用的编辑器.看了不少关于vi的资料,终于得到这个总结.不敢独享,和你们共享. 首先,记住v ...
- Linux大神必备-文本编辑器
导读 我们在 Linux 上不缺乏非常现代化的编辑软件,但是它们都是基于 GUI(图形界面)的编辑软件.正如你所了解的:Linux 真正的魅力在于命令行,当你正在用命令行工作时,你就需要一个可以在控制 ...
- window下如何使用文本编辑器(如记事本)创建、编译和执行Java程序
window下如何使用文本编辑器(如记事本)创建Java源代码文件,并编译执行 第一步:在一个英文目录下创建一个 .text 文件 第二步:编写代码 第三步:保存文件 方法一:选择 文件>另存为 ...
- linux 下 mysql 常用命令
linux 下 mysql 常用命令 阅读目录 ====================== 1.开启和关闭 1.1.开启 1.2.关闭 1.3.重启 2.登录 2.1.密码明文 2.2.密码密文 ...
- Linux课程---2、Linux下最常用命令(查看帮助命令)
Linux课程---2.Linux下最常用命令(查看帮助命令) 一.总结 一句话总结: man 1.显示文件? ls:ls带其它参数详情可以man ls man ls:比如 ls -a显示隐藏文件,l ...
- Linux下最常用的10个文件压缩工具
作者简介 李先生(Lemon),高级运维工程师(自称),SRE专家(目标),梦想在35岁买一辆保时捷.喜欢钻研底层技术,认为底层基础才是王道.一切新技术都离不开操作系统(CPU.内存.磁盘).网络等. ...
随机推荐
- RAID配置多阵列
感谢: https://www.cnblogs.com/hystj/articles/8672029.html
- node.js学习6---第三方依赖(模块或者说是包)的导入 npm 以及 cnpm命令的使用
npm命令用于导入node.js的第三方包,相当于java中使用maven来导入第三方依赖: 1.npm init -y 命令:在命令窗口中执行后,会出现如下的json文件: 右边记录了安装的第三方包 ...
- node.js学习4--------------------- 根据不同路径来响应内容,以及中文乱码的解决
/** * http服务器的搭建,相当于php中的Apache或者java中的tomcat服务器 */ // 导包 const http=require("http"); //创建 ...
- Datatables一些常见的JS用法(多与表格有关)
**********************--倒--序--上--升--(方便新增.更新)*********************** (3)给 动态生成 的 行 内按钮,添加点击事件(多用于分页情 ...
- Qt笔记之QGADGET
QGADGET宏类似于Q_OBJECT宏,是一个万能容器,至于这个宏所实现的功能,我也不懂,Q_OBJECT宏的功能到时了解一些,我想他们应该差不多,要想使用从Q_OBJECT继承来的类,就得在一开始 ...
- Phone 3rd Recovery
#解锁之后会低级格式化,请做好相关备份.1.#unlock code#2.adb reboot-bootloader3.fastboot devices4.fastboot oem unlock ** ...
- PYTHON 实现的微信跳一跳【辅助工具】仅作学习
备注原地址:https://my.oschina.net/anlve/blog/1604163 我又做了一些优化,防止WX检测作弊 准备环境: Windows 10安卓手机,源码中有适配ios,然后链 ...
- win10操作系统 安装nodejs报2503错误解决方法
报该错误的原因是由于安装操作没有获得足够的管理权限导致. 在电脑左下角开始菜单[右键]选择"命令提示符(管理员)“ 敲入如下命令 msiexec /package 后面加你nodejs的本机 ...
- iOS利用xcodebuild命令自动打包方法
1,xcode项目先打包试一下可以打包成功 2,创建一plist导出文件 3,xcodebuild命令直接运行 导出文件内容: <?xml version="1.0" enc ...
- Js/如何修改easyui修饰的input的val值
1.关于js对input值的修改介绍:一般js改变input的val值,我一直使用的方法是: $('#id').val('test');这样的方式来进行修改.但是我使 用了class="ea ...