मैं Ubuntu पर Geany को अपना डिफ़ॉल्ट संपादक कैसे बनाऊं?


23

मैं वास्तव में अपने Ubuntu 12.04 पर नैनो से Geany तक डिफ़ॉल्ट पाठ संपादक को बदलना चाहता हूं। जब मैंने इस कोड का उपयोग किया:

update-alternatives --config editor

.. मैं Geany को सूची में नहीं देखता।

तो Geany को जोड़ने के लिए, यह सही काम करना है?

update-alternatives --install /usr/bin/geany geany /usr/bin/geany 10

इसके अलावा, एक साइड नोट पर, क्या आप मुझे बता सकते हैं कि क्या आप व्यक्तिगत रूप से मुझे नैनो से गीन के डिफ़ॉल्ट संपादक को बदलने का सुझाव देंगे, और क्यों?


@izx बिल्कुल :) मुझे अब भी यह जानना अच्छा लगेगा कि यह करने का कमांड-लाइन तरीका क्या था। भले ही, मैं आपके उत्तर को स्वीकार कर लिया गया हूं :)
क्रमांक Noob

जवाबों:


16

कमांड लाइन तरीका है:

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/geany 10

और sudo update-alternatives --config editorयदि आवश्यक हो तो Geany का चयन करने के लिए उपयोग करें।

कमांड-लाइन विधि के एक ग्राफिकल विकल्प के रूप में, गनोम अल्टरनेटिव्स ( sudo apt-get install galternatives) का उपयोग करने पर विचार करें । GAlternatives चलाएँ , बाएँ स्तंभ में संपादक का चयन करें, और फिर दाईं ओर Geany जोड़ें / चुनें।


5
मैंने ऐसा किया था और गीन का चयन किया गया था, * 3 /usr/bin/geany 10 manual modeलेकिन जब मैंने एक पाठ फ़ाइल को नौटिलस में डबल-क्लिक करके खोलने की कोशिश की, तो यह अभी भी गेडिट के साथ खुलती है।
करने के लिए क्या

@ToDo मुझे भी। आश्चर्य है कि मैं उन आदेशों को कैसे पूर्ववत कर सकता हूं।

14

एक विकल्प के रूप में, इसने मेरे लिए भी काम किया:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

यह पंक्ति सभी MimeTypes gedit के लिए पंजीकृत है, कुछ क्लीनअप ( sedआदेश) करती है और अंत में geany को उनके लिए डिफ़ॉल्ट एप्लिकेशन के रूप में सेट करती है।

मैंने इसे यहां रंग योजनाओं पर उपयोगी जानकारी के एक समूह के साथ पाया


1
इसने एकदम जादू की तरह काम किया।
फैसल सैयद

1
बहुत बढ़िया! स्वीकृत उत्तर के विपरीत, आपका समाधान वास्तव में मेरे लिए काम करता है। धन्यवाद! # 12.04
king_julien

किसी भी विचार कैसे मैं इसे पूर्ववत कर सकते हैं?
king_julien

कोई विचार नहीं है, लेकिन नीचे दिए गए उत्तर को देखें क्योंकि (दूसरे) स्टीव ने यह समझाने का एक बड़ा काम किया है कि यह वास्तव में क्या करता है - आपको इंजीनियर को वहां से प्रभावों को उलटने में सक्षम होना चाहिए। आप इसे पूर्ववत क्यों कर रहे हैं? यह मेरे लिए एक महान समाधान है और 6 महीने से अधिक समय तक मेरे लिए पूरी तरह से काम किया है ...
स्टीव

11

यह थोड़ी देर है लेकिन मुझे लगा कि यह किसी की मदद कर सकता है।

मेरी समस्या यह है कि मैं उन चीजों को कॉपी और पेस्ट करना पसंद नहीं करता जिन्हें मैं नहीं समझता, इसलिए यहाँ अब तक के उत्तरों की व्याख्या है।

और सबसे पहले, यहाँ दो मुद्दे हैं और दोनों उत्तर हैं, अपने आप में, सही हैं:

  1. डिफ़ॉल्ट कमांड लाइन संपादक - 'izx' द्वारा हल किया गया
  2. GUI अनुप्रयोगों के लिए डेस्कटॉप सत्र में फ़ाइल-प्रकार (माइम-प्रकार) एसोसिएशन - 'स्टीव' द्वारा हल किया गया।

यहाँ थोड़ा और विस्तार से:

  1. कमांड लाइन सॉल्यूशन से

    • वैकल्पिक संपादक सूची में geany (GUI अनुप्रयोग) जोड़ता है और इसे डिफ़ॉल्ट रूप में सेट करता है।
    • मुझे हमेशा लगता था कि संपादक आमतौर पर vi, vim, nano, आदि जैसे टेक्स्ट-आधारित संपादकों के लिए आरक्षित होते थे, लेकिन मैंने अभी-अभी जाँच की है और यह भी काम करने लगता है।
    • परिणाम का मतलब है कि आप अपने चुने हुए डिफ़ॉल्ट का उपयोग उदाहरण के लिए फ़ाइल खोलने के लिए कर सकते हैं:
  2. माइम-प्रकार का समाधान - 'स्टीव' से

