[dk-tug] reftex: træls lisp

Lars Madsen <[email protected]> Tue, 3 Jun 2014 11:34:21 +0000
Newsgroups gmane.comp.tex.danish
Message-ID <[email protected]>
Hej

Jeg sidder og retter på et dokument hvor jeg retter alle labels så de har prefix (nej jeg bruger ikke cleverref, for den er ikke altid clever).

Jeg har lavet min egen version af reftex-change-label (som nu er i emacs core i reftex-global.el)

Dette er originalen

(defun reftex-change-label (&optional from to)
  "Run `query-replace-regexp' of FROM with TO in all macro arguments.
Works on the entire multifile document.
If you exit (\\[keyboard-quit], RET or q), you can resume the query replace
with the command \\[tags-loop-continue].
No active TAGS table is required."
  (interactive)
  (let ((default (reftex-this-word "-a-zA-Z0-9_*.:")))
    (unless from
      (setq from (read-string (format "Replace label globally [%s]: "
                                      default))))
    (if (string= from "") (setq from default))
    (unless to
      (setq to (read-string (format "Replace label %s with: "
                                    from))))
    (reftex-query-replace-document
     (concat "{" (regexp-quote from) "}")
     (format "{%s}" to))))

den har jeg så modificeret således at  den i stedet for at spørge efter ny label, så spørger den efter prefix.

Det fungerer glimrende.

Men der er et problem. Når makroen er færdig med at rette, så ender man op i en helt anden buffer end man starter i hvilket er bøvlet.

Men det ser ud til at reftex-query-replace-document er træls, eller rettere tags-query-replace (arbejdshesten i reftex-query-replace-document) har et problem. Når den er færdig skriver den 

All files processed

men den ser ud til at den gør det med en error metode, i *Messages* står der

user-error: All files processed

Dvs. jeg kan ikke køre noget efter reftex-query-replace-document, det bliver aldrig udført.

Nogen der kender en omvej? Evt. hvordan man kan fange sådan en error så vi kan fortsætte bagefter?








/Lars Madsen
Institut for Matematik / Department of Mathematics
Aarhus Universitet / Aarhus University
Mere info: http://au.dk/daleif@imf / More information: http://au.dk/en/daleif@imf