จะบังคับให้ gedit เปิดหน้าต่างใหม่โดยอิสระจากหน้าต่าง gedit ที่มีอยู่เมื่อใดก็ตามที่ไฟล์ข้อความถูกดับเบิลคลิกบนเดสก์ท็อป Gnome ของ Debian 8


9

วิธีการสามารถgeditถูกบังคับให้เปิดหน้าต่างใหม่เป็นอิสระจากหน้าต่าง Gedit ที่มีอยู่เมื่อใดก็ตามที่เป็นไฟล์ข้อความ (.txt) เป็นดับเบิลคลิกที่เดสก์ทอป Gnome ของ Debian 8 เจสซี?

สมมติว่า a.txt เปิดอยู่แล้วในหน้าต่าง gedit และ b.txt นั้นดับเบิลคลิกบนเดสก์ท็อป Gnome ของ Debian 8 Jessie จากนั้นตามค่าเริ่มต้นจากโรงงาน b.txt จะเปิดขึ้นในแท็บในหน้าต่างเดียวกับ a.txt

อย่างไรก็ตามฉันต้องการb.txtเปิดในหน้าต่างใหม่ของ gedit เพื่อให้มีสองหน้าต่าง - หน้าต่างที่มีอยู่สำหรับ a.txt และหน้าต่างใหม่สำหรับ b.txt

หาก Gnome เรียกใช้ gedit ด้วยตัวเลือก "-s" ดังเช่น

gedit -s b.txt

จากนั้นb.txtจะเปิดในหน้าต่างใหม่ในขณะที่ a.txt ยังคงอยู่ในหน้าต่างเดิม

อย่างไรก็ตามโดยค่าเริ่มต้น Gnome จะเรียกใช้ gedit โดยไม่มีตัวเลือก "-s"

ไฟล์การกำหนดค่า

/usr/share/applications/org.gnome.gedit.desktop

มีคำสั่งการดำเนินการ

Exec=gedit %U

ดังนั้นฉันเปลี่ยนมันเป็น

Exec=gedit -s %U

โดยคำสั่งต่อไปนี้และรีสตาร์ทคอมพิวเตอร์

cd /usr/share/applications
su # similar to sudo
mv org.gnome.gedit.desktop org.gnome.gedit.desktop.bak
perl -pe 's/Exec=gedit %U/Exec=gedit -s %U/' org.gnome.gedit.desktop.bak > org.gnome.gedit.desktop
diff org.gnome.gedit.desktop org.gnome.gedit.desktop.bak

อย่างไรก็ตามวิธีนี้ล้มเหลว b.txt ยังคงเปิดในแท็บในหน้าต่างเดียวกับ a.txt ฉันติดอยู่ ฉันต้องการความช่วยเหลือจากคุณ.

โหมดเริ่มต้นของ gedit คือ "หน้าต่างเดียวหลายแท็บ" ฉันต้องการโหมด "หลายหน้าต่าง"

โดยวิธีการวิธีการที่ไร้ประโยชน์ต่อไปนี้เปลี่ยน gedit เป็นโหมด "หน้าต่างเดียวไม่มีแท็บ" ซึ่งไม่ใช่สิ่งที่ฉันต้องการ

gsettings set org.gnome.gedit.preferences.ui show-tabs-mode 'never'

ด้วยวิธีการ "gsettings" นี้ gedit จะปิด a.txt โดยอัตโนมัติและนำหน้าต่างที่มีอยู่ของ a.txt มาเปิด b.txt อีกครั้งเมื่อใดก็ตามที่ b.txt ดับเบิลคลิกบนเดสก์ท็อป ดังนั้นจึงเป็นโหมด "หน้าต่างเดียวไม่มีแท็บ" (ตรงข้ามกับ "หลายหน้าต่าง")

(อย่างไรก็ตามค่าเริ่มต้นสำหรับ "show-tabs-mode" คือ 'auto')


@don ฉันไม่คุ้นเคยกับตัวเรียกใช้ คำสั่งให้เรียกใช้ตัวเรียกใช้งานแยกกันคืออะไร
i7pj3qnuz

คำตอบ:


5

