Problemi nell'apertura dei file plist nell'editor di testo


20

Da Finder, posso visualizzare in anteprima un file plist senza alcuna difficoltà. Ad esempio, usando Quick Look con ~/Library/Preferences/com.apple.Safari.RSS.plistottengo una bella anteprima del suo contenuto:

Sguardo veloce

Tuttavia, se provo ad aprire il file, con TextEdit o con qualsiasi altro editor (ho provato SublimeText, TextMate, Vim, Nano e Coda 2 finora), la codifica sembra essere disattivata:

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

Ecco come appare se lo apro con TextEdit:

TextEdit

Ho provato a cambiare la codifica in Sublime Text e altre app, ma questo non aiuta.

qualche idea?

Sto correndo il 10.8.4.

Risposte:


23

I file plist non sono necessariamente testo semplice, quindi devono essere eseguiti tramite un convertitore. Finder e Xcode (che ha un editor plist) lo fanno senza dirlo all'utente

Il formato binario è documentato in questo codice C in modo che qualsiasi applicazione possa convertirlo e qualcuno ha scritto una descrizione del formato in inglese e più documentazione Apple qui, ma nota che fa riferimento a vecchi percorsi in/Developer/Documentation

Il plutil del programma della riga di comando può essere convertito in e da XML

ad es. per visualizzare un elenco di proprietà binarie in formato XML su stdout:

plutil -convert xml1 -o - <file name>

Anche per convertire un binario in un plist XML e poi lasciarlo in modo che il programma utente possa leggere entrambi.

plutil -convert xml1 <file name>

Grazie. Vedo. Quindi, se devo modificarlo, devo convertirlo in XML, aprirlo con un editor e quindi riconvertirlo. Presumo che sia così. Non c'è bisogno di rispondere se non ho sbagliato!
aprile

3
È inoltre possibile utilizzare plutil -convert xml1 ~/Library/Preferences/com.apple.Safari.RSS.plistper convertire il plist in XML sul posto. E dopo aver modificato il plist, non è necessario riconvertirlo in binario.
Lri,

1
> Finder e Xcode (che ha un editor plist) lo fanno senza dirlo all'utente Per essere precisi, non è il Finder che lo sta facendo, è QuickLook sotto forma di un plugin QuickLook.
Saagarjha,

È inoltre possibile utilizzare il defaults read <file>comando più recente per ottenere una sorta di visualizzazione JSON di esso.
dlamblin,



0

Ho creato un file CMD (batch) per aiutare le persone a convertire i file plist su Windows:
Istruzioni:
1.Copia tutto il codice
2.Crea un nuovo documento di testo 3.Invia il
codice
4. Salva il file
5. Rinomina il file con ".bat" invece di ".txt"
6.Aprilo

    @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

Oppure puoi utilizzare la versione che non si chiude dopo la conversione per consentire più conversioni senza riaprire il 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

1
Ciao e benvenuto a Ask Different! Questa risposta potrebbe essere più utile altrove: l'OP non sta indagando sull'uso di Windows.
Scot

-1

È possibile convertire il file dell'elenco delle proprietà dal formato binario in XML utilizzando la seguente riga di comando:

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

Quindi modificalo come al solito. In secondo luogo, non è necessario riconvertirlo, poiché di solito le app riconoscono entrambi i formati.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.