ORG-MODE - एक निश्चित तिथि पर ट्रिगर TODO स्थिति?


9

हर सुबह एक टिकर फ़ाइल या कैलेंडर को मैन्युअल रूप से जांचने के बजाय, मैं एक ट्रिगर कैसे बना सकता हूं जो एक निश्चित तिथि पर TODO को एक आइटम की स्थिति निर्धारित करेगा?

जवाबों:


5

एक सीधा जवाब नहीं है लेकिन आप इसके बजाय समय सीमा और समयबद्धन के लिए ऑर्ग के समर्थन का उपयोग कर सकते हैं।

आप अपने TODO आइटम बना सकते हैं और उन्हें एक निर्धारित तिथि दे सकते हैं, जिसका अर्थ है ऑर्ग में वह तारीख जिसे आप कार्य करने की योजना बनाते हैं - और जब यह आपके एजेंडे में दिखना शुरू हो जाना चाहिए। (यदि आप पहले से ही ओआरजी एजेंडा विचारों का उपयोग नहीं कर रहे हैं तो वे कुछ जांच के लायक हैं!)

अपनी आवश्यकताओं के आधार पर आप एक समय सीमा भी बता सकते हैं। उदाहरण के लिए: शुक्रवार को एक TODO बनाएं, इसे निम्न बुध के लिए शेड्यूल करें जब आप वास्तव में इसे देखना चाहते हैं; और इसे अगले शुक्रवार के लिए एक समय सीमा दें, जिसके द्वारा इसे पूरा किया जाना चाहिए।


7

यहाँ कुछ है जो मैं हर सुबह अपने सभी टूडू के माध्यम से कंघी करने के लिए उपयोग करता हूं और यदि यह अतिदेय है तो आज की तारीख को बदल दें, और अगली कार्रवाई से इसे सक्रिय करें यदि यह आज है। यह मेरे अपने कैलेंडर के लिए एक कस्टम समाधान है जिसे मैं एक साल से उपयोग कर रहा हूं, इसलिए निस्संदेह आपको अपने स्वयं के हिस्से पर कुछ अनुकूलन की आवश्यकता होगी। मेरा स्मरण यह है कि संस्करण 7 और 8 org-deadlineसे एक परिवर्तन हुआ था org-mode, और मैं अपने सेटअप में पिछले संस्करण का उपयोग कर सकता हूं। वर्तमान संस्करण को अतिरिक्त तर्क या कुछ और की आवश्यकता हो सकती है - यदि आपको अतिरिक्त सहायता की आवश्यकता है, तो मुझे बताएं और समय की अनुमति के अनुसार मैं अगले कुछ दिनों में इस पर काम करूंगा।

हेडगेक्स का उपयोग मैं करता हूं कि हेडिंग में दो तारे हैं और यह बफर के फ्लश-लेफ्ट में होगा। अपने स्वयं के सेटअप की संभावना को रेगेक्स के एक संशोधन की आवश्यकता होगी।

(defun org-carry-forward-uncompleted-tasks ()
"Carry forward uncompleted tasks."
(interactive)
  (save-excursion
    (goto-char (point-max))
    (while (re-search-backward "^\\*\\* Active" nil t)
      (unless (org-at-heading-p)
        (org-back-to-heading t))
      (let* (
          (element (org-element-at-point))
          (todo-state (org-element-property :todo-keyword element))
          (deadline (org-element-property :deadline element))
          (deadline-time-stamp
            (when deadline
              (time-to-days
                (org-time-string-to-time
                  (org-element-property :raw-value deadline)))))
          (today (time-to-days (current-time))) )
        (when
            (and
              deadline-time-stamp
              (> today deadline-time-stamp) ;; deadline is overdue
              (string= todo-state "Active") ) ;; todo-state equals "X"
          (org-deadline nil ".") )))))

(defun org-make-active-today ()
"Change task from Next Action to Active if deadline is less than or equal to today."
(interactive)
  (save-excursion
    (goto-char (point-max))
    (while (re-search-backward "^\\*\\* Next Action" nil t)
      (unless (org-at-heading-p)
        (org-back-to-heading t))
      (let* (
          (element (org-element-at-point))
          (todo-state (org-element-property :todo-keyword element))
          (deadline (org-element-property :deadline element))
          (deadline-time-stamp
            (when deadline
              (time-to-days
                (org-time-string-to-time
                  (org-element-property :raw-value deadline) ))))
          (today (time-to-days (current-time))) )
        (when
            (and
              deadline-time-stamp
              (>= today deadline-time-stamp) ;; deadline less than or equal to today
              (string= todo-state "Next Action")) ;; todo-state equals "X"
          (org-deadline nil ".")
          (org-todo "Active") )))))
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.