Kesulitan membuka file plist di editor teks

20

Dari Finder, saya dapat melihat pratinjau file plist tanpa kesulitan. Misalnya, menggunakan Tampilan Cepat dengan ~/Library/Preferences/com.apple.Safari.RSS.plistsaya mendapatkan pratinjau konten yang bagus:

Lihat Cepat

Namun, jika saya kemudian mencoba membuka file, baik dengan TextEdit, atau editor lain (saya sudah mencoba SublimeText, TextMate, Vim, Nano, dan Coda 2 sejauh ini), pengkodean tampaknya tidak aktif:

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

Begini tampilannya jika saya membukanya dengan TextEdit:

TextEdit

Saya sudah mencoba mengubah penyandian di Sublime Text dan aplikasi lain, tetapi itu tidak membantu.

Adakah pikiran?

Saya menjalankan 10.8.4.

apc
sumber

Jawaban:

23

file plist tidak harus berupa teks biasa sehingga harus dijalankan melalui konverter. Finder dan Xcode (yang memiliki editor plist) melakukan ini tanpa memberi tahu pengguna

Format biner didokumentasikan dalam kode C ini sehingga aplikasi apa pun dapat mengonversinya dan seseorang telah menulis deskripsi format dalam bahasa Inggris dan lebih banyak dokumentasi Apple di sini, tetapi perhatikan bahwa itu merujuk pada jalur lama di/Developer/Documentation

Plutil program baris perintah dapat dikonversi ke dan dari XML

misalnya untuk melihat daftar properti biner dalam format XML di stdout:

plutil -convert xml1 -o - <file name>

Juga untuk mengkonversi biner ke XML plist di tempat dan kemudian membiarkannya sehingga program pengguna dapat membaca keduanya.

plutil -convert xml1 <file name>
pengguna151019
sumber
Terima kasih. Saya melihat. Jadi jika saya perlu mengeditnya, saya perlu mengubahnya menjadi XML, buka dengan editor, dan kemudian ubah kembali. Saya akan berasumsi demikian. Tidak perlu menjawab kecuali saya salah!
apc
3
Anda juga dapat menggunakan plutil -convert xml1 ~/Library/Preferences/com.apple.Safari.RSS.plistuntuk mengonversi plist ke XML. Dan setelah Anda mengedit plist, Anda tidak perlu mengubahnya kembali ke biner.
Lri
1
> Finder dan Xcode (yang memiliki editor plist) melakukan ini tanpa memberi tahu pengguna. Tepatnya, bukan Finder yang melakukan ini, melainkan QuickLook dalam bentuk plugin QuickLook.
saagarjha
Anda juga dapat menggunakan defaults read <file>perintah yang lebih baru untuk mendapatkan semacam tampilan JSON.
dlamblin
5

Anda juga dapat mengedit file plist dengan PlistBuddy , yang merupakan program baris perintah.

PlistBuddy terletak di /usr/libexec/PlistBuddy.

lhf
sumber
1
Apple menghapus halaman itu, dan saya tidak dapat menemukan arsip apa pun. Manual masih tersedia di macOS Mojave.
Franklin Yu
@ FranklinYu, memang. Ada juga tutorial di marcosantadev.com/manage-plist-files-plistbuddy .
lhf
0

Saya membuat File CMD (Batch) untuk membantu orang-orang dengan Mengkonversi file daftar pada Windows:
Instruksi:
1. Salin semua kode
2. Buat Dokumen Teks baru
3. Tempel Kode
4. Simpan File
5. Ubah nama file 5. Ubah nama file dengan ".bat" bukan ".txt"
6.Buka

    @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

Atau Anda dapat menggunakan versi yang tidak ditutup setelah konversi untuk memungkinkan banyak konversi tanpa membuka kembali file:

    @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
SyndiShanX
sumber
1
Hai, dan selamat datang di Ask Different! Jawaban ini mungkin lebih bermanfaat di tempat lain - OP tidak menanyakan tentang penggunaan Windows.
Scotlandia
-1

Anda bisa mengonversi file daftar properti dari format biner ke XML menggunakan baris perintah berikut:

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

Kemudian edit seperti biasa. Kedua, Anda tidak perlu mengubahnya kembali, karena biasanya aplikasi mengenali kedua format.

kenorb
sumber