;;; init.el --- ryuslash's init -*- lexical-binding: t; -*- ;; Copyright (C) 2023 Tom Willemse ;; Author: Tom Willemse ;; Keywords: local ;; This program is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; This program is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with this program. If not, see . ;;; Commentary: ;; This is my Emacs' init file. ;;; Code: (require 'oni-core) (require 'oni-gui) (add-to-list 'auto-save-file-name-transforms `(,(rx (zero-or-more any)) ,(concat (or (getenv "XDG_DATA_HOME") (expand-file-name "~/.local/share")) "/emacs/auto-save-list") t) t) (eval-when-compile (require 'ispell)) (with-eval-after-load 'ispell (setq ispell-program-name "hunspell" ispell-really-hunspell t)) (defun oni-in-word-p () "Check whether the character just typed was part of a word." (save-excursion (backward-char) (looking-back (rx word) (1- (point))))) (with-eval-after-load 'electric (add-hook 'electric-quote-inhibit-functions #'oni-in-word-p)) (add-to-list 'load-path (expand-file-name "~/projects/inkplate")) (when (require 'inkplate nil t) (let ((my-dev (inkplate-open "/dev/ttyUSB0"))) (inkplate-clear-screen my-dev) (inkplate-set-cursor my-dev 280 100) (inkplate-set-text-size my-dev 10) (inkplate-print my-dev (inkplate--convert-string-to-hex (format-time-string "%Y"))) (inkplate-set-cursor my-dev 275 180) (inkplate-set-text-size my-dev 8) (inkplate-print my-dev (inkplate--convert-string-to-hex (format-time-string "%m-%d"))) (inkplate-draw-rectangle my-dev 270 90 250 155 3) (inkplate-draw-rectangle my-dev 269 89 252 157 3) (inkplate-draw-rectangle my-dev 268 88 254 159 3) (inkplate-partial-update my-dev) ;; It doesn't seem to update properly unless I send the same update twice. (inkplate-partial-update my-dev) (inkplate-send my-dev) (delete-process (inkplate-device-process my-dev)))) (setq custom-file "~/.config/emacs/custom.el") (load custom-file) (provide 'init) ;;; init.el ends here