Hi Hector,

you fix does not work, because it changes the match data, which is still
needed further down.  Could you please try the attached patch and report
back?

Thank you

Carsten



On Sun, Aug 11, 2019 at 4:50 PM Héctor Enríquez Ramón <hector....@gmail.com>
wrote:

> --text follows this line--
>
> Hi.
>
>
> * Issue:
>
> 1. Use max length format %<number>.<max>, example
>
> (setq org-agenda-prefix-format
>       '((agenda . " %i %-4.4 c%?-12t% s")  ;; (agenda . " %i %-12:c%?-12t%
> s")
>         (timeline . "  % s")
>         (todo . " %i %-4.4 c%?-12t% s")    ;; (todo . " %i %-12:c")
>         (tags . " %i %-4.4 c")             ;; (tags . " %i %-12:c")
>         (search . " %i %-4.4 c"))          ;; (search . " %i %-12:c"))
>
> 2. Open an org file.
>
> 3. Typing C-c a a (for example) raise:
>
>    org-compile-prefix-format: Args out of range: "-4.4", 4, 11
>
>
> * How to fix it:
>
> org-agenda.el: (see comments ;; + line added, ;; - line removed)
>
>           (when (eq var 'category)
>             (setq org-prefix-category-length
>                   (floor (abs (string-to-number (match-string 2 s)))))
>             (setq org-prefix-category-max-length
>                   (let ((x (match-string 2 s)))
>                     (save-match-data
>        ;; +
>                       (when (string-match "\\.[0-9]+" x)
>                         (string-to-number (substring (match-string 0 x)
> 1)))))))  ;; +
> ;;                     (when (string-match-p "\\.[0-9]+" x)
>         ;; -
> ;;                       (string-to-number (substring (match-string 0 x)
> 1))))))  ;; -
>           (if (eq var 'eval)
>               (setq varform `(format ,f (org-eval ,(read (match-string 4
> s)))))
>
>
>
> Best regards. Hector
>
> Emacs  : GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, X toolkit, Xaw
> scroll bars)
>  of 2019-04-13
> Package: Org mode version 9.2.5 (9.2.5-1-gff6508-elpaplus @
> /home/edo/.emacs.d/elpa/org-plus-contrib-20190805/)
>

Attachment: patch
Description: Binary data

Reply via email to