जब भी कोई पाठ फ़ाइल डेबियन 8 के गनोम डेस्कटॉप पर डबल-क्लिक की जाती है, तो एक नई विंडो को स्वतंत्र रूप से खोलने के लिए कैसे बाध्य किया जाए?


9

geditजब भी एक टेक्स्ट फ़ाइल (.txt) को डेबियन 8, जेनी के ग्नोम डेस्कटॉप पर डबल-क्लिक किया जाता है, तो मौजूदा गेडिट विंडो से स्वतंत्र रूप से एक नई विंडो खोलने के लिए कैसे मजबूर किया जा सकता है?

मान लीजिए कि a.txt पहले से ही एक gedit विंडो में खुला है, और यह b.txt डेबियन 8 जेसी के ग्नोम डेस्कटॉप पर डबल-क्लिक किया गया है। फिर, दुर्भाग्यवश, फ़ैक्टरी डिफ़ॉल्ट रूप से, b.txt को टैब में उसी विंडो में axt के रूप में खोला जाएगा।

हालाँकि, मैं b.txtgedit की एक नई विंडो में खोलना चाहता हूं ताकि दो विंडो हों - axt के लिए मौजूदा विंडो और b.txt के लिए एक नई विंडो।

यदि Gnome ने "-s" विकल्प के साथ gedit इनवॉइस किया

gedit -s b.txt

तब b.txtएक नई विंडो में खोला जाएगा, जबकि a.txt अपनी मौजूदा विंडो में रहता है।

हालाँकि, डिफ़ॉल्ट रूप से, गनोम "-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 के समान विंडो में एक टैब में खुलता है। मैं फँस गया हूँ। मुझे आपकी मदद चाहिए।

गेडिट का डिफ़ॉल्ट मोड "सिंगल विंडो, मल्टीपल टैब" है। मुझे "एकाधिक विंडो" मोड चाहिए।

वैसे, निम्नलिखित बेकार विधि "सिंगल विंडो, नो टैब" मोड में गेडिट को बदल देती है, जो कि मैं नहीं चाहता।

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

इस "gsettings" विधि के साथ, gedit स्वचालित रूप से a.txt को बंद कर देता है और जब भी b.txt किसी डेस्कटॉप पर डबल-क्लिक किया जाता है, तो b.txt को खोलने के लिए a.txt की मौजूदा विंडो को पुन: उपयोग करता है। इस प्रकार, यह "सिंगल विंडो, नो टैब" मोड है (जैसा कि "मल्टीपल विंडो" के विपरीत है)।

(वैसे, "शो-टैब-मोड" के लिए डिफ़ॉल्ट मान 'ऑटो' है।)


@don मैं लॉन्चर से बहुत परिचित नहीं हूं। अलग-अलग लांचर को लागू करने के लिए क्या आदेश हैं?
17pj3qnuz

जवाबों:


5

Exec.Desktop फ़ाइल में कुंजी के आपके संशोधन के काम न करने का कारण यह है कि gedit DBus सक्रिय है। इसका मतलब है कि यह आपके सत्र के DBus डेमॉन के माध्यम से लॉन्च किया गया है और फिर फ़ाइलों को खोलने के लिए निर्दिष्ट करने के लिए ऐसे सक्रिय कार्यक्रमों के लिए एक सामान्य DBus इंटरफ़ेस प्रदान करता है। आप DBusActivatableकुंजी को बदलकर इसे रोक सकते हैं false

साथ ही, .desktop फ़ाइल की एक प्रतिलिपि बनाना बहुत बेहतर है जिसे आप अपने होम डायरेक्टरी में संशोधित करना चाहते हैं और सिस्टम-वाइड एक को सीधे संशोधित करने की तुलना में सिस्टम-वाइड को ओवरराइड करने के लिए उपयोग करना चाहते हैं। इस तरह सिस्टम एक को डिस्ट्रो पैकेज अपडेट पर अधिलेखित नहीं किया जाएगा। ऐसा करने के लिए बस कॉपी /usr/share/applications/org.gnome.gedit.desktopकरें ~/.local/share/applications/org.gnome.gedit.desktop। इस पथ की फ़ाइलें सिस्टम-वाइड निर्देशिका से समान नाम वाली फ़ाइलों को ओवरराइड करेंगी।

फिर एक नई विंडो खोलने के लिए उपयोग किए जाने वाले दो संभावित झंडे के बीच एक महत्वपूर्ण अंतर भी है: --new-windowया -s। दोनों एक नई विंडो में खोली जा रही फ़ाइलों के परिणामस्वरूप होंगे, लेकिन -sप्रत्येक विंडो के साथ अपनी प्रक्रिया भी होगी। --new-windowसभी विंडो का उपयोग करते समय समान जीएडिट प्रक्रिया को साझा करें।

और अंत में यह सुनिश्चित करने के लिए कि यह भी काम करता है यदि आप अपने फ़ाइल प्रबंधक में कई फ़ाइलों का चयन करते हैं और उन्हें खोलते हैं, तो आपको Execकुंजी के एक और संशोधन की आवश्यकता होती है । %Uसाधन से अधिक URL इस आदेश के लिए तर्क के रूप में अनुमति दी जाती है, जिसका अर्थ है कि फ़ाइल प्रबंधक इस तरह यह शुरू होगा: gedit --new-window file1.txt file2.txt। इसके परिणामस्वरूप दो टैब के साथ एक नई विंडो मिलती है। यदि आप इसे %uअब तक बदलते हैं, तो यह फ़ाइल प्रबंधक को बताता है, कि एप्लिकेशन केवल एक URL को एक तर्क के रूप में स्वीकार करता है और इसलिए यह कई बार कमांड को चलाने का कारण बनता है, हर बार एक अलग फ़ाइल के साथ इसके तर्क के रूप में। इस पर अधिक जानकारी के लिए freedesktop डेस्कटॉप एंट्री स्पेसिफिकेशन देखें


0

सेबेस्टियन के जवाब के आधार पर , निम्नलिखित करें:

  1. Gedit कॉन्फ़िगरेशन की एक स्थानीय प्रतिलिपि बनाएँ। आपके द्वारा किए गए परिवर्तन, केवल वर्तमान उपयोगकर्ता पर लागू होते हैं।

    cp /usr/share/applications/org.gnome.gedit.desktop ~ / .local / शेयर / एप्लीकेशन / geditNewWin.desktop

  2. फ़ाइल में ~ / .local / शेयर / एप्लिकेशन / geditNewWin.desktop: सभी EXEC=लाइनों पर जाएं (कुछ हैं) और उन्हें सेट करें Exec=gedit -s %U। इसके Name=Text Editorलिए और बदलाव Name=Text Editor (new window)

  3. आपके Nautilus फ़ाइल प्रबंधक में (गनोम में मानक फ़ाइल प्रबंधक, जिसे अक्सर सिर्फ 'फ़ाइलें' या ग्नोम फ़ाइल्स कहा जाता है ) आप नए बनाए गए एप्लिकेशन के साथ filetypes (.txt, .csv, ...) को जोड़ते हैं।

    • राइट-क्लिक करें .txt फ़ाइल पर (या जो भी फ़िलाटाइप आपको चाहिए)
    • 'गुण' पर क्लिक करें
    • टैब 'ओपन विथ' चुना
    • सूची से 'टेक्स्ट एडिटर (नई विंडो)' चुनें
    • 'डिफ़ॉल्ट रूप में सेट करें' पर क्लिक करें
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.