Problemy z otwieraniem plików plist w edytorze tekstu


17

Z Findera mogę wyświetlić podgląd pliku plist bez żadnych trudności. Na przykład, używając Quick Look z ~/Library/Preferences/com.apple.Safari.RSS.plist Mam ładny podgląd jego zawartości:

Quick Look

Jeśli jednak spróbuję otworzyć plik za pomocą TextEdit lub innego edytora (próbowałem dotychczas SublimeText, TextMate, Vim, Nano i Coda 2), kodowanie wydaje się być wyłączone:

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

Oto jak to wygląda, jeśli otworzę go za pomocą TextEdit:

TextEdit

Próbowałem zmienić kodowanie w Sublime Text i innych aplikacjach, ale to nie pomaga.

jakieś pomysły?

Używam 10.8.4.

Odpowiedzi:


20

pliki plist niekoniecznie są zwykłym tekstem, więc muszą być uruchamiane przez konwerter. Finder i Xcode (który ma edytor plist) robią to bez informowania użytkownika

Format binarny jest w tym udokumentowany Kod C więc każda aplikacja może go przekonwertować i ktoś napisał opis formatu w języku angielskim i więcej dokumentacji Apple tutaj ale zauważ, że odwołuje się do starych ścieżek /Developer/Documentation

Program wiersza poleceń plutil może konwertować do iz XML

na przykład aby wyświetlić listę właściwości binarnych w formacie XML na standardowym wyjściu:

plutil -convert xml1 -o - <file name>

Również konwertować plik binarny na plist XML, a następnie pozostawić go tak, aby program użytkownika mógł go odczytać.

plutil -convert xml1 <file name>

Dzięki. Widzę. Jeśli więc muszę go edytować, muszę go przekonwertować na XML, otworzyć za pomocą edytora, a następnie przekonwertować. Zakładam, że tak jest. Nie musisz odpowiadać, chyba że się pomyliłem!
apc

3
Możesz także użyć plutil -convert xml1 ~/Library/Preferences/com.apple.Safari.RSS.plist przekształcić plist w XML na miejscu. A po edycji plist nie musisz konwertować go z powrotem na binarny.
Lri

1
& gt; Finder i Xcode (który ma edytor plist) robią to bez informowania użytkownika Aby być precyzyjnym, to nie Finder to robi, to QuickLook w formie wtyczki QuickLook.
saagarjha



0

Zrobiłem plik CMD (wsadowy), aby pomóc ludziom w konwertowaniu plików plist na Windows:
Instrukcje:
1. Skopiuj cały kod
2. Utwórz nowy dokument tekstowy
3. Wklej kod
4.Zapisz plik
5. Zmień nazwę pliku na „.bat” zamiast „.txt”
6. Otwórz

    @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

Lub możesz użyć wersji, która nie zamyka się po konwersji, aby umożliwić wiele konwersji bez ponownego otwierania pliku:

    @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
Cześć i witamy w Ask Different! Ta odpowiedź może być bardziej przydatna gdzie indziej - PO nie pyta o użycie systemu Windows.
Scot

-1

Możesz przekonwertować plik listy właściwości z formatu binarnego na XML, używając następującej linii poleceń:

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

Następnie edytuj go jak zwykle. Po drugie, nie musisz go konwertować, ponieważ zazwyczaj aplikacje rozpoznają oba formaty.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.