同僚は、Qtの組み込みQTextStreamクラスを使用してUbuntuシステムで/etc/network/interfacesファイルを再構築しています。このコードの一部には、コーデックがUTF-8に設定されたQTextStreamのsetCodec()メソッドへの呼び出しが含まれます。 (望むよりhttps://doc.qt.io/qt-5/qtextstream.html#setCodec気になる方)
Linux構成ファイルが何であるか疑問に思います。しなければならないISO 8859-1は、私が考えている「純粋なASCII」テキストスタイルに最も近いように見え、ほとんどの設定ファイルは通常の英語であり、基本文字以上を必要としないので、私は(おそらく素直に)これが正しいと仮定しました。 、数字、およびいくつかの句読点がより重要です。
しかし、英語以外の国の誰かがISO-8859-に含まれていない他の文字を使用してそのようなファイルにコメントを追加したい場合はどうすればよいのでしょうか。彼らはただ「不運」なのでしょうか?
明らかに、Ubuntu / Linuxシステムでは、次のような「標準」構成ファイルをたくさん見つけることができます。
- /etc/ネットワーク/インターフェース
- /etc/ntp.conf
- /etc/ホスト名
- ...
そのようなファイルで実際にどのエンコーディングがサポート/予想されるのかを喜んで体重を置く人はいますか?これは実際にどこに文書化されていますか?新しい Linux システムサービスの作成者が従うべき「Linux 開発者宣言」の一種に明記されていますか?それでは、この情報の明確な情報源はどこにありますか?
答え1
一般的なエンコーディングはLANG環境変数を介して設定できますが、ほとんどすべてのLinuxディストリビューションとツールがUTF-8に移行されました。構成ファイルの最大の利点は、ASCII文字のみを使用するすべての文字列です。はい有効なASCII。したがって、ほとんどの構成ファイルはとにかくこれらの文字のみを使用するため、重要ではありません。