จะตรวจสอบ / ยืนยันไฟล์ .desktop ได้อย่างไร


12

ฉันมี.desktopไฟล์สองไฟล์ที่ไม่ทำงานตามที่คาดไว้หรือไม่ได้เลย ฉันไม่เห็นข้อผิดพลาดใด ๆ เลยและขอความช่วยเหลือจากแต่ละคนดูเหมือนจะไม่เกิดผล มีวิธีที่ฉันสามารถตรวจสอบว่าฉันใช้ไวยากรณ์ที่ถูกต้องในไฟล์ที่เป็นไปตามมาตรฐาน FreeDesktop ดังนั้นฉันจึงสามารถใช้การแก้ไขเฉพาะได้หรือไม่

คำตอบ:


20

คุณกำลังมองหาdesktop-file-validateเครื่องมือที่จัดทำโดยแพ็คเกจ desktop-files-utilsในการแจกจ่ายของคุณ มันตรวจสอบไวยากรณ์การใช้คำสงวน / ตัวอักษรในการสรุปว่ามันสอดคล้องกับสเปสก์ท็อปเข้า นี่คือตัวอย่างของไฟล์ .desktop ที่ไม่ดี:

➜  ~  desktop-file-validate asdf.desktop 
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '&' outside of a quote
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '&' outside of a quote
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '$' outside of a quote
asdf.desktop: error: value "cd /opt/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*" for key "Exec" in group "Desktop Entry" contains a reserved character '*' outside of a quote
asdf.desktop: hint: value item "GNOME" in key "Categories" in group "Desktop Entry" can be extended with another category among the following categories: GTK
asdf.desktop: error: value "GNOME;Oracle;Utility;Development;" for key "Categories" in group "Desktop Entry" contains an unregistered value "Oracle"; values extending the format should start with "X-"
asdf.desktop: hint: value "GNOME;Oracle;Utility;Development;" for key "Categories" in group "Desktop Entry" contains more than one main category; application might appear more than once in the application menu
asdf.desktop: error: value "s.0.m.t.h.i.n.g" for key "Version" in group "Desktop Entry" is not a known version

ซึ่งในไฟล์ที่ดีเช่นcaribou-autostart.desktopจะไม่แสดงอะไรเลย


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