फ़ाइल स्तर पर, महत्व की दो सूचियाँ हैं:

/usr/share/applications/defaults.list - सिस्टम डिफॉल्ट की सूची।

~/.local/share/applications/mimeapps.list - उपयोगकर्ता व्यक्तिगत डेस्कटॉप सत्र चूक सूची

कमांड क्या करता है?

Xdg-mime मैन पेज से (आदमी xdg-mime)

xdg-mime - command line tool for querying information about file type handling and adding descriptions for new file type

xdg-mime default...आदेश उन व्यक्तिगत सूची में प्रविष्टियों कहते हैं।

चलिए कमांड को तोड़ते हैं।

कमान:

xdg-mime default geany.desktop $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

आदेश के रूप में पढ़ा जा सकता है:

geany.desktop द्वारा निर्धारित माइम-प्रकार के लिए डिफ़ॉल्ट अनुप्रयोग के रूप में सेट किया गया है $(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')

देखना

$(grep MimeType /usr/share/applications/geany.desktop | sed 's/MimeType=//' | sed 's/;/ /g')
  • geany.desktop फ़ाइल से सभी माइम-प्रकार लेता है
  • "MimeType =" निकालता है
  • ""? साथ में " "
  • हमें देना:
    text/plain text/x-chdr text/x-csrc text/x-c++hdr text/x-c++src text/x-java text/x-dsrc text/x-pascal text/x-perl text/x-python application/x-php application/x-httpd-php3 application/x-httpd-php4 application/x-httpd-php5 application/xml text/html text/css text/x-sql text/x-diff

कमांड चलाने के बाद उपयोगकर्ताओं की व्यक्तिगत फ़ाइल को देखते हुए, हम geany.desktop एप्लिकेशन के लिए सेट किए गए सभी फ़ाइल-संघों को देख सकते हैं:

[Default Applications]
x-scheme-handler/mailto=userapp-Thunderbird-ZP00XW.desktop
message/rfc822=userapp-Thunderbird-ZP00XW.desktop
application/x-extension-eml=userapp-Thunderbird-ZP00XW.desktop
application/x-perl=sublime_text.desktop
text/plain=geany.desktop
text/x-chdr=geany.desktop
text/x-csrc=geany.desktop
text/x-dtd=sublime_text.desktop
text/x-java=geany.desktop
text/mathml=sublime_text.desktop
text/x-python=geany.desktop
text/x-sql=geany.desktop
text/x-c++hdr=geany.desktop
text/x-c++src=geany.desktop
text/x-dsrc=geany.desktop
text/x-pascal=geany.desktop
text/x-perl=geany.desktop
application/x-php=geany.desktop
application/x-httpd-php3=geany.desktop
application/x-httpd-php4=geany.desktop
application/x-httpd-php5=geany.desktop
application/xml=geany.desktop
text/html=geany.desktop
text/css=geany.desktop
text/x-diff=geany.desktop

यह जानना, यहाँ मेरी विशेष समस्या है और मैंने इसे कैसे हल किया।

संकट:

मैं Nautilus में "gedit" -> "उदात्त पाठ" से डिफ़ॉल्ट "फ़ाइल ओपनिंग" एप्लिकेशन को बदलना चाहता था।

समाधान:

Gedit के लिए सिस्टम डिफॉल्ट को इसके साथ खोजें:

$less /usr/share/applications/defaults.list | grep gedit
application/x-perl=gedit.desktop
text/plain=gedit.desktop
text/x-chdr=gedit.desktop
text/x-csrc=gedit.desktop
text/x-dtd=gedit.desktop
text/x-java=gedit.desktop
text/mathml=gedit.desktop
text/x-python=gedit.desktop
text/x-sql=gedit.desktop

"Gedit" को "sublime_text" से बदलें और प्रविष्टियों को मेरी व्यक्तिगत चूक के "डिफ़ॉल्ट अनुप्रयोग" अनुभाग में जोड़ें।

application/x-perl=sublime_text.desktop
text/plain=sublime_text.desktop
text/x-chdr=sublime_text.desktop
text/x-csrc=sublime_text.desktop
text/x-dtd=sublime_text.desktop
text/x-java=sublime_text.desktop
text/mathml=sublime_text.desktop
text/x-python=sublime_text.desktop
text/x-sql=sublime_text.desktop

यह बहुत उपयोगी है, लेकिन आप मौजूदा उत्तरों को संपादित करने और सुधारने पर भी विचार कर सकते हैं। यह अक्सर बहुत कम काम है।
टॉम ब्रॉसमैन

2
अच्छा बिंदु टॉम, धन्यवाद। मैं हमेशा लोगों के उत्तरों के संपादन के बारे में थोड़ा आशंकित रहता हूं। मैं स्वीकृत उत्तर के लिए एक टिप्पणी जोड़ूंगा।
स्टीव-बी

यहां किसी और के पोस्ट को संपादित करने की चिंता न करें, यह अपेक्षित है। जब तक आप 2000 प्रतिनिधि नहीं मारते हैं, तब तक साथियों की समीक्षा हो जाती है, तब वे सीधे जाते हैं। सभी अच्छी जानकारी को एक उत्तर में रखना बाद में खोजना आसान बनाता है।
टॉम ब्रॉसमैन

1

क्योंकि ऐसी टिप्पणियां हैं जो यह स्वीकार करती हैं कि स्वीकृत उत्तर सही नहीं था, मुझे लगता है कि मुझे यह इंगित करना चाहिए कि इस प्रश्न का एक भी उत्तर नहीं हो सकता है। यदि सीएलआई को निर्दिष्ट करने के लिए प्रश्न को बदल दिया गया था और जीयूआई के लिए प्रश्न एक नए धागे में चले गए, तो यह भ्रम को साफ करेगा। मुझे लगता है कि बहुत देर हो चुकी है।

वैसे भी Ubuntu 14.04 के तहत सूक्ति पर नॉटिलस (उर्फ फाइलें) के लिए। और स्वीकार किए गए उत्तर को देखते हुए, आप (जैसे मैंने किया) की उम्मीद है कि समकक्ष होगा:
donotdothisssudo update-alternatives --install /etc/alternatives/gnome-text-editor gnome-text-editor /usr/bin/geany 10

यही मैंने सोचा था और इसने लिंक को तोड़ दिया है, इसलिए ऐसा मत करो! यदि आपने किया, तो यह वही है जो वे मेरे लिए थे:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/gedit

इस त्रुटि को सुधारते हुए मैंने इन कड़ियों को इस प्रकार पुनः बनाया:
lrwxrwxrwx /usr/bin/gnome-text-editor -> /etc/alternatives/gnome-text-editor lrwxrwxrwx /etc/alternatives/gnome-text-editor -> /usr/bin/geany

जैसा कि मैंने वास्तव में किया है, द्वितीयक सिमलिंक को बदलना है, और मुझे अपने सिस्टम में वांछित प्रतिक्रिया मिली है मेरा अनुमान है कि यह कार्य बस है:
sudo ln -s /usr/bin/geany /etc/alternatives/gnome-text-editor

हालाँकि जो कुछ GUI विशिष्ट है उसे बदलने के लिए CLI कमांड चलाना गलत होना चाहिए। इस परिवर्तन विकल्प की खोज करते समय मेरे हाथ मुझे जिस स्थान पर ले जाते हैं, वह व्यक्ति फ़ाइल प्रकार सेटिंग के बगल में, नॉटिलस मेनू प्रणाली है। हालाँकि इसका एकमात्र कारण यह है कि मैं वहां जाता हूं क्योंकि समाधान का एक हिस्सा वह है। मेरे विचार में यदि आपने DPKG (अपडेट-विकल्प) के तर्क का पालन किया है, और इसे अपने वितरण में शामिल किया है, तो आप Nautilus जैसे उपयोगकर्ता स्थान एप्लिकेशन को आपके सेटिंग प्रबंधक ऐप में हस्तक्षेप नहीं करना चाहते हैं। इसे ठीक करने के लिए मेरा विनम्र सुझाव सेटिंग्स >> विवरण >> डिफ़ॉल्ट अनुप्रयोगों में एक नया संपादक सेटिंग्स नियंत्रण जोड़ना होगा, जो उपयोगकर्ताओं के दृष्टिकोण से एक नया पृष्ठ होना चाहिए। Nautilus टीम को तब अपना मेनू बदलने की आवश्यकता होगी ताकि उपयोगकर्ता उस नए पृष्ठ पर पुनर्निर्देशित हो। यह वह समझौता होगा जहां मेरे हाथ मुझे सेटिंग की तलाश करने के लिए ले गए हैं, जहां मेरे हाथ 'मुझे' के बजाय ले जाना चाहिए और सिस्टम सेटिंग में एकल बिंदु प्रविष्टि प्रक्रिया का प्रबंधन करता है। ऐसा लगता है कि इस परिवर्तन को डेबियन की आकाशगंगाओं के बंदरगाह के भीतर होना चाहिए, हालांकि मैं सिर्फ अनुमान लगा रहा हूं। बेशक, इस विचार के साथ Nautilus टीम के बिना उस तरह के साथ आगे बढ़ने का कोई मतलब नहीं होगा, उन्हें एपीआई या समकक्ष तंत्र को भी निर्दिष्ट करने की आवश्यकता होगी।

मेरे विचार में सेटिंग्स पृष्ठ को डिफ़ॉल्ट ग्नोम संपादक चयन और प्रत्येक व्यक्तिगत फ़ाइल को खोलने के लिए उपयोग किए जाने वाले एप्लिकेशन को कवर करने की आवश्यकता होगी (जो कि Nautilus द्वारा प्रदान की गई वर्तमान कार्यक्षमता को बदलने के लिए है)।

मैं इसे एक उत्तीर्ण विचार के रूप में पोस्ट करता हूं, यदि आप इसे अपील करते हैं तो इसे आगे की ओर चलाने के लिए स्वतंत्र महसूस करें। अफसोस की बात है कि मैं इस प्रक्रिया और प्रोटोकॉल को खुद नहीं जानता।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.