25

:PROPERTIES:という行を含め、引き出しを完全に非表示にする方法を教えてください:PROPERTIES:

* TASKS (with deadines)

    ** Next Action [#A] Ask the geniuses how to do this.  :lawlist:
       DEADLINE: <2013-07-04 Thu >
         :PROPERTIES:
         :ToodledoID: 330686790
         :ToodledoFolder: TASKS
         :Hash:     afa88f17317bbe2ce0ce661333cdcfb4
         :END:
       This line is for notes, which appears underneath the properties drawer.

* UNDATED (without deadlines)

    ** Someday [#A] Close but no cigar -- keep trying.  :lawlist:
          :PROPERTIES:
          :ToodledoID: 330686680
          :ToodledoFolder: TASKS
          :Hash:     eb0b8d360b5b1453dd66ed0c5698e135
          :END:
       This line is for notes, which appears underneath the properties drawer.

この機能は Google では確認できませんでした。そのため、この機能の要求を実現するには、特別なコード行が必要になると思います。[言い換えれば、これは特別なコードで発明する必要があるため、スーパー ユーザーの質問ではないと思います。]

4

3 に答える 3

26

次の回答は、 から までのすべてを完全に隠してい:PROPERTIES:ます:END:(org-cycle-hide-drawers 'children)、または(org-cycle-hide-drawers 'all)、またはアウトライン ビューのサイクルに関連する他の関数と組み合わせて評価することによってテストできます。org-modeファミリに含まれる展開する標準関数はすべて機能しshow-allます。org-show-subtree; 等

(require 'org)

(defun org-cycle-hide-drawers (state)
  "Re-hide all drawers after a visibility state change."
  (when (and (derived-mode-p 'org-mode)
             (not (memq state '(overview folded contents))))
    (save-excursion
      (let* ((globalp (memq state '(contents all)))
             (beg (if globalp
                    (point-min)
                    (point)))
             (end (if globalp
                    (point-max)
                    (if (eq state 'children)
                      (save-excursion
                        (outline-next-heading)
                        (point))
                      (org-end-of-subtree t)))))
        (goto-char beg)
        (while (re-search-forward org-drawer-regexp end t)
          (save-excursion
            (beginning-of-line 1)
            (when (looking-at org-drawer-regexp)
              (let* ((start (1- (match-beginning 0)))
                     (limit
                       (save-excursion
                         (outline-next-heading)
                           (point)))
                     (msg (format
                            (concat
                              "org-cycle-hide-drawers:  "
                              "`:END:`"
                              " line missing at position %s")
                            (1+ start))))
                (if (re-search-forward "^[ \t]*:END:" limit t)
                  (outline-flag-region start (point-at-eol) t)
                  (user-error msg))))))))))

さまざまなビューのすべての間でタブを循環させることに興味がある人 (引き出しの中にあるものを明らかにすることを含む) には、前に追加の条件を追加すること:PROPERTIES:で簡単に変更できます。org-cycle-internal-local (t ;; Default action: hide the subtree. . . .

((eq org-cycle-subtree-status 'subtree)
  (org-show-subtree)
  (org-unlogged-message "ALL")
  (setq org-cycle-subtree-status 'all))

スクリーンショット -- 非表示の引き出し:

https://www.lawlist.com/images/org_mode_properties_a.png


スクリーンショット -- 引き出しが見える:

https://www.lawlist.com/images/org_mode_properties_b.png

于 2013-07-05T15:50:18.520 に答える
1

少なくとも(多くの?)余分なコーディングなしでは不可能です...

問題は次のとおりです。どのようにそれを再表示しますか? 「…」だけで見えますか?

于 2013-07-04T22:19:22.240 に答える