Vim 编辑器底端 [noeol], [dos] 的含义
2012-11-28 23:13
351 查看
Vim 编辑器底端 [noeol], [dos] 的含义
有时使用 Vim 打开一个文件会在窗口底部发现 [noeol], [dos] 提示信息:直观上理解,'noeol' 就是 'no end-of-line', 即“没有行末结束符”, Linux 下的文本编辑器(如 Vim)会在每一行 (包括最后一行)末尾添加一个换行符。比如我们在 Debian 下新建一个名为 'hello-unix.txt' 的文本文件,内容如下:
下面我们再在 Windows 下创建一个名为 'hello-dos.txt' 记事本文件,内容如下:
Windows 下的换行符比 Linux 下的多了个 ^M;
最后一行行末没有换行符;
这两个不同之处也正是 [dos], [noeol] 两个 Flag 信息出现的原因。 Windows 下文本文件每行的换行符为“回车+换行“(CRLF,^M$), 而 Linux 下则仅为 “换行” (LF, $). Vim 发现文本中含有 ^m$ 换行字符判定为 Windows 下创建的 文件,用 [dos] Flag 提示;Vim 没有在最后一行发现换行符,判定此文件不是在 Linux 下创建/编辑,用 [noeol] Flag 提示用户。
如何消除 [noeol] Flag 信息?
只需在 Debian 下将该文件重新保存即可,还是上面的 hello-dos.txt 文件,打开它, 不做任何修改直接 :wq保存退出,再查看换行符:
如何消除 [dos] Flag 信息?
有两个简单的方法:
Linux 下提供有两个命令用来进行 Windows 和 Unix 文件的转化:dos2unix 和 unix2dos;
在 Debian 下使用 touch template.txt 创建一个模板,在 Windows 下创建的任 何文本文件都以此模板为基础;
参考资料
http://unix.stackexchange.com/questions/31807/what-does-the-noeol-indicator-at-the-bottom-of-a-vim-edit-session-mean http://linux.vbird.org/linux_basic/0310vi.php#tips_dos
相关文章推荐
- Vim 编辑器底端 [noeol], [dos] 的含义
- VIM编辑器:使用cscope老是出现一些E259: no matches found for csope query 问题;
- shell 脚本中常用字符含义与vim编辑器中的快捷键
- RHCE 第六讲 文字处理工具和vim编辑器
- 在Linux下的vim编辑器按下Ctrl+S
- vim(linux编辑器)的使用
- 打造 VIM 编辑器
- Linux之编辑器Vim篇(配置与高级技巧)
- 程序员的编辑器——VIM
- Spark修炼之道(基础篇)——Linux大数据开发基础:第六节:vi、vim编辑器(二)
- 安装VIM编辑器
- vim编辑器操作命令
- 鸟哥的linux私房菜-vim编辑器学习笔记 推荐
- 如何让vim编辑器永久显示行号
- vim编辑器和bash算术运算入门
- VIM编辑器入门介绍(进入退出及常用模式切换)
- 使用脚本编写 Vim 编辑器,第 4 部分: 字典
- Vim技能修炼教程(6) - 行编辑器
- my vim IDE 编辑器的配置
- 编辑器—VIM介绍