Mac:〜/ .CFUserTextEncodingの目的は何ですか?


38

だから私は.CFUserTextEncoding私のホームディレクトリにこのファイルを持っています。Googleの検索結果は理想的とは言えず、古いいフォーラムページで満たされています。Appleは私に無関係なサポート記事を提供します。ADCは、無関係な技術情報を提供してくれます。

これまでに収集できるのは、Core Foundationに関連していることと、ユーザーテキストのエンコードです。とにかく:

  • なぜ私はそれを持っているのですか?
  • 持てないの?
  • それは何のために、何に影響しますか?
  • それはどの形式ですか?
  • 手動で編集する必要がありますか?
  • とにかく、私はできますか?

または、コアの基盤のためにこれはstackoverflowにあるべきですか?
kch 09

SOがCoreFoundationに関連しているため、SOの方が幸運かもしれません。
ローレンスベラスケス

回答:


39

~/.CFUserTextEncodingユーザーのデフォルトのテキストエンコーディングと優先言語を保存します。以下は、Mac OS Xリファレンスライブラリのテクニカルノート2228からの抜粋です。

Core Foundationは、ユーザーのホームディレクトリにアクセスして、デフォルトのテキストエンコーディング(〜/ .CFUserTextEncodingファイルに格納されている)を判別しようとします。EUIDをログインしているユーザーのUIDに切り替えてからCFを呼び出すと、Core Foundationがこのファイルにアクセスするときに問題が発生する場合があります。Core Foundationに使用するデフォルトのテキストエンコーディングを指示する環境変数を設定することにより、このアクセスを防ぐことができます。環境変数名は__CF_USER_TEXT_ENCODINGです。その値は、フォーマット文字列「0x%X:0:0」で構成する必要があります。%Xは、ログインしているユーザーのUIDに置き換えられます。

デフォルトでは、私のコピーに~/.CFUserTextEncodingは0:0 が含まれています。コロンの左側の最初の数字は、デフォルトのエンコーディングを表します。私のファイルの0はkCFStringEncodingMacRoman用です。エンコーディングのリストと関連する番号は、CFStringリファレンスにあります。

コロンの後の値は、ユーザーの優先言語を表します。優先言語を変更するには、[システム環境設定]の[言語とテキスト]に移動し、新しい言語をリストの一番上に移動します。ファイルの変更先を確認するには、ターミナルを開いてを入力しcat ~/.CFUserTextEncodingます。優先言語を英語からドイツ語に変更したときに0:3になりました。


そう。エンコード値をkCFStringEncodingUTF8の値に変更するのは良い考えのように聞こえますか?
kch 09

4
いいね ファイルを0x08000100:0に変更して、UTF-8テキスト/プレーンファイルでFinderのクイックルックをトリガーすると、拡張文字が正しく表示されるようになりました。
kch 09

2
echo "0x08000100:0" > ~/.CFUserTextEncodingトリックを行いますが、これはAdobe Illustrator CS5でファイルを保存するときに問題を引き起こすことが知られています。
マティアスバイネンズ

echo -n "0x08000100:0x0" > ~/.CFUserTextEncoding意図しないnewliineの追加を避けるために使用します。
MERM

[言語と地域]設定パネルを開くと、ファイルがデフォルトのエンコードにリセットされる場合があります。
ShadSterling

4

ファイルは、コロンで区切られた2つの数字です。2番目はアクティブな言語に対応しています。質問に答える:

なぜ私はそれを持っているのですか?それは何のために、何に影響しますか?アプリケーションは、起動時に環境を取り込むために使用します。

持てないの?ほとんどの場合、再作成されます。

それはどの形式ですか?任意。

手動で編集する必要がありますか?Macをランダムな言語で使用する準備ができている場合!

とにかく、私はできますか?もちろん。


なぜフォーマットがarbitrary意的であると述べるのですか?ファイル内の数字、コロン、数字(0:0など)の形式は、ユーザーのデフォルトのテキストエンコーディングとユーザーの優先言語に対応しています。私にはarbitrary意的ではないようです。
マシューランキン

1
スペース、アポストロフィなどのように、コンマで十分です。数字は逆の場合もあります。それらは任意に選択されました。
ジェレミーL

1
形式!=コンテンツ。
ジェレミーL

1
このファイルを変更しても、Macを実行する言語に影響はありません。これは、ユーザーのグローバルドメイン設定のAppleLanguages配列に保存されます。
lensovet 14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.