Skip to content

Instantly share code, notes, and snippets.

@arialdomartini
Created September 19, 2024 13:40
Show Gist options
  • Save arialdomartini/4938540ed8d09860ae2f5e5fe8bfc1f8 to your computer and use it in GitHub Desktop.
Save arialdomartini/4938540ed8d09860ae2f5e5fe8bfc1f8 to your computer and use it in GitHub Desktop.
squint.el
;; This buffer is for text that is not saved, and for Lisp evaluation.
;; To create a file, visit it with C-x C-f and enter text in its buffer.
(set-face-attribute 'default nil :height 100)
(set-face-attribute 'default nil :height 200)
;; ----------------------
(setq aa-font-sizes '(("low" . 100) ("high" . 200)))
(defun aa-set-face-height (label)
(let ((height (alist-get label aa-font-sizes nil nil #'equal)))
(set-face-attribute 'default nil :height height)))
(aa-set-face-height "high")
;; ----------------------------
(setq aa-font-sizes '((low . 100) (high . 200)))
(defun aa-set-face-height (label)
(let ((height (alist-get label aa-font-sizes nil nil #'equal)))
(set-face-attribute 'default nil :height height)))
(aa-set-face-height 'low)
(aa-set-face-height 'high)
;; -----------------
(setq aa-font-sizes '((low . 100) (high . 200)))
(defun aa-set-face-height-interactive (height)
(interactive (list
(completing-read
"Desired size: "
aa-font-sizes)))
(aa-set-face-height (intern height)))
(call-interactively 'aa-set-face-height-interactive)
;; -----------------
(setq squint-sizes
'((monitor . 150)
(laptop . 200)
(cecato . 300)))
(defun squint--set-face-attribute (height)
(set-face-attribute 'default nil :height height))
(defun squint--set-face-attribute-label (label)
(let ((height (alist-get label squint-sizes nil nil #'equal)))
(squint--set-face-attribute height)))
(squint--set-face-attribute 150)
(squint--set-face-attribute-label 'monitor)
(defun squint--select-size ()
(interactive)
(let* ((selected (completing-read "Desired size: " squint-sizes))
(label (intern selected)))
label))
(defun squint--size-from-label (label)
(alist-get label squint-sizes nil nil #'equal))
(defun squint-no-need-to-squint (label)
(interactive (list (squint--select-size)))
(let
((height (squint--size-from-label label)))
(set-face-attribute 'default nil :height height)))
(call-interactively #'squint-no-need-to-squint)
(call-interactively #'squint--select-size)
(defun squint-no-need-to-squint (label)
(interactive (list (squint--select-size)))
(let
((height (squint--size-from-label label)))
(set-face-attribute 'default nil :height height)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment