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

17

Dal Finder, posso visualizzare l'anteprima di un file plist senza alcuna difficoltà. Ad esempio, utilizzando Quick Look con ~/Library/Preferences/com.apple.Safari.RSS.plist ottengo una bella anteprima dei suoi contenuti:

Tuttavia,seprovoadaprireilfile,siaconTextEdit,siaconqualsiasialtroeditor(hoprovatoSublimeText,TextMate,Vim,NanoeCoda2finoadora),lacodificasembraesseredisattivata:

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

Ecco come appare se lo apro con TextEdit:

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

Qualche idea?

Sono in esecuzione 10.8.4.

    
posta apc 13.09.2013 - 21:08
fonte

5 risposte

19

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

Il formato binario è documentato in questo codice C così ogni applicazione può 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 programma a riga di comando plutil può convertire da e verso XML

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

plutil -convert xml1 -o - <file name>

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

plutil -convert xml1 <file name>
    
risposta data 13.09.2013 - 21:52
fonte
5

Puoi anche modificare i file plist con PlistBuddy , che è un programma da riga di comando.

PlistBuddy si trova in /usr/libexec/PlistBuddy .

    
risposta data 17.09.2013 - 03:36
fonte
1

Dato che hai citato il testo sublime, ora puoi utilizzare un plug-in che esegue automaticamente la conversione per te:

link

    
risposta data 01.05.2018 - 02:54
fonte
0

Ho creato un file CMD (batch) per aiutare le persone con la conversione dei file plist su Windows:

Istruzioni:
1. Copiare tutto il codice
2. Crea un nuovo documento di testo
3. Scrivi il codice
4. Salvare il file
5. Denominare il file con ".bat" anziché ".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
    
risposta data 04.05.2018 - 02:57
fonte
-1

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

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

Quindi modifica come al solito. In secondo luogo, non è necessario riconvertirli, poiché in genere le app riconoscono entrambi i formati.

    
risposta data 23.07.2015 - 18:11
fonte

Leggi altre domande sui tag