ตัวอย่างเช่นฉันสามารถทำให้บรรยากาศเป็นธีมหลัก แต่กำหนดธีมหลักให้กับแอปของประถมได้หรือไม่
ตัวอย่างเช่นฉันสามารถทำให้บรรยากาศเป็นธีมหลัก แต่กำหนดธีมหลักให้กับแอปของประถมได้หรือไม่
คำตอบ:
คุณสามารถใช้ตัวแปรสภาพแวดล้อม GTK GTK_THEME=elementary
เพื่อเปิดแอพด้วยธีมพื้นฐาน ตัวอย่างเช่นการรันGTK_THEME=elementary pantheon-files
จะเปิดแอพไฟล์พื้นฐานโดยใช้ธีม GTK หลัก
ในการรับสิ่งนี้เพื่อใช้งานทุกครั้งที่คุณเปิดแอพเฉพาะตัวเลือกที่ดีที่สุดของคุณมีแนวโน้มที่จะสร้างไฟล์ .desktop แบบกำหนดเอง (ตัวเรียกใช้งาน)
/usr/share/applications/
~/.local/share/applications/
และวางตัวเรียกใช้งาน (Ctrl + V)Exec=
เพื่อรวมExec=env GTK_THEME=elementary
แล้วเนื้อหาที่มีอยู่ก่อนหน้าของบรรทัด (ดังนั้นExec=pantheon-files
จะกลายเป็นExec=env GTK_THEME=elementary pantheon-files
)ครั้งต่อไปที่คุณเปิดแอพจาก Unity (หรือตัวเลือกแอปที่คุณเลือก) มันจะใช้ธีมหลัก
คุณอาจต้องการให้แอปเปิดด้วยธีมพื้นฐานเมื่อเปิดใช้จากบรรทัดคำสั่ง โดยทำดังนี้
alias pantheon-files="GTK_THEME=elementary pantheon-files"
(แทนที่pantheon-files
ด้วยแอพที่ต้องการ)find /usr/share/themes -type d -name 'gtk-3.0' | awk -F'/' '{print $5}'
และgedit
เพื่อการสาธิตได้หรือไม่? เช่นGTK_THEME="HighContrast" gedit
หรือenv GTK_THEME="HighContrast" gedit
หรือGTK_THEME=Adwaita:dark gedit
... ไม่มีอะไร
/usr/share/applications/<appname>.desktop
และมันก็ใช้ได้สำหรับฉัน
คำถามยังคงใช้ได้และฉันพบวิธี:
path/to/MY_FOLDER
/share/themes/
โฟลเดอร์ภายใน (นั่นคือpath/to/MY_FOLDER/share/themes
)เปลี่ยนชื่อธีมเป็นชื่อของธีมที่ใช้งานอยู่ในปัจจุบัน
ในที่สุดคำสั่งนี้จะทำให้แอปใช้ธีมที่เปลี่ยนชื่อแทนที่จะเป็นธีมที่ใช้งานในปัจจุบัน:
GTK_DATA_PREFIX=path/to/MY_FOLDER YOUR_APPLICATON
(เส้นทางหลังจากGTK_DATA_PREFIX=
นั้นจะต้องเป็นแบบนั้น ( และเฉพาะที่ ) ไปยังโฟลเดอร์ที่มี /share/themes/RENAMED_THEME
อยู่นั่นคือสาเหตุที่ไม่ใช่ path/to/MY_FOLDER/share/themes/RENAMED_THEME
แต่เพียงpath/to/MY_FOLDER
)
หากต้องการรับสิ่งนั้นภายในตัวเรียกใช้งานให้แทนที่ดังนี้:
Exec=sh -c 'GTK_DATA_PREFIX=path/to/MY_FOLDER YOUR_APPLICATION'
GTK_DATA_PREFIX
?
~/.themes
(ปัจจุบันใช้งานจะต้องมีใน/usr/share/themes
) และจากนั้นใช้เส้นทางบางส่วนGTK_DATA_PREFIX=path/to/nowhere
เพื่อเปิด app ที่ซึ่งจะรีเซ็ตธีมให้แอปหนึ่งในปัจจุบันเพียง แต่มันจะมีลักษณะเป็นครั้งแรกใน ~/.themes
และใช้เวลา ชื่อที่มีชื่อเดียวกัน
เป็นไปได้อย่างแน่นอนว่าฉันไม่มีประสบการณ์ด้านธีมมาก แต่เมื่อคุณนำทางไปยัง/usr/share/themes/*Theme Name*/gtk-3.0/apps/
ไดเรกทอรีคุณจะพบ.css
ไฟล์ที่มีชื่อด้วยแอพที่พวกเขากำหนดเป้าหมายเป็นธีมดังนั้นใช่คุณสามารถสร้างธีมเฉพาะแอพได้
โปรดทราบว่าวิธีที่คุณกล่าวถึงธีมของคุณอาจต้องใช้งานบางอย่าง (เช่นมีทั้ง Ambiance และ Elementary ทำงานพร้อมกันเนื่องจากทุกชุดรูปแบบมีไฟล์พื้นฐานด้านบนซึ่งเป็นสไตล์เฉพาะของแอพ (ไฟล์gtkrc
ในGtk 2.0ในขณะที่ไฟล์gtk.css
ในกรณีของGtk3.0 )
และไฟล์ชุดรูปแบบพื้นฐานนี้มีกฎการจัดแต่งทรงผมที่กำหนดเป้าหมายเฉพาะชุดรูปแบบที่กำหนดดังนั้นคุณไม่สามารถสร้าง Elementary เช่นรูปลักษณ์และความรู้สึกจากไฟล์ชุดรูปแบบพื้นฐานของ Ambiance โดยไม่ทำการเปลี่ยนแปลงใด ๆ อย่างหนักและแม้ว่าคุณจะทำก็ตาม
นอกจากนี้ใน GNOME เป็นไปได้ที่จะมีการใช้ชุดรูปแบบครั้งเดียวเท่านั้นตัวอย่างเช่นถ้าคุณใช้หน้าต่างลักษณะที่ปรากฏใน Ubuntu 12.04 คุณรู้ว่าสามารถเลือกชุดรูปแบบใดก็ได้จากเมนูแบบเลื่อนลงในกรณีที่คุณใช้gnome-tweak-tool
มากกว่า คุณสามารถตั้งค่าชุดรูปแบบที่แตกต่างกันสำหรับ Gtk กรอบหน้าต่างและไอคอน แต่ก็ยังไม่อนุญาตให้กำหนดเป้าหมายแอปพลิเคชันเฉพาะเป็นชุดรูปแบบดังนั้นอย่างที่ฉันได้กล่าวไปแล้วก่อนหน้านี้คุณสามารถตั้งค่าชุดรูปแบบที่แตกต่างกันโดยสิ้นเชิง ไฟล์ชุดรูปแบบพื้นฐาน ณ ตอนนี้ไม่มีแอปพลิเคชันของบุคคลที่สามที่สามารถทำได้ด้วยตัวเอง
วิธีหนึ่งที่คุณสามารถทำได้ด้วยตัวเองคือให้ไฟล์ธีมพื้นฐาน ( gtk.css
) มีกฎที่จำเป็นซึ่งเป็นกลางกับธีมใด ๆ ไม่ว่าจะมืดหรือสว่าง และมีการออกแบบชุดรูปแบบจริงที่เขียนในไฟล์เฉพาะแอปที่อยู่ในไดเรกทอรีที่กล่าวถึงข้างต้นเช่นสำหรับการใส่สไตล์ Nautilus คุณสามารถเขียนคุณสมบัติที่จำเป็นทั้งหมดในnautilus.css
ไฟล์ เช่นเดียวกันกับทุกแอปที่คุณต้องการกำหนดเป้าหมาย เห็นได้ชัดว่าการทำเช่นนี้ต้องมีประสบการณ์ธีม Gtk ที่เหมาะสม
คุณสามารถอ้างอิงสิ่งนี้เพื่อสร้างธีมของคุณเองโดยใช้เทมเพลตนอกจากนี้ยังมีเอกสารที่ดีเกี่ยวกับการกำหนดธีมของ Gtk +
ใช่วิธีง่ายๆคือชี้แอปพลิเคชันไปที่พา ธ ที่ต้องการซึ่งไฟล์ rc ของคุณอยู่ในคำสั่งที่เรียกใช้แอปพลิเคชันของคุณ:
GTK2_RC_FILES=/usr/share/themes/Redmond/gtk-2.0/gtkrc inkscape
สิ่งนี้ใน 12.04 สำหรับ inkscape (ซึ่งยังคงเป็น Gnome2 btw) จะสร้างสิ่งนี้:
ใช่คุณทำได้จริง ๆ แล้วฉันก็ Google และได้คำตอบ:
which ooffice
ใน terminalecho $PATH
ใน terminal และคุณจะ ge เส้นทาง ฉันแนะนำให้คุณสร้างโฟลเดอร์ bin ในโฮมไดเร็กตอรี่ของคุณด้วยการพิมพ์mkdir ~/bin
gedit ~/.bashrc
เพื่อเปิดไฟล์ bash rc ของคุณexport PATH=~/bin:${PATH}
ตอนนี้เราจะสร้างสคริปต์ที่จะรันโปรแกรมของคุณด้วยธีมที่กำหนดเอง:
gedit ~/bin/ooffice
พิมพ์บรรทัดเหล่านี้ในไฟล์ที่เปิด:
#!/bin/bash
env GTK2_RC_FILES=/usr/share/themes/SlicknessX/gtk-2.0/gtkrc /usr/bin/ooffice "$@"
chmod +x ~/bin/ooffice
เปลี่ยนโหมดของแฟ้มที่จะปฏิบัติการโดยการพิมพ์:
หวังว่าสิ่งนี้จะช่วยคุณต้องจำเพียงสิ่งเดียวเท่านั้นรูปแบบของสคริปต์ดังที่แสดงด้านล่าง:
#!/bin/bash
env GTK2_RC_FILES=PATH_TO_GTKRC PATH_TO_EXECUTABLE "$@"