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.... dmjena@jabber.org Email..... dmaus@ictsoc.de