テキストエディタでplistファイルを開けない


20

Finderから、問題なくplistファイルをプレビューできます。たとえば、クイックルックを使用して~/Library/Preferences/com.apple.Safari.RSS.plist、コンテンツの素晴らしいプレビューを取得します。

クイックルック

ただし、その後、TextEditまたは他のエディター(SublimeText、TextMate、Vim、Nano、Coda 2を試したことがあります)でファイルを開こうとすると、エンコードはオフになります。

bplist00Ò_"FixedRefreshesInBackgroundSettings_(com.apple.PreferenceSync.ExcludeSyncKeys ¡ 2]^����������������������������`

TextEditで開くと、次のようになります。

TextEdit

Sublime Textや他のアプリのエンコーディングを変更しようとしましたが、それは役に立ちません。

何かご意見は?

10.8.4を実行しています。

回答:


23

plistファイルは必ずしもプレーンテキストではないため、コンバーターを介して実行する必要があります。FinderとXcode(plistエディターがあります)はユーザーに通知せずにこれを行います

バイナリ形式はこのCコードで文書化されているため、どのアプリケーションでも変換でき、誰かがここで英語およびその他のAppleドキュメント形式の説明を書いていますが、/Developer/Documentation

コマンドラインプログラムplutilは、XMLとの間で変換できます。

たとえば、stdoutでXML形式のバイナリプロパティリストを表示するには:

plutil -convert xml1 -o - <file name>

また、バイナリを所定のXML plistに変換し、ユーザープログラムがいずれかを読み取れるようにそれを残します。

plutil -convert xml1 <file name>

ありがとう。そうですか。したがって、編集する必要がある場合は、XMLに変換し、エディターで開いてから変換し直す必要があります。これはそうだと思います。間違っていない限り返信する必要はありません!
apc

3
またplutil -convert xml1 ~/Library/Preferences/com.apple.Safari.RSS.plist、plistをXMLに変換するのにも使用できます。また、plistを編集した後、バイナリに戻す必要はありません。
Lri

1
> FinderとXcode(plistエディターを使用)は、ユーザーに通知せずにこれを行います。正確には、これを行うのはFinderではなく、QuickLookプラグインの形式のQuickLookです。
-saagarjha

新しいdefaults read <file>コマンドを使用して、一種のJSONビューを取得することもできます。
dlamblin

5

また、コマンドラインプログラムであるPlistBuddyを使用して、plistファイルを編集することもできます。

PlistBuddyはにあり/usr/libexec/PlistBuddyます。


1
Appleはそのページを削除しましたが、アーカイブが見つかりません。ただし、macOS Mojaveでもマニュアルは利用可能です。
フランクリンゆう

@FranklinYu、確かに。marcosantadev.com/manage-plist-files-plistbuddyにもチュートリアルがあります。
lhf


0

Windowsでのplistファイルの変換を支援するCMD(バッチ)ファイルを作成しました:
手順:
1.すべてのコードを
コピーします2.新しいテキストドキュメントを
作成します
3. コードを貼り付けます
4.ファイルを保存します5. ファイルの名前を変更します「.txt」ではなく「.bat」6.
開く

    @echo off
    title PLIST Converter ~SyndiShanX
    mode 1000
    color 0b

    ::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Separation-Bar~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    :filedirectory
    cls
    echo Either: Type the Directory of the File: (Ex. C:\Users\(UserName)\Desktop\File.plist) or Drag and Drop File onto This Window
    echo Made by: [SyndiShanX]
    echo File Directory:
    set /p directory=
    cls

    ::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Separation-Bar~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    :convertfile
    start "" "C:\Program Files\Common Files\Apple\Apple Application Support\plutil.exe" -convert xml1 %directory%
    goto complete

    ::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Separation-Bar~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    :complete
    title File Conversion Complete!
    color 0a
    echo File Conversion Complete!
    pause
    cls
    goto exit

    ::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Separation-Bar~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    :exit
    color 0c
    title Exiting...
    echo Exiting...
    pause
    cls
    exit

または、変換後に閉じないバージョンを使用して、ファイルを再度開かずに複数の変換を許可できます。

    @echo off
    title PLIST Converter ~SyndiShanX
    mode 1000
    color 0b

    ::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Separation-Bar~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    :filedirectory
    cls
    echo Either: Type the Directory of the File: (Ex. C:\Users\(UserName)\Desktop\File.plist) or Drag and Drop File onto This Window
    echo Made by: [SyndiShanX]
    echo File Directory:
    set /p directory=
    cls

    ::~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Separation-Bar~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    :convertfile
    start "" "C:\Program Files\Common Files\Apple\Apple Application Support\plutil.exe" -convert xml1 %directory%
    goto filedirectory

1
こんにちは、Ask Differentへようこそ!この答えは他の場所でより役立つかもしれません-OPはWindowsの使用について問い合わせていません。
スコットランド、

-1

次のコマンドラインを使用して、プロパティリストファイルをバイナリ形式からXMLに変換できます。

plutil -convert xml1 -o file.plist file.plist

その後、通常どおりに編集します。第二に、通常アプリは両方の形式を認識するため、元に戻す必要はありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.