emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] Re: [Orgmode] IMPORTANT Modified link escaping in Org mode


From: David Maus
Subject: [O] Re: [Orgmode] IMPORTANT Modified link escaping in Org mode
Date: Sun, 13 Mar 2011 17:04:48 +0100
User-agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (Gojō) APEL/10.8 Emacs/23.2 (i486-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO)

At Sun, 13 Mar 2011 14:37:05 +0100,
Michael Brand wrote:
>
> Hi David
>
> The current version of dmaus/org-check-percent-escapes from Worg
> http://orgmode.org/worg/org-hacks.html#check-old-link-escapes
> loops forever in the outer while when used on a one line Org buffer
> containing just [[http://www.orgmode.org]] except I hack something
> like (goto-char end) behind the inner while. What am I doing wrong?
> Did anybody else have this issue?

Sorry, my fault. Forgot to move point forward after matching a link.
I pushed this fixed version to Worg:

#+begin_src emacs-lisp
  (defun dmaus/org-check-percent-escapes ()
    "*Check buffer for possibly problematic old link escapes."
    (interactive)
    (when (eq major-mode 'org-mode)
      (let ((old-escapes '("%20" "%5B" "%5D" "%E0" "%E2" "%E7" "%E8" "%E9"
                           "%EA" "%EE" "%F4" "%F9" "%FB" "%3B" "%3D" "%2B")))
        (unless (boundp 'warning-suppress-types)
          (setq warning-suppress-types nil))
        (widen)
        (show-all)
        (goto-char (point-min))
        (while (re-search-forward org-any-link-re nil t)
          (let ((end (match-end 0)))
            (goto-char (match-beginning 0))
            (while (re-search-forward "%[0-9a-zA-Z]\\{2\\}" end t)
              (let ((escape (match-string-no-properties 0)))
                (unless (member (upcase escape) old-escapes)
                  (warn "Found unknown percent escape sequence %s at buffer %s, 
position %d"
                        escape
                        (buffer-name)
                        (- (point) 3)))))
            (goto-char end))))))
#+end_src

Best,
  -- David
--
OpenPGP... 0x99ADB83B5A4478E6
Jabber.... address@hidden
Email..... address@hidden

Attachment: pgpLW3HLqhjAQ.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]