Merge branch 'raxod502-feat/fix-dups'

master
Elis Hirwing 8 years ago
commit ba3ce40211
No known key found for this signature in database
GPG Key ID: D57EFA625C9A925F
  1. 30
      webpaste.el

@ -159,6 +159,25 @@ the docs for `webpaste--provider'."
;; modified from https://emacs.stackexchange.com/a/33893/12534
(defun webpaste--alist-set (key val alist)
"Set property KEY to VAL in ALIST. Return new alist.
This creates the association if it is missing, and otherwise sets
the cdr of the first matching association in the list. It does
not create duplicate associations. Key comparison is done with
`equal'.
This method may mutate the original alist, but you still need to
use the return value of this method instead of the original
alist, to ensure correct results."
(let ((pair (assoc key alist)))
(if pair
(setcdr pair val)
(push (cons key val) alist)))
alist)
(defvar webpaste--tested-providers ()
"Variable for storing which providers to try in which order while running.
This list will be re-populated each run based on webpaste-provider-priority or
@ -332,11 +351,16 @@ Optional params:
;; If we get a separator sent to the function, append it to the list of
;; separators for later use
(when lang-uri-separator
(cl-pushnew (cons uri lang-uri-separator) webpaste--provider-separators))
(setq webpaste--provider-separators
(webpaste--alist-set
uri lang-uri-separator webpaste--provider-separators)))
;; Add pre-calculated list of webpaste lang alists
(cl-pushnew (cons uri (webpaste--get-lang-alist-with-overrides lang-overrides))
webpaste--provider-lang-alists)
(setq webpaste--provider-lang-alists
(webpaste--alist-set
uri
(webpaste--get-lang-alist-with-overrides lang-overrides)
webpaste--provider-lang-alists))
(cl-function
(lambda (text

Loading…
Cancel
Save