मैं एक .sh फ़ाइल को vim में खोलने के लिए एक zsh फ़ंक्शन चला रहा हूँ, जबकि इसकी संबंधित .pdf फ़ाइल को evince में खोल रहा हूँ। मैं वर्तमान में वर्तमान gnome- टर्मिनल विंडो में एक नया टैब खोलने के लिए xdotool का उपयोग कर रहा हूं, और फिर उस टैब में vim निष्पादित कर रहा हूं। मैं मौजूदा विंडो में कमांड लाइन आउटपुट ऑफ एवन और ओपन विम को मौन करूंगा।
दुर्भाग्य से, एक मानक रीडायरेक्ट के साथ evince name.pdf &> /dev/null
, जैसे कि एविएशन ग्राफिक रूप से नहीं खुलता है। क्या मैं उस टर्मिनल में अपने मानक आउटपुट / त्रुटि के बिना एक टर्मिनल से GUI प्रोग्राम चला सकता हूं?
समारोह नीचे है:
edittex () {
# open a new terminal tab in current terminal
WID=$(xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)"| awk '{print $5}')
xdotool windowfocus $WID
xdotool key ctrl+shift+t
wmctrl -i -a $WID
# open vim in the new terminal tab
xdotool type "vim $@.tex"
xdotool key KP_Enter
# open evince in old terminal tab
evince "$@.pdf"
}
उपयोग: edittex filename
.pdf और .ex फ़ाइलों को संभालने का नाम फ़ाइल नाम। Pdf और filename.tex रखा गया है।
evince filename &> /dev/null
मेरे लिए Zsh में काम करता है। मुझे लगता है कि समस्या वास्तव में एक और है।