ฉันจะเร่งความเร็วการสร้างวาระการประชุมโหมดได้อย่างไร


11

ใช้เวลาหลายวินาทีสำหรับโหมด org ของ Emacs ในการสร้างวาระของฉัน ฉันจะทำให้เร็วขึ้นได้อย่างไร ฉันใช้ไฟล์เก็บถาวรอยู่แล้วและฉันมี.orgไฟล์น้อยกว่า 30 ไฟล์ไฟล์ทั้งหมดนั้นสั้นพอสมควร

เอาต์พุต profiler บางส่วนของorg-agendaคำสั่ง:

+ ...                                                              93  50%
- command-execute                                                  90  49%
 - call-interactively                                              85  46%
  - org-agenda                                                     80  43%
   - byte-code                                                     80  43%
    - call-interactively                                           79  43%
     - org-agenda-list                                             79  43%
      - byte-code                                                  79  43%
       - org-agenda-prepare                                        68  37%
        - org-agenda-prepare-buffers                               67  36%
         - byte-code                                               67  36%
          - org-get-agenda-file-buffer                             67  36%
           - find-file-noselect                                    67  36%
            - find-file-noselect-1                                 67  36%
             - after-find-file                                     66  36%
              + run-hooks                                          35  19%
              + normal-mode                                        30  16%
              + auto-save-mode                                      1   0%
             + normal-backup-enable-predicate                       1   0%
        + org-agenda-files                                          1   0%
       + byte-code                                                 10   5%
         org-days-to-iso-week                                       1   0%
    + org-agenda-get-restriction-and-command                        1   0%   
  + byte-code                                                       4   2%   
  + minibuffer-complete                                             1   0%

ดูเหมือนว่าโหมดองค์กรจะเสียเวลามากในการเปิดไฟล์ คุณอาจเห็นการปรับปรุงหากคุณเปิดบัฟเฟอร์เหล่านี้ไว้เสมอ
Malabarba

คำตอบ:


9

ฉันได้สร้างวิธีแก้ปัญหานี้ซึ่ง pregenerates บัฟเฟอร์วาระเมื่อใดก็ตามที่ Emacs ไม่ได้ใช้งานนานกว่า 5 วินาที ครั้งต่อไปที่คำสั่งวาระรันอยู่การสร้างจะใช้เวลาน้อยกว่าหนึ่งวินาทีเนื่องจากบัฟเฟอร์องค์กรถูกโหลดไปแล้ว

(run-with-idle-timer 5 nil (lambda () (org-agenda-list) (delete-window)))

6

ไม่ได้ค่อนข้างคำตอบสำหรับคำถามของคุณ (setq org-agenda-sticky t)แต่พิจารณา สิ่งนี้ทำให้qคำสั่งฝังบัฟเฟอร์ของวาระเมื่อคุณทำเสร็จแล้วแทนที่จะปิด

ผลที่ได้คือว่าวาระจะปรากฏขึ้นอีกครั้งทันทีเมื่อคุณขอมันต่อไป แต่มันจะไม่ได้รับการปรับปรุงตั้งแต่ครั้งล่าสุดที่คุณเห็นมัน หากคุณต้องการให้อัปเดตคุณสามารถกดgในวาระการประชุมเพื่อสร้างใหม่ได้อย่างถูกต้อง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.