Skip to content

Poor performance in org-mode buffers #186

Description

@jams2

High, thanks for the package, I've been enjoying it!

One issue I've come across is that in my main org-mode file, which is about 4000 lines long (378 headings), navigation can become very laggy when the headings are collapsed. move-beginning-of-line, next-line, etc. all become very slow. Max heading depth in my file is currently 3. The same issue doesn't appear when navigating over expanded trees.

Emacs info: GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo version 1.16.0, Xaw scroll bars) of 2024-06-19

Jinx version: 1.7 e48f333

The CPU profiler shows it's spending a lot of time in a few of jinx's functions (I'll attach the full report).

       17236  67% - timer-event-handler
       17236  67%  - apply
       17223  67%   - jinx--timer-handler
       17223  67%    - jinx--check-pending
       17223  67%       jinx--find-visible-pending
          13   0%   - #<native-comp-function F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_9>
          13   0%      jit-lock-context-fontify
        8064  31% - command-execute
        8030  31%  - byte-code
        8030  31%   - read-extended-command
        8030  31%    - read-extended-command-1
        8030  31%     - completing-read-default
        8030  31%      - apply
        8030  31%       - vertico--advice
        8030  31%        - apply
        8030  31%         - #<byte-code-function 6AE>
        8030  31%          - apply
        8030  31%           - #<native-comp-function completing-read-default>
        7467  29%            - timer-event-handler
        7467  29%             - apply
        7447  29%              - jinx--timer-handler
        7447  29%               - jinx--check-pending
        7447  29%                  jinx--find-visible-pending

profile.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions