2016-12-21 4 views
0

일정 목록 검색 후 표시된 항목을 대량 복사해야합니다.org 아젠다에서 대량 복사하는 방법

대량 작업 발송자는 일괄 수정 만 허용합니다. (변수 org-refile-keep을 수정하고 싶지 않습니다.)

이 대량 작업의 사용자 지정 기능은 어떻게 나타나야합니까? 함수가 다음가 실행되는 각 항목의 대상을 묻습니다로

또 org 매뉴얼, 사용자 정의 http://orgmode.org/manual/Agenda-commands.html#index-B-1429의 기능을 단순히 트릭을하지 않습니다 org-copy에 의해 org-set-property "CATEGORY" "web" 교체에 대한 예를 제공합니다.

+0

그냥 유용한 코멘트없이 아래로 투표를하는 것은 매우 건설적인하지 않습니다. – baruch

답변

1

이 답변은 원본 포스터가 *Org Agenda* 버퍼의 일부 발췌본 (편집 된 버전)이 아닌 마스터 할 일 목록 파일 전체를 복사하려고한다고 가정합니다.

마크 귀하의 항목, 다음, 다음 org-agenda-bulk-copy-subtree를 입력 한 문자 B, 다음 문자 f 충돌 RET을했다. org-agenda-bulk-action이 /가 (육안에 보이지 않는) 마커를 이동 파괴 것으로 보인다 내 테스트에서 : 원래 포스터 등 목록에 항목을 밀어 데이터 수집 부분,

[주의을 수정할 수 있습니다 따라서 마스터 작업 파일로 되돌아가는 마커를 사용하여 추가 작업을 수행해야하는 경우 *Org Agenda* 버퍼를 재구성해야합니다. 또한, 아마도 우리는/복제하려면 *Org Agenda* 버퍼를 복제하고 원본이 변경되지 않도록 임시 버퍼와 함께 일할 수?]

(defun org-agenda-bulk-copy-subtree() 
"Doc-string" 
(interactive) 
    (or (eq major-mode 'org-agenda-mode) (error "Not in agenda")) 
    (let* ((marker (or (org-get-at-bol 'org-marker) (org-agenda-error))) 
     (buffer (marker-buffer marker)) 
     (pos (marker-position marker)) 
     (output-buf (get-buffer-create "*RESULTS*"))) 
    (with-current-buffer buffer 
    (goto-char pos) 
    (org-back-to-heading t) 
    (org-copy-subtree)) 
    (with-current-buffer output-buf 
    (insert org-subtree-clip "\n")) 
    (unless (get-buffer-window output-buf) 
    (display-buffer output-buf t)))) 
+0

법무 장관 감사합니다, 이것은 내가 찾고 있던 것이 었습니다! – baruch