dupe wars

Emanuel Berg via Users list for the GNU Emacs text editor <[email protected]> Fri, 01 Oct 2021 04:40:42 +0200
Newsgroups gmane.emacs.help,gmane.emacs.w3m
Message-ID <[email protected]>
o/

See the below code - but I still get duplicate entries in
~/URL

A seemingly trivial task that picks up complexity in
unexpected habitats ...

Ideas?

TIA

(defun append-string-to-file (str file &optional uniq)
  (unless (and uniq
               (xref-matches-in-files (regexp-quote str) (list file)) )
    (append-to-file (format "%s\n" str) nil file) ))

(defun w3m-kill-url-dwim ()
  (interactive)
  (let*((url        (or (w3m-anchor)
                        (thing-at-point 'url)
                        w3m-current-url) )
        (title      (when (string= url w3m-current-url)
                      (w3m-current-title) ))
        (title-part (if title
                      (format " ; %s" title)
                      "") )
        (cmd        (format "echo \"%s\" | xi" url)) )
    (append-string-to-file (format "%s%s" url title-part)
                           (format "%s/URL" (getenv "HOME")) t)
    (kill-new url)
    (shell-command cmd) )
  (message "%s" (current-kill 0)) )

https://dataswamp.org/~incal/emacs-init/w3m/w3m-url.el
https://dataswamp.org/~incal/emacs-init/w3m/

-- 
underground experts united
https://dataswamp.org/~incal