Jak edytować plik .plist?

40

Jaka jest najlepsza aplikacja do otwierania i edytowania pliku Plist?

Pierre Watelet
źródło
to nie ja, ale ktoś głosował za zamknięciem ... Myślę, że jeśli zmieniłeś swoje pytanie, aby bardziej szczegółowo określić, co próbujesz zrobić, nie uzyskałby żadnych „subiektywnych” głosów.
Robert S Ciaccio
7
Głosujesz na zakończenie bez komentowania? Dobra robota, zespole!
Philip Regan,
To dobre pytanie. Kilka razy chciałem otworzyć plik .plist, ale nawet po pobraniu aplikacji wydawało się to (bardzo) trudne, więc się poddałem.
Nicolas Barbulesco

Odpowiedzi:

27

Plik PList, jak powiedział Mankoff, to po prostu specjalnie sformatowany plik XML, więc możesz go edytować i tworzyć w programie takim jak TextEdit.

Jednak ze względu na specyficzny charakter PLists do rozwoju, korzystanie ze specjalnego programu, takiego jak Xcodelub Property List Editorstaje się o wiele bardziej owocnym przedsięwzięciem. Wynika to z tego, że nie tylko automatycznie formatuje kod XML, ale faktycznie tłumaczy kluczowe identyfikatory i warstwy na czytelne słowa, a także w przypadku niektórych wartości udostępnia menu rozwijane, w którym należy wpisać poprawne odpowiedzi. Zwłaszcza podczas pracy z listami iPhone'a, gdy za pomocą Plist można ustawić wiele zmiennych środowiska wykonawczego, łatwe tworzenie nowych pól i wiedza o tym, co je wstawić, sprawia, że ​​jest to o wiele łatwiejsze.

Możesz pobrać bot Xcode i PList Editor ze strony Apple Developer http://developer.apple.com za darmo, pobierając najnowszą wersję Xcode.

SeniorShizzle
źródło
6
IIRC niektóre listy są jednak skompresowane, co powoduje, że nie można ich otworzyć w edytorze tekstu bez ich uprzedniego odkodowania. Narzędzia Apple wykonują to jednak automatycznie i ponownie.
Lloeki,
Doskonale, więcej powodów, by używać Xcode 4!
SeniorShizzle
5
Gdyby tylko… ! Ale nie, niektóre pliki .plist są binarne lub coś takiego, a TextEdit nie jest dla nich wystarczający.
Nicolas Barbulesco
Pamiętaj, że w zależności od konkretnego przypadku użycia może istnieć narzędzie lepiej dopasowane do zadania, przeznaczone do edycji określonego typu pliku listy plist. Na przykład możesz użyć Apple Configurator do edycji profili iOS (rozszerzenie .mobileconfig) lub Clover Configurator do edycji profili rozruchowych Clover.
Manchineel
57

Jeśli plik Plist ma format XML, możesz go edytować w dowolnym edytorze tekstów, takim jak TextEdit. Jeśli plik plist ma format binarny, możesz go najpierw przekonwertować na XML, uruchamiając:

plutil -convert xml1 file.plist

Jeśli chcesz wrócić do formatu binarnego po edycji:

plutil -convert binary1 file.plist

Jeśli masz Xcode 4.3 lub nowszy, możesz go użyć do edycji list właściwości w edytorze graficznym, takim jak ten:

Xcode 4.2 i wcześniejsze dostarczono z osobną aplikacją do edycji list właściwości ( /Developer/Applications/Utilities/Property List Editor.app/).

Izaak Rabinowicz
źródło
Jak wskazano w tym rozwiązaniu, jest całkowicie możliwe użycie plutil -convert json $file(lub xml), a następnie edycja pliku za pomocą dowolnego edytora (jak vi), a na koniec konwersja go z powrotem plutil -convert binary1 $file.
7heo.tk
plutil -p <file>„wydrukuje listę nieruchomości w sposób czytelny dla człowieka” zamiast ją przekształcić
dentarg
1
To jest bardziej kompletna odpowiedź i powinna być zaakceptowana. Na przykład nie można bezpośrednio edytować ~ / Library / Preferences / .GlobalPreferences.plist bez konwersji.
Maurice Schleußinger
6

Dobry program, taki jak TextWrangler, może edytować .plistpliki binarne bez uprzedniej ich konwersji za pomocą terminala. Po prostu otwórz plik tak jak każdy inny (np. Przeciągnij i upuść ikonę programu, okno dialogowe Otwórz plik lub Otwórz za pomocą Findera lub ...)

Daniel
źródło
1
Ale wartości są nieczytelne.
Nicolas Barbulesco
4

Ponieważ Apple pozbyło się GUI Property List Editor, Xcode jest najlepszą darmową opcją, jeśli chcesz być pewien wyniku.

Niektóre z nich używają ogólnego edytora kodu do edycji plików plist. Ponieważ słowniki używają wpisów takich jak

<key>some key</key>
<string>some value</string>
<key>another key with boolean value</key>
<true />

Możesz utworzyć prawidłowy plik XML, który nie jest prawidłowym plikiem plist, na przykład:

<key>some key</key>
<!-- oops, forgot to enter a value - still valid XML -->

<!-- valid XML, not a plist -->
<key>another key with boolean value</key>
<true>yes</true>

Jeśli chcesz wejść na rynek, Plistinator będzie edytować zarówno pliki binarne, jak i pliki XML.

Pełne ujawnienie: jestem autorem Plistinatora, a 12,99 USD kosztuje moje ramen i czynsz.

sez
źródło
czy to lepsze niż XCode?
georgexsh,
Xcode jest lepszy niż Plistinator na Macu - interfejs użytkownika jest lepszy, a jego kanonicznie Apple. Może to być kłopotliwe, ponieważ musisz zainstalować cały Xcode tylko po to, aby uzyskać narzędzie do edytowania. Plistinator wykonuje wyszukiwanie / skanowanie katalogu, a także ma duże pole edycyjne do wprowadzania dowolnego tekstu do wartości. Te funkcje sprawiają, że Plistinator jest doskonały do ​​zadań takich jak aplikacje i gry oparte na danych. Ale w przypadku większości zadań edytor Xcode jest lepszy.
sez
1

W oknie terminala można użyć opcji PlistBuddydostępnej pod adresem /usr/libexec/PlistBuddy.

PlistBuddy może odczytywać i modyfikować wartości w plist, interaktywnie lub bezpośrednio w wierszu poleceń.

Jednak PlistBuddynie jest edytorem GUI.

lhf
źródło
0

Użyłem PlistEdit Pro dla macOS i uznałem, że jest on użyteczny i wszechstronnie bogaty w funkcje.

Nimesh Neema
źródło