Pet*_*r.O 48 vim gedit text-editor gvim
有时我希望文本文件的最后一行是一个简单的文本字符串,不附加换行符:...例如。将另一个文件连接到它。
一些编辑器通过添加换行符自动修改我的文本,即使我没有按下Enter。
Remains unmodified: Emacs、SciTE、Kate、Bluefish、记事本(葡萄酒)
Newline is added: Gedit、Gvim、Vim、Nano
我想知道是否有某种方法可以调整 Gedit、Gvim 和 Vim 以仅保存我输入的内容……甚至 Nano 也可能派上用场
我目前使用 Gedit,我正在涉足 Gvim/Vim ..所以知道如何“切换”这些开/关会很有用......
附注。在 Gedit、Gvim 和 Vim 中重新打开同一个文件时,光标的文件结尾位置在文本的末尾,而它应该真正显示在下一行(空)上。这是误导性的(但那是因为我已经习惯了)。
我使用了十六进制编辑器来检查上述观察。
Mar*_*ppi 54
对于gEdit ,似乎没有办法禁用在末尾插入换行符,请参阅此答案。
对于Vim的(和gVim的),你可以-通过执行以下选项::set binary。设置为 binary 将按原样保存文件,并且不会在文档末尾插入换行符(除非已经有一个换行符,它将被保留)。您可以随时使用 恢复此选项:set nobinary。
纳米更容易一些。您可以使用-L标志启动 nano (或者--nonewlines如果您更喜欢视觉类型)。这将禁止在文件末尾自动添加换行符(只要实际上没有输入换行符)。理想情况下,您可以在~/.bashrc: 中设置此别名alias nano="nano -L",这将启动 Nano,其中包含 no newlines 标志!
由于我不确切知道您在做什么,我将向您指出为什么文件应以换行符结尾?这可以解释为什么他们在那里。简而言之,某些应用程序如果EOL在EOF.
小智 17
如果您使用的是 Ubuntu 12.04 或更高版本,您已经可以设置该行为。
dconf-editor)org?gnome? gedit? preferences? editorensure-trailing-newline)ensure-trailing-newline如果您不想自动添加换行符,请取消选中。输入以下命令
gsettings set org.gnome.gedit.preferences.editor ensure-trailing-newline false
Run Code Online (Sandbox Code Playgroud)
你就完成了。