मैंने इसके साथ मोड लाइन में एक ऑर्ग-टाइमर इंडिकेटर सेट किया।
(setq-default
mode-line-format
(quote
(
;; org-timer
(:eval
(unless (not org-timer-countdown-timer)
(propertize (let* ((rtime (decode-time
(time-subtract
(timer--time org-timer-countdown-timer)
(current-time))))
(rmins (nth 1 rtime))
(rsecs (nth 0 rtime)))
(format "🕔 %d:%d" rmins rsecs))
'face '(:foreground "cyan" :weight bold)
'help-echo "org-timer")))
)))
मैं चाहता हूं कि यह ऑर्ग-टाइमर संकेतक सभी मोड लाइनों के बजाय केवल सक्रिय मोड लाइन में दिखाया जाए । यह कैसे करना है?
देखें: emacs.stackexchange.com/a/22682/2287
—
कानून सूची
@lawlist आपके कोड को नहीं समझ सकती। पता नहीं कैसे मेरे मामले पर लागू करने के लिए।
—
स्टारडाइवर
redisplay
इंजन कुछ निश्चित परिस्थितियों में प्रत्येक विंडो की जाँच करने में सक्षम है (उदाहरण के लिए, जब मोड लाइन स्वाभाविक रूप से ताज़ा किया जाता है, या जब यह ताज़ा करने के लिए मजबूर किया जाता है)। जब mode-line-format
फंक्शन (selected-window)
सम्मिलित होता है , तो एक अलग विंडो लौटा दी जाएगी, क्योंकि विभिन्न विंडो पर रिडिजेल्प विजिट करता है। उस मान की तुलना पहले से रिकॉर्ड किए गए मूल्य से की post-command-hook
जा सकती है - उदाहरण के लिए, अंतिम ज्ञात को रिकॉर्ड करने के लिए इस्तेमाल किया जा सकता है selected-window
और बाद में एक फ़ंक्शन के साथ उस मूल्य की तुलना की जा सकती है mode-line-format
। इसलिए, मैं पीसीएच को रिकॉर्ड / स्टोर करने के लिए उपयोग करता हूं selected-window
।
@lawlist मैंने आपके कोड की जाँच की है, लेकिन मेरे मामले के लिए सामान्य उपयोग नहीं पाया है। अगर मैं इसके बजाय दूसरी चीज़ में बदलूं
—
स्टारडाइवर
org-timer
। मुझे क्या करना चाहिए? मुझे और अधिक सामान्य तरीके की उम्मीद है। यहां तक कि इसने मुझे प्रेरित किया। क्या आप मुझे अधिक सटीक कोड उदाहरण दे सकते हैं? क्योंकि मुझे लगा कि यह अलग है 'face
, लेकिन मुझे डिस्प्ले स्ट्रिंग बदलने की जरूरत है।
मैंने यह कोशिश नहीं की है, लेकिन यह प्रश्न इस तरह दिखता है: emacs.stackexchange.com/q/13842/115
—
कौशल मोदी