問題タブ [eol]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - Windows の行末 (EOL) 文字を見つける方法
Cygwin の UNIX 貼り付けユーティリティを使用して貼り付ける必要がある数百 GB のデータがありますが、ファイルに Windows EOL 文字があると正しく機能しません。データには Windows の EOL 文字が含まれている場合と含まれていない場合があり、必要がなければ dos2unix の実行に時間を費やしたくありません。
私の質問は、Cygwin で、これらのファイルに Windows EOL CRLF 文字が含まれているかどうかをどのように判断できますか?
テストデータを作成して実行してみました
しかし、dos2unix が実行されているかどうかに関係なく、一致するように見えます。
ありがとう。
windows - Mercurial リポジトリの行末パターンを変換する
Windows の行末マーカーを含むファイルが取り込まれたリポジトリがありますが、Unix EOL パターンを使用するつもりでした。
1 つのオプションは、すべてのファイルを手動 (dos2unix) で変更してから、リポジトリを完全に上書きする変更セットをコミットすることです。必要に応じてこれを行うことができますが、避けたいと思います。使用hg convert
または別の方法で、別の EOL マーカーを使用してリポジトリを再構築することは可能ですか? 私はすべての変更をエクスポートし、それらを変換し、そのようにリポジトリを再構築することを検討しましたが、Mercurial wiki は、マージ変更セットでエクスポートを信頼すべきではないと示唆しており、そのオプションを除外しているようです.
可能であれば、EOL 拡張機能の使用は避けたいと考えています。
svn - サーバーで svn:eol-style=native を強制しますか?
現在、プロジェクトに追加された新しいファイルごとに subversion プロパティが確実にeol-style
設定されるようにするには、これを各開発者マシンのファイルに追加する必要があります。native
~/.subversion/config
svnサーバーで同等のことを行う方法はありますか?
linux - PHPファイルの^M
^ Mは、ファイルをWindowsボックスから*NIXボックスに移動するときに各行の後に残るdosキャリッジリターンです。私はそれを取り除く方法を知っています。PHPスクリプトから削除する必要があるという美学以外の理由があるかどうか知りたいです。
PHPスクリプトは、このスクリプトで正常に実行されます。通常、私はためらうことなくスクリプトを削除しますが、svnblameコマンドの各行の横に自分の名前を付けたくありません。(要点以外)。
質問:美学以外に削除する必要がある理由の機能性に関して理由はありますか?それを維持するために何も壊していないようです。(私に正当な理由を教えてくださいplz)
python - EOL は、Calculate Field で Python を停止します
これらのスクリプトを変更して、エラーを無視して実行を続けることができる人はいますか? スクリプトがこれらのエラーをスキップして残りの行を終了させる方法を理解する必要があるだけです。
完全な Python スクリプトは次のとおりです。
そして、ここに私が遭遇したエラーがあります: トレースバック (最新の呼び出しが最後):
git - git-apply が行末を変更しないようにする方法
core.eol=crlf
、core.autocrlf=true
およびで設定されたgitリポジトリがありcore.safecrlf=true
ます。
別のリポジトリから自分のリポジトリにパッチを適用するcrlf
と、影響を受けるファイルのすべての行末が に変更されlf
ます。現在、次のようにパッチを適用しています。
--ignore-whitespace
(パッチを正常に適用するには、使用する必要があるようです。)
私の現在の回避策はunix2dos
、ファイルで実行することです。私のeol設定に準拠するために適用するより良い方法はありますか?
git - gitattributeseol設定によるステージングされていないコミットの上書き
.gitattributesが原因でクローン作成時にeolが自動的に変更されるフォークがあります。これはアップストリームで修正されています。上流をマスターにマージしたいと思います。ただし、これらのステージングされていない変更を取り除くことはできません。リセットできず、何かが足りない場合を除いて、それらを隠しておくことはできません。アップストリーム/マスターをマスターにマージして、これらのローカルのステージングされていない「変更」を上書きするにはどうすればよいですか?
windows - lua DOS<==>Unixによって出力される行末を制御する方法
私はluadocを使用しており、UnixとWindowsで実行しています。残念ながら、DOS / Unixの行末のため、出力はシステムごとに異なります。これにより、すべてのファイルが変更された(水銀)と見なされるため、ソース管理が非常に混乱します。luaにどちらか一方を使用させるにはどうすればよいですか?
diff - 新しいファイルを作成するとき、または行末が変更されたときに、間違った行末を使用する diff およびパッチ
diff を使用してパッチを作成しようとしていますが、新しいファイルを作成するときにファイルで使用されている行末文字を使用したり、ファイルが変更されたときに行末を変更したりするパッチを取得できません。基本的に、私はやっています:
dir1
との間のすべての変更は適切に適用されますが、ファイルが行末マーカーとして使用されている場合でも、dir2
新しいファイルの行末文字がデフォルトで に設定されます。また、それらの違いが行末の変更だけであるファイルは、まったくパッチされていません-diffは変更を認識していないようです。CR+LF
dir2
LF
したがって、実行diff -rq dir2 dir3
すると大量の が得られますがFiles aaa and bbb differ
、正常にdiff -rwq dir2 dir3
動作します。
Windows XP でdiff - GNU diffutils version 2.7
andpatch 2.5
を使用しています。UnxUtils
パッチに含まれる新しいファイルと変更されたファイルの行末を元のファイルのままにする方法はありますか?
stream - FortranでストリームI/Oを使用してEOF/EOLを確認するにはどうすればよいですか?
FORTRANストリーミングI/Oを使用して、テキストファイルの行数を通知するプログラムを作成したいと思います。アイデアは次のようなものを作ることです:
(私は変数宣言を含めませんでしたが、それらが何であるかを理解できると思います。唯一の重要な説明は、cCharacterがLEN = 1であるということです)
私の問題は、ファイルから読み取った文字が行末なのかファイルの終わり(コードの「if」)なのかを確認する方法がわからないことです。このように文字を読んで印刷すると、最終的には元のテキストと同じ場所に改行が入るので、どういうわけか「文字」として読み取って認識していると思います。おそらく、文字を整数に変換し、適切な数と比較しますか?それとももっと直接的な方法がありますか?
(レジスタ読み取り(編集:レコード読み取りを意味します)を使用して、行をより簡単に読み取り、IOステータスを追加してeofをチェックするプログラムを実行できることは知っていますが、「行カウンター」は単なる便利な例です。テキストファイルをより制御された方法で移動する方法を学ぶことです)