From fb5ec068ddd50f6bce41c7a0bad45673db787940 Mon Sep 17 00:00:00 2001 From: William Carroll Date: Tue, 1 Sep 2020 10:17:43 +0100 Subject: More Elisp linting This should cover most of the remaining linting errors. After this, I expect fewer than ten linting errors. --- emacs/.emacs.d/wpc/scrot.el | 37 +++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) (limited to 'emacs/.emacs.d/wpc/scrot.el') diff --git a/emacs/.emacs.d/wpc/scrot.el b/emacs/.emacs.d/wpc/scrot.el index efd22e2b1437..3444238158a4 100644 --- a/emacs/.emacs.d/wpc/scrot.el +++ b/emacs/.emacs.d/wpc/scrot.el @@ -1,4 +1,9 @@ +;;; scrot.el --- Screenshot functions -*- lexical-binding: t -*- + ;; Author: William Carroll +;; Version: 0.0.1 +;; URL: https://git.wpcarro.dev/wpcarro/briefcase +;; Package-Requires: ((emacs "24")) ;;; Commentary: ;; scrot is a Linux utility for taking screenshots. @@ -19,43 +24,43 @@ ;; Library ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(defconst scrot/screenshot-directory "~/Downloads" +(defconst scrot-screenshot-directory "~/Downloads" "The default directory for screenshot outputs.") -(defconst scrot/path-to-executable "/usr/bin/scrot" +(defconst scrot-path-to-executable "/usr/bin/scrot" "Path to the scrot executable.") -(defconst scrot/output-format "screenshot_%H:%M:%S_%Y-%m-%d.png" +(defconst scrot-output-format "screenshot_%H:%M:%S_%Y-%m-%d.png" "The format string for the output screenshot file. See scrot's man page for more information.") -(defun scrot/copy-image (path) +(defun scrot-copy-image (path) "Use xclip to copy the image at PATH to the clipboard. This currently only works for PNG files because that's what I'm outputting" (call-process "xclip" nil nil nil "-selection" "clipboard" "-t" "image/png" path) (message (string-format "[scrot.el] Image copied to clipboard!"))) -(defmacro scrot/call (&rest args) +(defmacro scrot-call (&rest args) "Call scrot with ARGS." - `(call-process ,scrot/path-to-executable nil nil nil ,@args)) + `(call-process ,scrot-path-to-executable nil nil nil ,@args)) -(defun scrot/fullscreen () +(defun scrot-fullscreen () "Screenshot the entire screen." (interactive) - (let ((screenshot-path (f-join scrot/screenshot-directory - (ts-format scrot/output-format (ts-now))))) - (scrot/call screenshot-path) - (scrot/copy-image screenshot-path))) + (let ((screenshot-path (f-join scrot-screenshot-directory + (ts-format scrot-output-format (ts-now))))) + (scrot-call screenshot-path) + (scrot-copy-image screenshot-path))) -(defun scrot/select () +(defun scrot-select () "Click-and-drag to screenshot a region. The output path is copied to the user's clipboard." (interactive) - (let ((screenshot-path (f-join scrot/screenshot-directory - (ts-format scrot/output-format (ts-now))))) - (scrot/call "--select" screenshot-path) - (scrot/copy-image screenshot-path))) + (let ((screenshot-path (f-join scrot-screenshot-directory + (ts-format scrot-output-format (ts-now))))) + (scrot-call "--select" screenshot-path) + (scrot-copy-image screenshot-path))) (provide 'scrot) ;;; scrot.el ends here -- cgit 1.4.1