あなたの質問の最初の部分として、これが私が使うトリックです。コメントが続きます。
(setq org-directory "〜/ TOPDIR-OF-ORG-FILES")
(global-set-key "\ C-cog"'fp-org-grep)
(defun fp-org-grep(regexp)
(インタラクティブな「MOrggrep?」)
(if(string-equal regexp "")
(エラー「Rienàtrouver!」)
('grepが必要)
(grep-find-templateを除く
(grep-compute-defaults))
(let((grep-find-ignored-directories nil)
(grep-find-ignored-files nil))
(rgrep regexp "* .org" org-directory))
(setq fp-org-isearch-string regexp)
(保存エクスカーション
(set-buffer "* grep *")
(setq next-error-function'fp-org-grep-next-error))))
(defun fp-org-grep-next-error(n&optional reset)
(compilation-next-error-function n reset)
(org-reveal)
(setq isearch-string fp-org-isearch-string)
(when(または(null search-ring)
(not(string-equal(car search-ring)fp-org-isearch-string)))
(fp-org-isearch-string search-ringをプッシュ)))
(defvar fp-org-isearch-string "")
速度を上げるために、3つのOrgファイルのみをアジェンダに保持しますが、「Cc o g」コマンドを定義して、すべてのOrgファイルを再帰的にgrepします。通常の方法でエントリに移動すると、コンテキストを取り巻く組織が表示されます。「Cs」を押して、検索したテキストを強調表示することもできます。
フランソワ