ปัญหาในการเปิดไฟล์ plist ใน text editor


17

จาก Finder ฉันสามารถดูตัวอย่างไฟล์ plist ได้โดยไม่มีปัญหาใด ๆ ตัวอย่างเช่นการใช้ Quick Look with ~/Library/Preferences/com.apple.Safari.RSS.plist ฉันได้รับตัวอย่างที่ดีของเนื้อหา:

Quick Look

อย่างไรก็ตามถ้าฉันลองเปิดไฟล์ด้วย TextEdit หรือโปรแกรมแก้ไขอื่น ๆ (ฉันได้ลอง SublimeText, TextMate, Vim, Nano และ Coda 2 จนถึง) การเข้ารหัสดูเหมือนจะปิด:

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

นี่คือสิ่งที่ดูเหมือนว่าถ้าฉันเปิดด้วย TextEdit:

TextEdit

ฉันได้ลองเปลี่ยนการเข้ารหัสใน Sublime Text และแอพอื่น ๆ แล้ว แต่นั่นก็ไม่ได้ช่วยอะไร

ความคิดใด ๆ

ฉันใช้ 10.8.4

คำตอบ:


20

ไฟล์ plist ไม่จำเป็นต้องเป็นข้อความธรรมดาดังนั้นจึงจำเป็นต้องเรียกใช้ผ่านตัวแปลง Finder และ Xcode (ซึ่งมีตัวแก้ไขแบบ plist) ทำสิ่งนี้โดยไม่บอกผู้ใช้

รูปแบบไบนารีมีการบันทึกไว้ในนี้ รหัส C ดังนั้นแอปพลิเคชันใด ๆ สามารถแปลงและ บางคนเขียนคำอธิบายรูปแบบเป็นภาษาอังกฤษ และเอกสารอื่น ๆ ของ Apple ที่นี่ แต่โปรดทราบว่ามันอ้างอิงถึงเส้นทางเก่าใน /Developer/Documentation

โปรแกรมบรรทัดคำสั่ง plutil สามารถแปลงเป็นและจาก XML

เช่น. เพื่อดูรายการคุณสมบัติไบนารีในรูปแบบ XML บน stdout:

plutil -convert xml1 -o - <file name>

นอกจากนี้ยังแปลงไบนารี่เป็น plist XML ที่มีอยู่แล้วปล่อยทิ้งไว้เพื่อให้โปรแกรมผู้ใช้สามารถอ่าน

plutil -convert xml1 <file name>

ขอบคุณ ฉันเห็น. ดังนั้นหากฉันต้องการแก้ไขฉันต้องแปลงเป็น XML เปิดด้วยเครื่องมือแก้ไขแล้วแปลงกลับ ฉันจะถือว่านี่เป็นเช่นนั้น ไม่จำเป็นต้องตอบกลับถ้าฉันเข้าใจผิด!
apc

3
คุณยังสามารถใช้ plutil -convert xml1 ~/Library/Preferences/com.apple.Safari.RSS.plist เพื่อแปลง plist ให้เป็น XML และหลังจากที่คุณแก้ไขเพลทคุณไม่ต้องแปลงมันกลับไปเป็นไบนารี่
Lri

1
& gt; Finder และ Xcode (ซึ่งมีเครื่องมือแก้ไขแบบ Plist) ทำสิ่งนี้โดยไม่บอกผู้ใช้ว่าแม่นยำหรือไม่ Finder ที่ทำสิ่งนี้คือ QuickLook ในรูปแบบของปลั๊กอิน QuickLook
saagarjha

5

คุณยังสามารถแก้ไขไฟล์ plist ด้วย PlistBuddy ซึ่งเป็นโปรแกรมบรรทัดคำสั่ง

PlistBuddy ตั้งอยู่ที่ /usr/libexec/PlistBuddy.


1
Apple ลบหน้านั้นออกและฉันไม่สามารถหาที่เก็บได้ ยังคงมีคู่มืออยู่ใน macOS Mojave
Franklin Yu

@ FranklinYu แน่นอน นอกจากนี้ยังมีการสอนที่ marcosantadev.com/manage-plist-files-plistbuddy .
lhf


0

ฉันสร้างไฟล์ CMD (Batch) เพื่อช่วยเหลือผู้อื่นด้วยการแปลงไฟล์ plist บน Windows
คำแนะนำ:
1. คัดลอกรหัสทั้งหมด
2. สร้างเอกสารข้อความใหม่
3. ชิมรหัส
4. บันทึกไฟล์
5. เปลี่ยนชื่อไฟล์ด้วย ".bat" แทน ".txt"
6. เปิดใช้งาน

    @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

หรือคุณสามารถใช้เวอร์ชันที่ไม่ปิดหลังการแปลงเพื่ออนุญาตให้มีการแปลงหลายครั้งโดยไม่ต้องเปิดไฟล์อีกครั้ง:

    @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
สวัสดีและยินดีต้อนรับสู่ Ask Different! คำตอบนี้อาจมีประโยชน์มากกว่าที่อื่น - OP ไม่ได้สอบถามเกี่ยวกับการใช้งาน Windows
Scot

-1

คุณสามารถแปลงไฟล์รายการคุณสมบัติจากรูปแบบไบนารีเป็น XML โดยใช้บรรทัดคำสั่งต่อไปนี้:

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

จากนั้นแก้ไขตามปกติ ประการที่สองคุณไม่จำเป็นต้องแปลงกลับเป็นปกติโดยปกติแอพจะจดจำรูปแบบทั้งสอง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.