1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
(defun yejun/paste-region-or-buffer (&optional p)
(interactive "P")
(let ((filename (read-string "Enter filename: " (buffer-name)))
(output-buffer " *paste-output*")
(public (if p " --visibility public" "")))
(shell-command-on-region
(if (use-region-p) (region-beginning) (point-min))
(if (use-region-p) (region-end) (point-max))
(concat "hut paste create --name \"" filename "\"" public)
output-buffer)
(with-current-buffer output-buffer
(goto-char (point-max))
(forward-line -1)
(kill-new (thing-at-point 'line)))
(kill-buffer output-buffer)))