Gedit、Gvim、Vim、Nanoがファイルの終わりの改行文字を追加しないようにする方法


42

テキストファイルの最後の行を、改行文字が追加されていない単純なテキスト文字列にしたい場合があります。別のファイルを連結します。

Enterキーを押さなくても、改行文字を追加することにより、いくつかのエディターが自動的にテキストを変更します。

Remains unmodified: Emacs、SciTE、Kate、Bluefish、Notepad(ワイン)

Newline is added: Gedit、Gvim、Vim、Nano

Gedit、Gvim、およびVimを微調整して、入力した内容だけを保存する方法があるかどうかを知りたいと思います。

私は現在Geditを使用していますが、Gvim / Vimに手を出しているので、これらのオン/オフを「切り替える」方法を知っていると便利です。

PS。Gedit、Gvim、およびVimで同じファイルを再度開くと、カーソルのファイルの終わりの位置はテキストの終わりになりますが、実際には次の(空の)行に表示されるはずです。これは誤解を招く(しかし、それは私が慣れているためです)。

上記の観察を確認するために、hexeditorを使用しました。

回答:


49

geditの 最後に挿入改行持つ無効にする方法があるようには思えない参照この答えをgEditをインストールする

以下のためのVimの vimをインストールする(とのgvim vimをインストールするすることができます) -次のオプションを実行することによって::set binary。バイナリに設定すると、ファイルがそのまま保存され、ドキュメントの最後に改行が挿入されません(既に保持されている場合を除き)。いつでもこのオプションを元に戻すことができます:set nobinary

ナノ Nanoをインストールは少し簡単です。-Lフラグを付けてnanoを起動でき--nonewlinesます(または、より視覚的なタイプの場合)。これにより、ファイルの最後に改行が自動的に追加されなくなります(実際に入力されていない限り)。理想的には、このエイリアスを~/.bashrc:に設定alias nano="nano -L"して、改行フラグなしでNanoを起動できます!

あなたが何をしているのか正確にはわからないので、なぜファイルは改行で終わるべきなのかを指摘します。そこにいる理由を説明するかもしれません。つまり、一部のアプリケーションはEOLEOF


1
マルコ、素晴らしい答えをありがとう...「なぜ...」は「なぜ」の興味深いコレクションです...私は個人的に非常に「改行認識」です(だから私はそれに気づきました:)、それは確かに良い皆のためのリファレンス(私自身を含め)...しかし、私が知っていることを好むか私が追加、または追加していないということを...多分Geditのための不明瞭なプラグインがあります...
Peter.O

3
あたりとして... GVIM / Vimのためにそれを設定する2つのオプションが必要であると思わ助けEOL: ...When writing a file and this option ('eol') is off and the 'binary' option is on, no EOL will be written for the last line in the file.
Peter.O

1
Gedit(Launchpad)はこの問題を認識しており、「ウィッシュリスト」に掲載しています.... )むしろユーザーを混乱させる」
-Peter.O

2
nanoの場合、デフォルトでモードset nonewlinesを使用するために〜/ .nanorc(または/ etc / nanorc)を配置でき-Lます。
mwfearnley

editorconfig(editorconfig、org)を使用します-vimおよびgeditで使用可能なプラグイン。.editorconfigファイルで必要なオプションを指定します。
ddbug

16

gEditの場合:

Ubuntu 12.04以降を使用している場合は、既に動作を設定できます。

グラフィカルユーザーインターフェイスを通じて:

  1. dconfエディターの実行(dconf-editor
  2. 行くorggnomegeditpreferenceseditor
    (または単にを検索ensure-trailing-newline
  3. ensure-trailing-newline改行を自動的に追加したくない場合はチェックを外します。

コマンドラインで:

  1. ターミナルを開きます(ctrl+ alt+ T
  2. 次のコマンドを入力してください

    gsettings set org.gnome.gedit.preferences.editor ensure-trailing-newline false
    

    これで完了です。

参照| ランチパッドのバグ


1
ありがとう。知っておくといいです。私はそれを試してみましたが、動作します...(+1)
Peter.O

pluma editorはどうですか?(
プラマの

0

1行のファイルだけを書きたい場合は、おそらくechoが最も簡単な解決策です。

echo -n "the contents of my file" > myfile
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.