Add hypo-delete-last
This commit changes the workings of the `hypo--collect-url' function to store the hash of the last uploaded file or snippet. This is then used by `hypo-delete-last' to delete that same url.
This commit is contained in:
parent
45610d7000
commit
0f6c2b3228
2 changed files with 21 additions and 0 deletions
5
NEWS
Normal file
5
NEWS
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# -*- mode: org; -*-
|
||||||
|
* v0.2.0
|
||||||
|
|
||||||
|
- Add =hypo-delete-last=, which deletes the last posted item of the
|
||||||
|
current session.
|
16
hypo.el
16
hypo.el
|
@ -31,10 +31,17 @@
|
||||||
(autoload 'beginning-of-sexp "thingatpt")
|
(autoload 'beginning-of-sexp "thingatpt")
|
||||||
(autoload 'end-of-sexp "thingatpt")
|
(autoload 'end-of-sexp "thingatpt")
|
||||||
|
|
||||||
|
(defvar hypo--last-post nil
|
||||||
|
"The hash of the last snippet sent to hypo.
|
||||||
|
|
||||||
|
Will be used for certain commands that operate on the last thing
|
||||||
|
sent to hypo.")
|
||||||
|
|
||||||
(defun hypo--collect-url ()
|
(defun hypo--collect-url ()
|
||||||
"Collect the returned url."
|
"Collect the returned url."
|
||||||
(let* ((start (search-forward "\n\n"))
|
(let* ((start (search-forward "\n\n"))
|
||||||
(end (1- (search-forward "\n"))))
|
(end (1- (search-forward "\n"))))
|
||||||
|
(setq hypo--last-post (buffer-substring-no-properties (- end 7) end))
|
||||||
(copy-region-as-kill start end)))
|
(copy-region-as-kill start end)))
|
||||||
|
|
||||||
(defun hypo--collect-and-kill (status)
|
(defun hypo--collect-and-kill (status)
|
||||||
|
@ -96,5 +103,14 @@ STATUS is ignored."
|
||||||
(progn (end-of-sexp) (point))
|
(progn (end-of-sexp) (point))
|
||||||
filename)))
|
filename)))
|
||||||
|
|
||||||
|
(defun hypo-delete-last ()
|
||||||
|
"Delete the last thing sent to hypo."
|
||||||
|
(interactive)
|
||||||
|
(unless hypo--last-post (error "Nothing posted this session"))
|
||||||
|
(let ((url-request-method "DELETE"))
|
||||||
|
(url-retrieve (concat "https://ryuslash.org/hypo/" hypo--last-post)
|
||||||
|
#'ignore)
|
||||||
|
(setq hypo--last-post nil)))
|
||||||
|
|
||||||
(provide 'hypo)
|
(provide 'hypo)
|
||||||
;;; hypo.el ends here
|
;;; hypo.el ends here
|
||||||
|
|
Loading…
Reference in a new issue