改行や改行を表示できるLinuxのテキストエディタを知っている人はいますか?Vimはこの機能をサポートしていますか?
改行や改行を表示できるLinuxのテキストエディタを知っている人はいますか?Vimはこの機能をサポートしていますか?
回答:
:set list
Vimでは空白が表示されます。行末は「$
」と表示され、復帰は通常「」と表示されます^M
。
:set list
表示されません^M
。供給-b
のvi / vimの動作するためのオプションを。または、vimが読み込まれたら、次のように入力します:e ++ff=unix
:set nolist
公式回答に同意しない場合:
:set list
^ M文字(CR)は表示されません。vi / vimに-bオプションを指定すると機能します。または、vimがロードされたら、と入力し:e ++ff=unix
ます。
:help edit
示していますe[dit]! [++opt] [+cmd]
。そして、:help ++e
言う[++ OPT]引数はオプション「fileformat」[..]の値を強制するために使用することができます。
:set list
改行($
)を:e ++ff=unix
示し、CR(^M
)を示します。あなたは両方、見たい場合は:set list
、その後:e ++ff=unix
:set ff=unix
Vimに(ファイル形式の設定の一部として)行末をUNIXスタイルに変更するように指示します。これにより、^ M文字は表示されなくなります(したがって表示されません)。実際に内容を変更せずに:e ++ff=unix
ファイル形式を強制的に設定するように指示しunix
ます。したがって、vimはそれをUnixファイルのように読み取り、CR文字を追加として認識し、^ Mとして表示します。
vim
、何らかの理由で私にとってはどちらも動作しません...私は-b
オプションも意味もしません::e ++ff=unix
(
VIはx0A
、次の行に後続のテキストを表示することにより、改行(LF文字、コード)を表示します。
-b
バイナリモードのスイッチを使用します。例:vi -b filename
またはvim -b filename --
。
次にx0D
、Unixスタイルのファイルでは通常使用されないCR文字()を文字として表示します^M
。
Unix
環境で作業しているため、通常は行末を確認する必要はありません。ただし、ファイルに何かがある場合は、Windowsタイプの行末について警告されます。ウィルvi -b filename
か:set binary
だけを示して^M
、それは窓のタイプのファイルなし他の行末そうですか?
なぜ:set list
CRがないとCRが表示され^M
ないのe ++ff=unix
か、なぜCR と:set list
は何の関係もないのかを明確にするため^M
です。
内部的には、Vim がファイルをバッファーに読み込むと、すべての行末文字を独自の表現に置き換えます(それをと呼びましょう$
)。削除する文字を決定するために、最初に、ファイルに保存されている行末がどの形式であるかを検出します。唯一CRLFがある場合'\r\n'
のみCR '\r'
またはLFのみ'\n'
行終了文字、その後'fileformat'
に設定されdos
、mac
そしてunix
それぞれ。
ときにlist
オプションが設定され、Vimは表示$
改行が何に関係なく発生した文字fileformat
が検出されたオプションを選択します。改行の独自の内部表現を使用し、それが表示されます。
今、あなたは時に書く Vimの挿入行終了文字が何によると、ディスクにバッファfileformat
オプションは、基本的にすべてのそれらの内部変換、検出された$
適切な文字でのを。fileformat
たまたまそうなった場合は、内部の改行の代わりにunix
単にそれを書くでしょ\n
う。
コツは、Vimにdos
エンコードされたファイルをunix
1つとして読み込ませることです。正味の効果は、すべてのをそのまま\n
残し、バッファー内の\r
として表示すること^M
です。設定:set list
はさらに、内部の行末をとして表示し$
ます。結局のところ、エンコードされた改行の^M$
代わりに表示されますdos
。
また、の表示と:set list
は関係がないことに注意してください^M
。あなたは(あなたが無効になっている作る自分でそれを確認することができますlist
使用して単一のCRを挿入することにより、最初のオプションを)CTRL-V
に続いてEnter
、挿入モードインチ バッファをディスクに書き込んで再度開くと、オプションが0に設定されている^M
にもかかわらず表示list
されます。
ファイル形式の詳細については、http://vim.wikia.com/wiki/File_formatまたは:help 'fileformat'
Vimに入力してください。
次のコマンドを試してください。
:set binary
VIMでは、これは「-b」コマンドラインオプションを使用するのと同じことを行う必要があります。これをスタートアップ(つまり.vimrc)ファイルに入れると、常に適切な場所に配置されます。
多くの* nixシステムでは、ファイルを処理し、疑わしい行末の問題を修正できる「dos2unix」または「unix2dos」コマンドがあります。行末に問題がない場合、ファイルは変更されません。
set binary
と同じではありませんvim -b filename.py
。なぜだと思いますか?私はチェックしましたがhelp
、あなたの言うことは一般的に正しいようです。なぜそうなのか、どうしたら分かりますか?
:e ++ff=unix
タイプファイル^M
を使用しても正しく表示されません。表示されませんunix
。問題は今のところ解決されていると思います...
改行はgeditエディターを使用して表示できます。
まず、インストールしていない場合:
sudo apt-get install gedit
次に、geditプラグインをインストールします。
sudo apt-get install gedit-plugins
Draw Spacesプラグインを選択し、[ Preferences]に入力して、[ Draw new lines ]を選択します。
使用VSCodeをインストールできるライン語尾拡張子を。
Sublime Text 3には、行末を表示して任意の行末タイプを挿入できるRawLineEditというプラグインがあります。
shift + ctrl + p
プラグインの名前を入力し始め、行末を表示するように切り替えます。