जब मैं किसी वेबपेज में 'mailto' पर क्लिक करता हूं, तो मैं डिफ़ॉल्ट मेल क्लाइंट के रूप में म्यूट कैसे सेट कर सकता हूं?


11

muttजब मैं mailto:किसी वेबपेज में कुछ टैग पर क्लिक करता हूं तो मैं टर्मिनल में शुरू करना चाहता था । क्या यह संभव है? वर्तमान में फ़ायरफ़ॉक्स शुरू होता है, जो मैं वास्तव में एहसान नहीं करता; यह धीमी गति से लोडिंग और अनावश्यक है।

जवाबों:


11

पहले आपको यह सुनिश्चित करने .desktopकी आवश्यकता है कि XDG विनिर्देश द्वारा एक फ़ाइल आवश्यक है। जीयूआई कार्यक्रमों के लिए मौका अच्छा है कि पहले से ही एक उपयुक्त .desktopफ़ाइल है, टर्मिनल अनुप्रयोगों के लिए आमतौर पर आपको अपना खुद का बनाना होगा। /usr/share/applicationsमौजूदा फ़ाइलों के लिए निर्देशिका की जाँच करें। शायद वहाँ पहले से ही एक mutt.desktopफ़ाइल है। अगर वहाँ नहीं है, तो एक बनाएँ।

फिर फ़ाइल को संपादित करें ~/.local/share/applications/mimeapps.listऔर निम्न पंक्ति जोड़ें

[Default Applications]
x-scheme-handler/mailto=mutt.desktop;

यह mailtoहैंडलर के साथ उत्परिवर्तन को पंजीकृत करता है । आप के साथ एक सफल पंजीकरण की पुष्टि कर सकते हैं

xdg-mime query default 'x-scheme-handler/mailto'

जिसे आउटपुट देना चाहिए mutt.desktop। अब आप क्रोमियम में "mailto" पर क्लिक कर सकते हैं और एक टर्मिनल को एक म्यूट उदाहरण के साथ पॉप अप करना चाहिए। डेस्कटॉप सत्र या ब्राउज़र को पुनरारंभ करने की भी आवश्यकता नहीं है।


1

आपको एक स्क्रिप्ट लिखने की ज़रूरत है जो उस टर्मिनल को निर्दिष्ट करती है जिसे आप muttखोलना चाहते हैं । फिर फ़ायरफ़ॉक्स में, आप इस स्क्रिप्ट को mailto लिंक के साथ जोड़ सकते हैं। उदाहरण के लिए, यदि आप टर्मिनेटर का उपयोग कर रहे हैं, तो आप निम्न स्क्रिप्ट बना सकते हैं।

#!/usr/bin/env bash
terminator -x "mutt '$@'"

मेरे मामले में, मेरे पास लगातार ड्रॉप-डाउन टर्मिनेटर है, इसलिए मैं इसे एक नए टैब में चाहता हूं। मुझे एक 256 रंग पैलेट की भी आवश्यकता है, इसलिए मैं उपयोग करता हूं

#!/usr/bin/env bash
terminator --new-tab -x "TERM=xterm-256color; mutt '$@'"

FWIW यह मेरी पूरी स्क्रिप्ट है, जो शॉर्टकट Ctrl+ का उपयोग करके टर्मिनेटर (यदि छिपा हुआ) को भी अनहाइड करता है Space, और इसे सामने लाता है।

#!/usr/bin/env bash

terminator --new-tab -x "TERM=xterm-256color; mutt '$@'"

# If necessary, unhide and focus terminator window.
windowlist=$(xprop -root | sed -rn 's/_NET_CLIENT_LIST_STACKING\(WINDOW\): window id # (.*)/\1/p' | tr -d ',')
terminator_visible=false
for i in $windowlist; do
  [[ $(xprop -id $i | grep WM_CLASS\(STRING\)) == 'WM_CLASS(STRING) = "terminator", "Terminator"' ]] && terminator_visible=true && term_id=$i
done

if [[ $terminator_visible == false ]]; then # it's hidden
  xdotool key --clearmodifiers ctrl+space
elif [[ $(xprop -id $(xdotool getactivewindow) | grep WM_CLASS\(STRING\)) != 'WM_CLASS(STRING) = "terminator", "Terminator"' ]]; then # it's visible, but not active
  xdotool windowactivate $term_id 2> /dev/null # Gives error; not sure why. XGetWindowProperty[_NET_WM_DESKTOP] failed (code=1)
fi

-1

आप कौन सा डेस्कटॉप वातावरण चला रहे हैं? आपको यह जांचने की आवश्यकता है कि इस प्रकार की चीजों के लिए एक विशिष्ट हैंडलर कैसे सेट किया जाए, यह MIME टाइप हैंडलर की सेटिंग है।


OpenBox, मुझे नहीं पता कि कैसे mimetype पाने के लिए, यह एक फ़ाइल नहीं है, मैं इसे पहचानने के लिए सिर्फ 'mimetype / path / to / file' नहीं चला सकता
daisy
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.