สาเหตุที่การแก้ไขExecคีย์ในไฟล์. desktop ไม่ทำงานก็คือ gedit นั้นเปิดใช้งาน DBus ซึ่งหมายความว่าจะเปิดตัวผ่านทาง DBus daemon ของเซสชันของคุณและจากนั้นจะมีอินเทอร์เฟซ DBus ทั่วไปสำหรับโปรแกรมที่เปิดใช้งานดังกล่าวเพื่อระบุไฟล์ที่จะเปิด ท่านสามารถป้องกันได้โดยการเปลี่ยนที่สำคัญในการDBusActivatablefalse

นอกจากนี้จะเป็นการดีกว่ามากหากคุณสร้างสำเนาของไฟล์ .desktop ที่คุณต้องการแก้ไขในโฮมไดเร็กตอรี่ของคุณและใช้มันเพื่อแทนที่ไฟล์ทั้งระบบมากกว่าที่จะแก้ไขไฟล์ทั้งระบบโดยตรง ด้วยวิธีนี้ระบบจะไม่ถูกเขียนทับในการอัพเดทแพ็คเกจ distro ต้องการทำเช่นนั้นเพียงแค่คัดลอกไป/usr/share/applications/org.gnome.gedit.desktop ~/.local/share/applications/org.gnome.gedit.desktopไฟล์ในพา ธ นี้จะแทนที่ไฟล์ที่มีชื่อเดียวกันจากไดเร็กทอรีทั่วทั้งระบบ

แล้วยังมีความแตกต่างที่สำคัญระหว่างสองธงไปได้ที่ใช้ในการเปิดหน้าต่างใหม่: หรือ--new-window -sทั้งสองจะส่งผลให้ไฟล์ถูกเปิดในหน้าต่างใหม่ แต่ด้วย-sแต่ละหน้าต่างจะเป็นของกระบวนการของตัวเอง เมื่อใช้--new-windowwindows ทั้งหมดแบ่งปันกระบวนการ gedit เดียวกัน

และในที่สุดก็เพื่อให้แน่ใจว่าวิธีนี้ใช้งานได้หากคุณเลือกหลายไฟล์ในตัวจัดการไฟล์และเปิดไฟล์คุณต้องแก้ไขExecคีย์อีกครั้ง %Uหมายความว่า URL gedit --new-window file1.txt file2.txtหลายรายการจะได้รับอนุญาตเป็นอาร์กิวเมนต์สำหรับคำสั่งนี้มีความหมายว่าการจัดการไฟล์จะเริ่มต้นเช่นนี้ ผลลัพธ์นี้ในหน้าต่างใหม่เดียวที่มีสองแท็บ หากคุณเปลี่ยนสิ่งนี้เป็น%uตอนนี้จะบอกตัวจัดการไฟล์ว่าแอปพลิเคชันยอมรับ URL เพียงอันเดียวเป็นอาร์กิวเมนต์ดังนั้นจึงทำให้มันรันคำสั่งหลายครั้งแต่ละครั้งที่มีไฟล์ต่างกันเป็นอาร์กิวเมนต์ สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับเรื่องนี้ดูสเปคเข้าเดสก์ทอป freedesktop


0

ตามคำตอบของSebastiansให้ทำดังต่อไปนี้:

  1. ทำสำเนาโลคัลของการกำหนดค่า gedit การเปลี่ยนแปลงที่คุณทำนำไปใช้กับผู้ใช้ปัจจุบันเท่านั้น

    cp /usr/share/applications/org.gnome.gedit.desktop ~ / .local / share / applications / geditNewWin.desktop

  2. ในแฟ้ม ~ / .local / หุ้น / การใช้งาน / geditNewWin.desktop: ไปทุกEXEC=เส้น (มีน้อย) Exec=gedit -s %Uและกำหนดให้ มีการเปลี่ยนแปลงไปName=Text EditorName=Text Editor (new window)

  3. ใน Nautilus File Manager ของคุณ (ตัวจัดการไฟล์มาตรฐานใน Gnome มักเรียกว่า 'Files' หรือGnome Files ) เชื่อมโยงประเภทไฟล์ (.txt, .csv, ... ) กับแอปพลิเคชันที่คุณสร้างขึ้นใหม่:

    • คลิกขวาที่ไฟล์. txt (หรือไฟล์ประเภทใดก็ได้ที่คุณต้องการ)
    • คลิก 'คุณสมบัติ'
    • เลือกแท็บ 'เปิดด้วย'
    • เลือก 'ตัวแก้ไขข้อความ (หน้าต่างใหม่)' จากรายการ
    • klick ที่ 'Set as default'
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.