เอกสารบนเครื่อง GNOME ครอบคลุมเฉพาะสิ่งที่ทุกคนสามารถเดาได้ง่าย ฉันมีแอปพลิเคชันสำหรับที่ฉันสามารถเริ่มต้นจากบรรทัดคำสั่งเท่านั้น ไม่ใช่ว่าฉันจะใช้เครื่องเทอร์มินัล แต่ ...
อย่างไรก็ตามฉันจะเพิ่มคำสั่ง (และควรมีโลโก้ที่ดี) ลงใน GNOME WM ได้อย่างไร
เอกสารบนเครื่อง GNOME ครอบคลุมเฉพาะสิ่งที่ทุกคนสามารถเดาได้ง่าย ฉันมีแอปพลิเคชันสำหรับที่ฉันสามารถเริ่มต้นจากบรรทัดคำสั่งเท่านั้น ไม่ใช่ว่าฉันจะใช้เครื่องเทอร์มินัล แต่ ...
อย่างไรก็ตามฉันจะเพิ่มคำสั่ง (และควรมีโลโก้ที่ดี) ลงใน GNOME WM ได้อย่างไร
คำตอบ:
ในGNOMEและอื่น ๆ ที่freedesktop.orgสภาพแวดล้อมเดสก์ทอปที่เทียบเท่าเช่นKDEและความเป็นเอกภาพในการใช้งานจะมีการเพิ่มเมนูสก์ท็อปหรือเปลือกสก์ท็อปผ่านทางรายการสก์ท็อปที่กำหนดไว้ในแฟ้มข้อความที่มี.desktopส่วนขยาย (เรียกว่าไฟล์สก์ท็อป ) สภาพแวดล้อมเดสก์ท็อปสร้างเมนูสำหรับผู้ใช้จากข้อมูลรวมที่แยกออกมาจากรายการเดสก์ทอปที่มีอยู่
ไฟล์เดสก์ท็อปอาจถูกสร้างขึ้นในสองแห่ง:
/usr/share/applications/ สำหรับรายการเดสก์ท็อปที่มีให้กับผู้ใช้ทุกคนในระบบ~/.local/share/applications/ สำหรับรายการเดสก์ท็อปที่มีให้สำหรับผู้ใช้คนเดียวคุณอาจต้องรีสตาร์ท GNOME เพื่อให้แอปพลิเคชันที่เพิ่มใหม่ทำงานได้
ตามแบบแผนไฟล์เดสก์ท็อปไม่ควรมีช่องว่างหรืออักขระสากลในชื่อ
ไฟล์เดสก์ท็อปแต่ละไฟล์จะถูกแบ่งออกเป็นกลุ่มแต่ละไฟล์เริ่มต้นด้วยส่วนหัวกลุ่มในวงเล็บเหลี่ยม ( []) แต่ละส่วนมีจำนวนของคีย์ , ค่าคู่แยกจากกันโดยเครื่องหมายเท่ากับ ( =)
ด้านล่างนี้เป็นตัวอย่างของไฟล์เดสก์ท็อป:
[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Application Name
Comment=Application description
Icon=/path/to/icon.xpm
Exec=/path/to/application/executable
Terminal=false
Categories=Tags;Describing;Application
คำอธิบาย
[Desktop Entry]Desktop Entryส่วนหัวของกลุ่มระบุไฟล์เป็นรายการสก์ท็อปType ประเภทของรายการค่านิยมที่ถูกต้องApplication, LinkและDirectoryEncoding การเข้ารหัสอักขระของไฟล์เดสก์ท็อปName ชื่อแอปพลิเคชันที่มองเห็นได้ในเมนูหรือตัวเรียกใช้งานComment คำอธิบายของแอปพลิเคชันที่ใช้ในคำแนะนำเครื่องมือIcon ไอคอนที่แสดงสำหรับแอปพลิเคชันในเมนูหรือตัวเรียกใช้Exec คำสั่งที่ใช้เพื่อเริ่มแอปพลิเคชันจากเชลล์Terminal ไม่ว่าจะเป็นแอปพลิเคชันที่ควรรันในเทอร์มินัลค่าที่ใช้ได้คือtrueหรือfalseCategories เซมิโคลอน ( ;) รายการที่คั่นของหมวดหมู่เมนูที่ควรแสดงรายการอาร์กิวเมนต์บรรทัดคำสั่งในExecคีย์สามารถระบุด้วยตัวแปรต่อไปนี้:
%f ชื่อไฟล์เดียว%F ชื่อไฟล์หลายรายการ%u URL เดียว%U หลาย URL%d ไดเรกทอรีเดียว ใช้ร่วมกับ%fเพื่อค้นหาไฟล์%D หลายไดเรกทอรี ใช้ร่วมกับ%Fเพื่อค้นหาไฟล์%n ชื่อไฟล์เดียวที่ไม่มีเส้นทาง%N ชื่อไฟล์หลายรายการโดยไม่มีเส้นทาง%k URI หรือชื่อไฟล์ท้องถิ่นของตำแหน่งของไฟล์เดสก์ท็อป%v ชื่อของรายการอุปกรณ์โปรดทราบว่า~หรือตัวแปรสภาพแวดล้อมเช่น$HOMEนั้นไม่ได้ถูกขยายภายในไฟล์เดสก์ท็อปดังนั้นไฟล์อ้างอิงที่เรียกใช้งานจะต้องอยู่ใน$PATHหรืออ้างอิงผ่านพา ธ สัมบูรณ์
เต็มรูปแบบเดสก์ท็ข้อมูลจำเพาะรายการที่มีอยู่ในGNOME Dev ศูนย์
เรียกใช้สคริปต์
หากแอปพลิเคชันที่จะเปิดใช้ต้องใช้ขั้นตอนบางอย่างก่อนที่จะเรียกใช้คุณสามารถสร้างเชลล์สคริปต์ที่เรียกใช้แอปพลิเคชันและชี้รายการเดสก์ท็อปไปยังเชลล์สคริปต์ สมมติว่าแอปพลิเคชันต้องการให้เรียกใช้จากไดเรกทอรีการทำงานปัจจุบันบางอย่าง สร้างสคริปต์เรียกใช้ในตำแหน่งที่เหมาะสม ( ~/bin/ตัวอย่าง) สคริปต์อาจมีลักษณะดังนี้:
#!/bin/bash
pushd "/path/to/application/directory"
./application "$@"
popd
ตั้งค่าบิตปฏิบัติการสำหรับสคริปต์:
$ chmod +x ~/bin/launch-application
จากนั้นชี้Execคีย์ในรายการเดสก์ท็อปไปที่สคริปต์เรียกใช้
Exec=/home/user/bin/launch-application
<path>/.FTLจะชี้ไปที่ไฟล์ที่ซ่อน.FTLซึ่งเรียกว่าไม่เหมือนกัน./FTLซึ่งจะชี้ไปที่ไฟล์ที่เรียกว่าFTLในไดเรกทอรีปัจจุบัน คุณสามารถลองเปิดใช้งานFTLผ่าน/full/path/path/to/FTLเทอร์มินัลเพื่อดูว่าคุณได้รับผลลัพธ์ข้อผิดพลาดที่มีความหมายเต็มหรือไม่ ตัวอย่างเช่นหากปฏิบัติการค้นหาไลบรารีในไดเรกทอรีการทำงานปัจจุบันคุณอาจต้องทำสคริปต์เรียกใช้งานซึ่งทำบางสิ่งบางอย่างตามบรรทัดpushd <path>; ./FTL; popdและชี้ตัวExecระบุในไฟล์เดสก์ท็อปไปยังสคริปต์เรียกใช้แทน
คำตอบที่ดีมากจากโทมัสนีมัน
Gnome มาพร้อมกับเครื่องมือ gui ที่gnome-desktop-item-editช่วยในการสร้างไฟล์ * .desktop เราจำเป็นต้องใช้มันจากบรรทัดคำสั่งหรือสร้างไฟล์บนเดสก์ท็อป
gnome-desktop-item-editเปิด windows terminal และพิมพ์คำสั่งต่อไปนี้:
gnome-desktop-item-edit --create-new / home / [ชื่อผู้ใช้ของคุณ] /. local / share / applications
ในหน้าต่างที่เปิดกรอกข้อมูลต่อไปนี้:

Name: Gnome Applicaiton
Command: gnome-desktop-item-edit --create-new /home/[your user name]/.local/share/applications
คลิกที่ไอคอนเพื่อเลือกไอคอนอื่น
คลิกตกลงเพื่อปิดหน้าต่าง
ปิดหน้าต่างเทอร์มินัล
Gnome ApplicationGnome Applicationป้อนก่อนคำตอบก่อนหน้านี้จาก Thomas Nyman และ Dudi Boy นั้นดีมากและมีรายละเอียด ฉันโพสต์สิ่งนี้เพราะฉันไม่พบคำตอบสำหรับข้อสงสัยของฉันในโพสต์อื่น ๆ และฉันต้องค้นหาในปัญหาคอมไพล์
หลังจากที่ฉันทำตามขั้นตอนอย่างที่ Thomas Nyman แนะนำฉันสามารถทำไอคอนให้โปรแกรมของฉันปรากฏในเมนูแอพได้ ปัญหานี่คือฉันใช้ Dash to Dock เป็นแถบด้านข้างและฉันไม่สามารถปักหมุดไอคอนเป็นรายการโปรดเหมือนไอคอนอื่น ๆ หลังจากค้นหาฉันพบว่าคุณต้องเพิ่มบรรทัดStartupWMClass=ApplicationNameใน.desktopไฟล์ หลังจากนั้นตัวเลือกในการเพิ่มในรายการโปรดจะปรากฏขึ้นโดยคลิกขวาที่ไอคอนใน Dash to Dock