FreeBSDが文字セットのソート順序を定義する領域ファイル(LC_COLLATE / locale / colldef)を生成する方法

FreeBSDが文字セットのソート順序を定義する領域ファイル(LC_COLLATE / locale / colldef)を生成する方法

婦人声明:私はこれがよく知られていない高度な技術であり、私のシステムを爆破したり、カエルの雨を引き起こしたり、未知の奇妙で予測不可能な副作用を引き起こす可能性があることを知っています。とにかく助けてください:)誰も捕まらないと約束します。責任:)

単純なバージョンでは、アンダースコアが大文字と小文字の間ではなくアルファベット順に文字と数字の前に来るようにFreeBSDサーバーの文字セットソート順序を変更したいと思います(アンダースコアはASCII / Unicodeで「XYZ」の前に来て、「および」abc ")。

その理由は、私が約20年間、すべてのファイルとディレクトリを一緒に保持してきたからです。先頭にさまざまな数のアンダースコアがある「重要」文字は、Windowsおよびそれ以前のバージョン(少なくともUnicodeではなく順序記号 - >数字 - >文字)でリストの先頭になるように強制します。このような状況で今最下位圏にあるということは非常に不安なことだ。恥ずかしいことに、私はFreeBSDサーバーの文字セットのソート順序を少し変更して、英数字の後ろではなく前に下線を付けたいと思いました。

これをベースとするシステムや共用ソフトウェアには(特に他の言語はソート順序が異なるため)重要なものがないと考え、他の文字順序を変更する必要もありません。

FreeBSDソースコードのコメントを見て、LC_COLLATE必要なファイルがUnicode Inc(また修正された可能性があります)のデータに基づくFreeBSDソースコードのツールまたはFreeBSDソースコードの他の制御ファイルによって生成されたことがわかりました。改善する。localecolldefman colldef

人間が読める標準定義をカスタマイズし、ビルドツールを使用してすべての既存のファイルをコピーしますが、照合順序定義への変更を含むカスタムロケールを構築することが含まれます。

私はこれまでこの点を超えておらず、FreeBSDのビルドシステムが実行されているロケール文字セットのソートに使用される最終的な組み合わせ定義データファイルに関連する人が編集できるソースファイルから取得するプロセスの明確な理解を得たいと思います。システム/比較機能。具体的にこれを行うにはどのような手順を実行する必要がありますか?

ちなみに、このことを通して多くのことを学ぶことができることを願っています。しかし、最も重要なのは、私が下線を引く部分が私が非常になじみのあるところにあったらと思います。

関連情報