summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortslil clingman <>2021-09-27 08:53:17 -0400
committertslil clingman <>2021-09-27 08:53:17 -0400
commitfa49aa2b985398b3da4379efc46198ba6497bdfc (patch)
tree28997c5d3947394cc66ad3a1a131c44f975256cf
parentc69f17c5d36fa7a4a95701f915c727b076981f2f (diff)
Fixed tabs!
-rw-r--r--emacs/inits/01-basic.el94
-rw-r--r--emacs/inits/02-modeline.el12
-rw-r--r--emacs/inits/03-miscload.el11
-rw-r--r--emacs/inits/04-input_method.el26
-rw-r--r--emacs/inits/06-god.el41
-rw-r--r--emacs/inits/11-completion.el58
-rw-r--r--emacs/inits/13-ibuffer.el132
-rw-r--r--emacs/inits/14-movement.el120
-rw-r--r--emacs/inits/15-project-mgmt.el4
-rw-r--r--emacs/inits/20-programming.el500
-rw-r--r--emacs/inits/21-functional.el4
-rw-r--r--emacs/inits/22-lisp.el29
-rw-r--r--emacs/inits/27-gemini.el88
-rw-r--r--emacs/inits/30-irc.el112
-rw-r--r--emacs/inits/60-misc-configs.el20
-rw-r--r--emacs/inits/70-global-keybinds.el48
-rw-r--r--emacs/inits/99-last.el5
17 files changed, 670 insertions, 634 deletions
diff --git a/emacs/inits/01-basic.el b/emacs/inits/01-basic.el
index bc1bad9..54848c9 100644
--- a/emacs/inits/01-basic.el
+++ b/emacs/inits/01-basic.el
@@ -1,4 +1,4 @@
-;; Time-stamp: <2021-09-05 20h52 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
;; -----------------------------------------------------------------------------
;; Interface
@@ -9,40 +9,40 @@
(fset 'yes-or-no-p 'y-or-n-p)
(setq select-enable-clipboard t
- select-enable-primary t
- save-interprogram-paste-before-kill t
- require-final-newline t
- visible-bell nil)
+ select-enable-primary t
+ save-interprogram-paste-before-kill t
+ require-final-newline t
+ visible-bell nil)
(setq echo-keystrokes 0.1
- confirm-kill-emacs 'y-or-n-p
- disabled-command-function nil
- ring-bell-function 'ignore)
+ confirm-kill-emacs 'y-or-n-p
+ disabled-command-function nil
+ ring-bell-function 'ignore)
(size-indication-mode t)
(defun enlarge-to-fill ()
- "Stretch the buffer to accomodate `fill-column` many columns."
- (interactive)
- (let ((ww (window-width)))
- (when (< ww (+ 1 fill-column))
- (enlarge-window-horizontally (- (+ 1 fill-column) ww)))))
+ "Stretch the buffer to accomodate `fill-column` many columns."
+ (interactive)
+ (let ((ww (window-width)))
+ (when (< ww (+ 1 fill-column))
+ (enlarge-window-horizontally (- (+ 1 fill-column) ww)))))
(global-set-key (kbd "C-c 3") (lambda ()
- (interactive)
- (split-window-horizontally)
- (enlarge-to-fill)))
+ (interactive)
+ (split-window-horizontally)
+ (enlarge-to-fill)))
(add-to-list 'custom-theme-load-path "~/.emacs.d/themes/")
(when (eq 'x (window-system))
;;; Time-based theming
- (if (<= 20 (nth 2 (decode-time)))
- (load-theme 'nord t)
- (load-theme 'solo-jazz t))
- ;; (load-theme 'solo-jazz t) ;; turns out i just like this one though
- ;; (set-face-attribute 'region nil :background "orange")
- (set-face-attribute 'default nil :font "Iosevka-18"))
+ (if (<= 20 (nth 2 (decode-time)))
+ (load-theme 'nord t)
+ (load-theme 'solo-jazz t))
+ ;; (load-theme 'solo-jazz t) ;; turns out i just like this one though
+ ;; (set-face-attribute 'region nil :background "orange")
+ (set-face-attribute 'default nil :font "Iosevka-18"))
(blink-cursor-mode 0)
(setq cursor-type 'box)
@@ -55,11 +55,11 @@
;; Backups
(setq backup-by-copying t
- backup-directory-alist '(("." . "/home/user/store/backups/"))
- delete-old-versions t
- kept-new-versions 6
- kept-old-versions 2
- version-control t)
+ backup-directory-alist '(("." . "/home/user/store/backups/"))
+ delete-old-versions t
+ kept-new-versions 6
+ kept-old-versions 2
+ version-control t)
(setq create-lockfiles nil)
@@ -69,14 +69,14 @@
(setq fill-column 80)
(setq standard-indent 2)
-(setq-default tab-width 2
- indent-tabs-mode t)
+(setq-default tab-width 8
+ indent-tabs-mode t)
(add-hook 'before-save-hook #'whitespace-cleanup)
(show-paren-mode t)
(setq-default truncate-lines t
- truncate-partial-width-windows nil)
+ truncate-partial-width-windows nil)
(setq scroll-step 1)
(setq next-line-add-newlines nil)
@@ -89,14 +89,14 @@
;; Basic packages
(use-package recentf
- :demand t
- :config
- (setq recentf-max-saved-items 42)
- (recentf-mode))
+ :demand t
+ :config
+ (setq recentf-max-saved-items 42)
+ (recentf-mode))
(use-package uniquify
- :config
- (setq uniquify-buffer-name-style 'forward))
+ :config
+ (setq uniquify-buffer-name-style 'forward))
(require 'saveplace)
(save-place-mode)
@@ -107,19 +107,19 @@
;; (global-undo-tree-mode 1))
(use-package keyfreq
- :ensure t
- :config
- (setq keyfreq-file "~/.emacs.d/keyfreq"
- keyfreq-file-lock "~/.emacs.d/keyfreq.lock")
- (keyfreq-mode 1)
- (keyfreq-autosave-mode 1))
+ :ensure t
+ :config
+ (setq keyfreq-file "~/.emacs.d/keyfreq"
+ keyfreq-file-lock "~/.emacs.d/keyfreq.lock")
+ (keyfreq-mode 1)
+ (keyfreq-autosave-mode 1))
;; -----------------------------------------------------------------------------
;; Scratch buffer
(defun immortal-scratch ()
- (if (eq (current-buffer) (get-buffer "*scratch*"))
- (progn (bury-buffer) nil) t))
+ (if (eq (current-buffer) (get-buffer "*scratch*"))
+ (progn (bury-buffer) nil) t))
(add-hook 'kill-buffer-query-functions 'immortal-scratch)
@@ -127,8 +127,8 @@
(defun display-startup-echo-area-message () nil)
(setq initial-scratch-message nil
- initial-buffer-choice t)
+ initial-buffer-choice t)
(add-hook 'after-init-hook
- (lambda ()
- (setq default-directory "~/")))
+ (lambda ()
+ (setq default-directory "~/")))
diff --git a/emacs/inits/02-modeline.el b/emacs/inits/02-modeline.el
index bb98587..6ea2b07 100644
--- a/emacs/inits/02-modeline.el
+++ b/emacs/inits/02-modeline.el
@@ -1,4 +1,4 @@
-;; Time-stamp: <2021-09-09 20h58 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
;; -----------------------------------------------------------------------------
;; Mode-line
@@ -7,10 +7,10 @@
;; Everything else is intended to be displayed in another, centralised location.
(defun abbreviate-left-trim-path (p len)
- (let ((pa (abbreviate-file-name p)))
- (if (> (length pa) (+ 3 len))
- (format "...%s" (substring pa (- (length pa) len)))
- pa)))
+ (let ((pa (abbreviate-file-name p)))
+ (if (> (length pa) (+ 3 len))
+ (format "...%s" (substring pa (- (length pa) len)))
+ pa)))
(setq display-time-format "%d/%H.%M"
display-time-default-load-average nil)
@@ -32,5 +32,5 @@
:ensure t
:config
(setq minions-mode-line-lighter ":"
- minions-direct '(god-local-mode))
+ minions-direct '(god-local-mode))
(minions-mode 1))
diff --git a/emacs/inits/03-miscload.el b/emacs/inits/03-miscload.el
index 054b8b6..6f4ffbf 100644
--- a/emacs/inits/03-miscload.el
+++ b/emacs/inits/03-miscload.el
@@ -1,11 +1,8 @@
-;; Time-stamp: <2020-05-09 14:33:11 (tslil@forfeit)>
+;; Time-stamp: <2020-08-12 22:25:58 (user@hobbies)>
(use-package siege-mode
:load-path "~/.emacs.d/scripts/siege-mode/")
-(use-package maxima
- :defer t
- :config (setq imaxima-use-maxima-mode-flag t))
-
-(use-package notmuch
- :defer t)
+;; (use-package maxima
+;; :defer t
+;; :config (setq imaxima-use-maxima-mode-flag t))
diff --git a/emacs/inits/04-input_method.el b/emacs/inits/04-input_method.el
index a310b57..0cdd9de 100644
--- a/emacs/inits/04-input_method.el
+++ b/emacs/inits/04-input_method.el
@@ -1,20 +1,20 @@
-;; Time-stamp: <2020-04-06 13:46:34 (tslil@bison)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
-(use-package agda-input
- :load-path "~/.emacs.d/scripts/"
- :config
- (dolist (sym '(("chimney" "╝")
- ("==>" "⟹")
- ("amalg" "⨿")
- ("bG" "𝔾")
- ("bB" "𝔹")
- ("bU" "𝕌")))
- (add-to-list 'agda-input-user-translations sym))
- (agda-input-setup))
+;;(use-package agda-input
+;; :load-path "~/.emacs.d/scripts/"
+;; :config
+;; (dolist (sym '(("chimney" "╝")
+;; ("==>" "⟹")
+;; ("amalg" "⨿")
+;; ("bG" "𝔾")
+;; ("bB" "𝔹")
+;; ("bU" "𝕌")))
+;; (add-to-list 'agda-input-user-translations sym))
+;; (agda-input-setup))
(setq-default default-input-method "TeX")
-(defvar use-default-input-method t)
+(defvar use-default-input-method nil)
(make-variable-buffer-local 'use-default-input-method)
diff --git a/emacs/inits/06-god.el b/emacs/inits/06-god.el
index 7210bc3..a17a5a4 100644
--- a/emacs/inits/06-god.el
+++ b/emacs/inits/06-god.el
@@ -1,22 +1,23 @@
-;; Time-stamp: <2021-09-09 21h28 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
(use-package god-mode
- :ensure t
- :bind (("<escape>" . god-local-mode)
- ("<tab>" . god-local-mode)
- ;; useful
- ("C-x C-1" . delete-other-windows)
- ("C-x C-2" . split-window-below)
- ("C-x C-3" . split-window-right)
- ("C-x C-0" . delete-window))
- :config
- (defvar my-god-cursor-colour nil)
- (defun my-god-update-cursor ()
- (interactive)
- (if (bound-and-true-p god-local-mode)
- (progn
- (setq my-god-cursor-colour (frame-parameter (selected-frame) 'cursor-color))
- (set-cursor-color "red"))
- (set-cursor-color my-god-cursor-colour)))
- (add-hook 'god-mode-enabled-hook #'my-god-update-cursor)
- (add-hook 'god-mode-disabled-hook #'my-god-update-cursor))
+ :ensure t
+ :init
+ (defvar my-god-cursor-colour (frame-parameter (selected-frame) 'cursor-color))
+ :bind (("<escape>" . god-local-mode)
+ ;; ("<tab>" . god-mode) ;; this is just too much trouble
+ ;; useful
+ ("C-x C-1" . delete-other-windows)
+ ("C-x C-2" . split-window-below)
+ ("C-x C-3" . split-window-right)
+ ("C-x C-0" . delete-window))
+ :config
+ (push 'term-mode god-exempt-major-modes)
+
+ (defun my-god-update-cursor ()
+ (interactive)
+ (if (bound-and-true-p god-local-mode)
+ (set-cursor-color "red")
+ (set-cursor-color my-god-cursor-colour)))
+ (add-hook 'god-mode-enabled-hook #'my-god-update-cursor)
+ (add-hook 'god-mode-disabled-hook #'my-god-update-cursor))
diff --git a/emacs/inits/11-completion.el b/emacs/inits/11-completion.el
index 2c57c88..a885f79 100644
--- a/emacs/inits/11-completion.el
+++ b/emacs/inits/11-completion.el
@@ -1,25 +1,25 @@
-;; Time-stamp: <2021-09-09 21h27 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
;; -----------------------------------------------------------------------------
;; Vertico
(use-package vertico
- :ensure t
- :bind (:map vertico-map ("<tab>" . vertico-insert))
+ :ensure t
+ :bind (:map vertico-map ("<tab>" . vertico-insert))
:init
- (vertico-mode)
+ (vertico-mode)
(setq vertico-cycle t)
- (setq completion-styles '(substring)))
+ (setq completion-styles '(substring)))
(use-package orderless
- :ensure t
+ :ensure t
:init
(setq completion-styles '(orderless)
completion-category-defaults nil
completion-category-overrides '((file (styles . (partial-completion))))))
(use-package savehist
- :ensure t
+ :ensure t
:init (savehist-mode))
(use-package emacs
@@ -44,7 +44,7 @@
;; Consult
(use-package consult
- :ensure t
+ :ensure t
:bind (;; C-c bindings (mode-specific-map)
("C-c h" . consult-history)
("C-c m" . consult-mode-command)
@@ -66,7 +66,7 @@
("M-g e" . consult-compile-error)
("M-g f" . consult-flymake) ;; Alternative: consult-flycheck
("C-s" . consult-line) ;; orig. goto-line
- ("C-r" . isearch-forward-regexp)
+ ("C-r" . isearch-forward-regexp)
("M-g M-g" . consult-goto-line) ;; orig. goto-line
("M-g o" . consult-outline) ;; Alternative: consult-org-heading
("M-g m" . consult-mark)
@@ -75,9 +75,9 @@
("M-g I" . consult-project-imenu)
;; M-s bindings (search-map)
("M-s f" . consult-find)
- ("M-s L" . consult-locate)
- ("C-c g" . consult-ripgrep)
- ("C-c G" . consult-git-grep)
+ ("M-s L" . consult-locate)
+ ("C-c g" . consult-ripgrep)
+ ("C-c G" . consult-git-grep)
("M-s l" . consult-line)
("M-s m" . consult-multi-occur)
("M-s k" . consult-keep-lines)
@@ -107,27 +107,27 @@
:config
(consult-customize
consult-theme
- :preview-key '(:debounce 0.2 any)
+ :preview-key '(:debounce 0.2 any)
consult-ripgrep consult-git-grep consult-grep
consult-bookmark consult-recent-file consult-xref
consult--source-file consult--source-project-file consult--source-bookmark
:preview-key (kbd "M-."))
- (defun previous-history-or-next ()
- (interactive)
- (if (string= "" (minibuffer-contents-no-properties))
- (progn
- (previous-history-element 1)
- (end-of-line))
- (vertico-next)))
+ (defun previous-history-or-next ()
+ (interactive)
+ (if (string= "" (minibuffer-contents-no-properties))
+ (progn
+ (previous-history-element 1)
+ (end-of-line))
+ (vertico-next)))
- (defvar my-consult-line-map
- (let ((map (make-sparse-keymap)))
- (define-key map "\C-s" #'previous-history-or-next)
- map))
+ (defvar my-consult-line-map
+ (let ((map (make-sparse-keymap)))
+ (define-key map "\C-s" #'previous-history-or-next)
+ map))
- (consult-customize consult-line :keymap my-consult-line-map)
+ (consult-customize consult-line :keymap my-consult-line-map)
;; Optionally configure the narrowing key.
;; Both < and C-+ work reasonably well.
@@ -137,17 +137,17 @@
;; You may want to use `embark-prefix-help-command' or which-key instead.
;; (define-key consult-narrow-map (vconcat consult-narrow-key "?") #'consult-narrow-help)
- ;; Projectile integration
+ ;; Projectile integration
(autoload 'projectile-project-root "projectile")
(setq consult-project-root-function #'projectile-project-root)
- ;; Ues consult for capfs
- (setq completion-in-region-function #'consult-completion-in-region))
+ ;; Ues consult for capfs
+ (setq completion-in-region-function #'consult-completion-in-region))
;; -----------------------------------------------------------------------------
;; Marginalia
(use-package marginalia
- :ensure t
+ :ensure t
:bind (:map minibuffer-local-map ("M-A" . marginalia-cycle))
:init (marginalia-mode))
diff --git a/emacs/inits/13-ibuffer.el b/emacs/inits/13-ibuffer.el
index b40aa2d..55387dd 100644
--- a/emacs/inits/13-ibuffer.el
+++ b/emacs/inits/13-ibuffer.el
@@ -1,72 +1,72 @@
-;; Time-stamp: <2021-06-29 18h28 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
(use-package ibuffer
- :bind (("C-x C-b" . ibuffer))
- :hook (ibuffer-mode . (lambda ()
- (ibuffer-switch-to-saved-filter-groups "default")))
- :config
- (setq ibuffer-display-summary nil
- ibuffer-saved-filter-groups
- '(("default"
- ("agda" (or (mode . agda2-mode)
- (name . "^\\*[aA]gda")))
- ("coq" (or (mode . coq-mode)
- (mode . coq-goals-mode)
- (mode . coq-response-mode)
- (mode . coq-shell-mode)))
- ("c" (or (mode . c-mode)
- (mode . makefile-gmake-mode)))
- ("dired" (mode . dired-mode))
- ("elisp" (or (mode . emacs-lisp-mode)
- (name . "^\\*Backtrace\\*")))
- ("emacs" (or (name . "^\\*scratch\\*$")
- (name . "^\\*Messages\\*$")
- (name . "^\\*init log\\*$")
- (name . "^\\*Compile-Log\\*$")
- (mode . helpful-mode)
- (name . "^\\*Help\\*$")))
- ("irc" (mode . rcirc-mode))
- ("magit" (name . "^magit[:-]"))
- ("REPL" (name . "^\\*.*REPL.*\\*$"))
- ("rust" (mode . rust-mode))
- ("slime" (name . "^\\*slime-[^*]*\\*$"))
- ("tex" (mode . latex-mode))
- ("web" (or (mode . js2-mode)
- (mode . js-mode)
- (mode . html-mode)
- (mode . css-mode)
- (mode . mhtml-mode)))
- ("zig" (or (mode . zig-mode)
- (name . "^\\*zig.*\\*$")
- (name . "^\\*zls.*\\*$"))))))
+ :bind (("C-x C-b" . ibuffer))
+ :hook (ibuffer-mode . (lambda ()
+ (ibuffer-switch-to-saved-filter-groups "default")))
+ :config
+ (setq ibuffer-display-summary nil
+ ibuffer-saved-filter-groups
+ '(("default"
+ ("agda" (or (mode . agda2-mode)
+ (name . "^\\*[aA]gda")))
+ ("coq" (or (mode . coq-mode)
+ (mode . coq-goals-mode)
+ (mode . coq-response-mode)
+ (mode . coq-shell-mode)))
+ ("c" (or (mode . c-mode)
+ (mode . makefile-gmake-mode)))
+ ("dired" (mode . dired-mode))
+ ("elisp" (or (mode . emacs-lisp-mode)
+ (name . "^\\*Backtrace\\*")))
+ ("emacs" (or (name . "^\\*scratch\\*$")
+ (name . "^\\*Messages\\*$")
+ (name . "^\\*init log\\*$")
+ (name . "^\\*Compile-Log\\*$")
+ (mode . helpful-mode)
+ (name . "^\\*Help\\*$")))
+ ("irc" (mode . rcirc-mode))
+ ("magit" (name . "^magit[:-]"))
+ ("REPL" (name . "^\\*.*REPL.*\\*$"))
+ ("rust" (mode . rust-mode))
+ ("slime" (name . "^\\*slime-[^*]*\\*$"))
+ ("tex" (mode . latex-mode))
+ ("web" (or (mode . js2-mode)
+ (mode . js-mode)
+ (mode . html-mode)
+ (mode . css-mode)
+ (mode . mhtml-mode)))
+ ("zig" (or (mode . zig-mode)
+ (name . "^\\*zig.*\\*$")
+ (name . "^\\*zls.*\\*$"))))))
- (defadvice ibuffer-update-title-and-summary (after remove-column-titles)
- (with-current-buffer "*Ibuffer*"
- (read-only-mode -1)
- (goto-char 1)
- (search-forward "-\n" nil t)
- (delete-region 1 (point))
- (let ((window-min-height 1))
- ;; save a little screen estate
- (shrink-window-if-larger-than-buffer))
- (read-only-mode 1)))
+ (defadvice ibuffer-update-title-and-summary (after remove-column-titles)
+ (with-current-buffer "*Ibuffer*"
+ (read-only-mode -1)
+ (goto-char 1)
+ (search-forward "-\n" nil t)
+ (delete-region 1 (point))
+ (let ((window-min-height 1))
+ ;; save a little screen estate
+ (shrink-window-if-larger-than-buffer))
+ (read-only-mode 1)))
- (ad-activate 'ibuffer-update-title-and-summary)
+ (ad-activate 'ibuffer-update-title-and-summary)
- (define-ibuffer-column size-h
- (:name "Size" :inline t)
- (cond
- ((> (buffer-size) 1000000) (format "%7.1fM" (/ (buffer-size) 1000000.0)))
- ((> (buffer-size) 100000) (format "%7.0fk" (/ (buffer-size) 1000.0)))
- ((> (buffer-size) 1000) (format "%7.1fk" (/ (buffer-size) 1000.0)))
- (t (format "%8d" (buffer-size)))))
+ (define-ibuffer-column size-h
+ (:name "Size" :inline t)
+ (cond
+ ((> (buffer-size) 1000000) (format "%7.1fM" (/ (buffer-size) 1000000.0)))
+ ((> (buffer-size) 100000) (format "%7.0fk" (/ (buffer-size) 1000.0)))
+ ((> (buffer-size) 1000) (format "%7.1fk" (/ (buffer-size) 1000.0)))
+ (t (format "%8d" (buffer-size)))))
- (setq ibuffer-formats
- '((mark modified read-only locked " "
- (name 18 18 :left :elide)
- " "
- (size-h 9 -1 :right)
- " "
- (mode 16 16 :left :elide)
- " "
- filename-and-process))))
+ (setq ibuffer-formats
+ '((mark modified read-only locked " "
+ (name 18 18 :left :elide)
+ " "
+ (size-h 9 -1 :right)
+ " "
+ (mode 16 16 :left :elide)
+ " "
+ filename-and-process))))
diff --git a/emacs/inits/14-movement.el b/emacs/inits/14-movement.el
index 22f5c54..a411277 100644
--- a/emacs/inits/14-movement.el
+++ b/emacs/inits/14-movement.el
@@ -1,62 +1,62 @@
-;; Time-stamp: <2021-07-03 17h13 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h47 EDT (hobbies)>
;; -------------------------------------------------------------------
;; Repeated key presses for region
(use-package expand-region :ensure t
- :bind (("M-r" . er/expand-region))
- :config
- (setq expand-region-fast-keys-enabled t
- expand-region-contract-fast-key "c"
- expand-region-reset-fast-key "e"
- expand-region-autocopy-register "i"))
+ :bind (("M-r" . er/expand-region))
+ :config
+ (setq expand-region-fast-keys-enabled t
+ expand-region-contract-fast-key "c"
+ expand-region-reset-fast-key "e"
+ expand-region-autocopy-register "i"))
;; -------------------------------------------------------------------
;; Window switching
(use-package switch-window :ensure t
- :bind (("C-x o" . switch-window)
- ("C-x C-o" . other-frame)
- ("C-c o" . switch-window)
- ("C-c n" . switch-window-then-maximize)
- :map switch-window-extra-map
- ("u" . switch-window-mvborder-up)
- ("e" . switch-window-mvborder-down)
- ("n" . switch-window-mvborder-left)
- ("o" . switch-window-mvborder-right)
- ("i" . nil)
- ("j" . nil)
- ("k" . nil)
- ("l" . nil))
- :config
- (setq switch-window-input-style 'minibuffer
- switch-window-shortcut-style 'qwerty
- switch-window-multiple-frames nil
- switch-window-qwerty-shortcuts
- '("a" "r" "s" "t" "n" "e" "i" "o")))
+ :bind (("C-x o" . switch-window)
+ ("C-x C-o" . other-frame)
+ ("C-c o" . switch-window)
+ ("C-c n" . switch-window-then-maximize)
+ :map switch-window-extra-map
+ ("u" . switch-window-mvborder-up)
+ ("e" . switch-window-mvborder-down)
+ ("n" . switch-window-mvborder-left)
+ ("o" . switch-window-mvborder-right)
+ ("i" . nil)
+ ("j" . nil)
+ ("k" . nil)
+ ("l" . nil))
+ :config
+ (setq switch-window-input-style 'minibuffer
+ switch-window-shortcut-style 'qwerty
+ switch-window-multiple-frames nil
+ switch-window-qwerty-shortcuts
+ '("a" "r" "s" "t" "n" "e" "i" "o")))
;; -------------------------------------------------------------------
;; Character jumping
(use-package avy
- :ensure t
- :demand
- :bind (("C-," . avy-goto-char-timer)
- ("C-." . avy-goto-char-in-line)
- ("M-g s" . avy-goto-word-or-subword-1)
- ("M-g w" . avy-goto-word-1)
- ("M-g a" . avy-goto-word-0)
- ("M-g C-g" . avy-goto-line))
- :config
- (setq avy-keys '(?a ?r ?s ?t ?g ?k ?n ?e ?i ?o ?q ?w ?f ?p)
- avy-dispatch-alist '((?w . avy-action-kill-move)
- (?W . avy-action-kill-stay)
- (?j . avy-action-teleport)
- (?m . avy-action-mark)
- (?c . avy-action-copy)
- (?y . avy-action-yank)
- (?i . avy-action-ispell)
- (?z . avy-action-zap-to-char))))
+ :ensure t
+ :demand
+ :bind (("C-," . avy-goto-char-timer)
+ ("C-." . avy-goto-char-in-line)
+ ("M-g s" . avy-goto-word-or-subword-1)
+ ("M-g w" . avy-goto-word-1)
+ ("M-g a" . avy-goto-word-0)
+ ("M-g C-g" . avy-goto-line))
+ :config
+ (setq avy-keys '(?a ?r ?s ?t ?g ?k ?n ?e ?i ?o ?q ?w ?f ?p)
+ avy-dispatch-alist '((?w . avy-action-kill-move)
+ (?W . avy-action-kill-stay)
+ (?j . avy-action-teleport)
+ (?m . avy-action-mark)
+ (?c . avy-action-copy)
+ (?y . avy-action-yank)
+ (?i . avy-action-ispell)
+ (?z . avy-action-zap-to-char))))
;; -------------------------------------------------------------------
;; General stuff
@@ -92,19 +92,19 @@
;; Hardcore mode
(defconst hardcore-nav-mode nil)
(when hardcore-nav-mode
- (global-set-key (kbd "<XF86Back>") nil)
- (global-set-key (kbd "<XF86Forward>") nil)
- (global-set-key (kbd "<right>") nil)
- (global-set-key (kbd "<left>") nil)
- (global-set-key (kbd "<up>") nil)
- (global-set-key (kbd "<down>") nil)
- (global-set-key (kbd "S-<right>") nil)
- (global-set-key (kbd "S-<left>") nil)
- (global-set-key (kbd "S-<up>") nil)
- (global-set-key (kbd "C-<down>") nil)
- (global-set-key (kbd "C-<right>") nil)
- (global-set-key (kbd "C-<left>") nil)
- (global-set-key (kbd "C-<up>") nil)
- (global-set-key (kbd "C-<down>") nil)
- (global-set-key (kbd "<Home>") nil)
- (global-set-key (kbd "<End>") nil))
+ (global-set-key (kbd "<XF86Back>") nil)
+ (global-set-key (kbd "<XF86Forward>") nil)
+ (global-set-key (kbd "<right>") nil)
+ (global-set-key (kbd "<left>") nil)
+ (global-set-key (kbd "<up>") nil)
+ (global-set-key (kbd "<down>") nil)
+ (global-set-key (kbd "S-<right>") nil)
+ (global-set-key (kbd "S-<left>") nil)
+ (global-set-key (kbd "S-<up>") nil)
+ (global-set-key (kbd "C-<down>") nil)
+ (global-set-key (kbd "C-<right>") nil)
+ (global-set-key (kbd "C-<left>") nil)
+ (global-set-key (kbd "C-<up>") nil)
+ (global-set-key (kbd "C-<down>") nil)
+ (global-set-key (kbd "<Home>") nil)
+ (global-set-key (kbd "<End>") nil))
diff --git a/emacs/inits/15-project-mgmt.el b/emacs/inits/15-project-mgmt.el
index c37c415..5ee91e5 100644
--- a/emacs/inits/15-project-mgmt.el
+++ b/emacs/inits/15-project-mgmt.el
@@ -1,4 +1,4 @@
-;; Time-stamp: <2020-03-05 12:07:10 (tslil@bison)>
+;; Time-stamp: <2020-07-29 20:29:40 (user@hobbies)>
(use-package projectile
:ensure t
@@ -23,3 +23,5 @@
:bind (("C-x g" . magit-status))
:config
(setq magit-process-find-password-functions '(magit-process-password-auth-source)))
+
+(setenv "SSH_AUTH_SOCK" "/home/user/.SSH_AGENT_vault-keys")
diff --git a/emacs/inits/20-programming.el b/emacs/inits/20-programming.el
index d7e81e2..634eb15 100644
--- a/emacs/inits/20-programming.el
+++ b/emacs/inits/20-programming.el
@@ -1,4 +1,4 @@
-;; Time-stamp: <2021-06-30 21h34 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h48 EDT (hobbies)>
;; -----------------------------------------------------------------------------
;; General setup
@@ -16,26 +16,27 @@
;; (enlarge-window-horizontally (- (+ 5 fill-column) ww)))))
(use-package smart-tabs-mode
- :ensure t
- :config
- (smart-tabs-insinuate 'c 'c++ 'java 'javascript 'cperl 'ruby 'nxml)
- (setq whitespace-style '(face trailing tabs spaces lines
- newline empty space-before-tab space-mark tab-mark
- newline-mark)))
+ :ensure t
+ :config
+ (smart-tabs-insinuate 'c 'c++ 'java 'javascript 'cperl 'ruby 'nxml)
+ (setq whitespace-style '(face trailing tabs spaces lines
+ newline empty space-before-tab space-mark tab-mark
+ newline-mark)))
(use-package flycheck
- :defer t
- :ensure t)
+ :defer t
+ :ensure t)
(defun programming-setup ()
- (subword-mode 1)
- (electric-pair-local-mode)
- ;; Emacs25 compat
- (if (fboundp 'display-line-numbers-mode)
- (display-line-numbers-mode)
- (linum-mode))
- (setq auto-hscroll-mode t)
- (yas-minor-mode-on))
+ (subword-mode 1)
+ (electric-pair-local-mode)
+ (set-fill-column 80)
+ ;; Emacs25 compat
+ (if (fboundp 'display-line-numbers-mode)
+ (display-line-numbers-mode)
+ (linum-mode))
+ (setq auto-hscroll-mode t)
+ (yas-minor-mode-on))
(add-hook 'prog-mode-hook #'programming-setup)
@@ -43,37 +44,39 @@
;; Specific packages
(use-package shift-number
- :ensure t
- :bind (("C-c s p" . shift-number-up)
- ("C-c s n" . shift-number-down)))
+ :ensure t
+ :bind (("C-c s p" . shift-number-up)
+ ("C-c s n" . shift-number-down)))
(use-package comment-dwim-2
- :ensure t
- :bind (("M-;" . comment-dwim-2))
- :config (setq comment-multi-line t
- comment-style 'extra-line))
+ :ensure t
+ :bind (("M-;" . comment-dwim-2))
+ :config (setq comment-multi-line t
+ comment-style 'extra-line))
(use-package aggressive-indent
- :ensure t
- :defer t)
+ :ensure t
+ :defer t)
(use-package yasnippet
- :ensure t
- :defer t
- :commands yas-minor-mode-on)
+ :ensure t
+ :defer t
+ :commands yas-minor-mode-on)
(use-package elec-pair
- :defer t
- :config
- (setq electric-pair-delete-adjacent-pairs t
- electric-pair-skip-self 'electric-pair-default-skip-self
- electric-pair-preserve-balance t
- electric-pair-skip-whitespace t
- electric-pair-inhibit-predicate 'electric-pair-default-inhibit))
+ :defer t
+ :config
+ (setq electric-pair-delete-adjacent-pairs t
+ electric-pair-skip-self 'electric-pair-default-skip-self
+ electric-pair-preserve-balance t
+ electric-pair-skip-whitespace t
+ electric-pair-inhibit-predicate 'electric-pair-default-inhibit))
(use-package lsp-mode
- :ensure t
- :defer t)
+ :ensure t
+ :defer t
+ :init
+ (setq lsp-keymap-prefix "M-l"))
;; -----------------------------------------------------------------------------
;; C
@@ -84,135 +87,135 @@
;; gdb-show-main nil)
(use-package cc-mode
- :defer t
- :bind (:map c-mode-map
- ("M-/" . lh-matching-delim))
- :hook (c-mode . (lambda ()
- (auto-fill-mode)
- (set-fill-column 70)
- (abbrev-mode 0)
- (flycheck-mode 1)
- (lsp) ;; clangd seems pretty good!
- (c-toggle-hungry-state 1)
- (c-toggle-electric-state 1)
- (c-toggle-syntactic-indentation 1)))
- :config
- (c-add-style "gnu-mod"
- '("gnu"
- (c-basic-offset . 2) ; Guessed value
- (c-offsets-alist
- (block-close . 0) ; Guessed value
- (case-label . +) ; Guessed value
- (defun-block-intro . +) ; Guessed value
- (defun-close . 0) ; Guessed value
- (defun-open . 0) ; Guessed value
- (else-clause . 0) ; Guessed value
- (statement . 0) ; Guessed value
- (statement-block-intro . +) ; Guessed value
- (statement-case-intro . +) ; Guessed value
- (statement-cont . +) ; Guessed value
- (substatement . +) ; Guessed value
- (topmost-intro . 0) ; Guessed value
- (topmost-intro-cont . 0) ; Guessed value
- (access-label . -)
- (annotation-top-cont . 0)
- (annotation-var-cont . +)
- (arglist-close . c-lineup-close-paren)
- (arglist-cont c-lineup-gcc-asm-reg 0)
- (arglist-cont-nonempty . c-lineup-arglist)
- (arglist-intro . c-lineup-arglist-intro-after-paren)
- (block-open . 0)
- (brace-entry-open . 0)
- (brace-list-close . 0)
- (brace-list-entry . 0)
- (brace-list-intro first c-lineup-2nd-brace-entry-in-arglist c-lineup-class-decl-init-+ +)
- (brace-list-open . +)
- (c . c-lineup-C-comments)
- (catch-clause . 0)
- (class-close . 0)
- (class-open . 0)
- (comment-intro . c-lineup-comment)
- (composition-close . 0)
- (composition-open . 0)
- (cpp-define-intro c-lineup-cpp-define +)
- (cpp-macro . -1000)
- (cpp-macro-cont . +)
- (do-while-closure . 0)
- (extern-lang-close . 0)
- (extern-lang-open . 0)
- (friend . 0)
- (func-decl-cont . +)
- (inclass . +)
- (incomposition . +)
- (inexpr-class . +)
- (inexpr-statement . +)
- (inextern-lang . +)
- (inher-cont . c-lineup-multi-inher)
- (inher-intro . +)
- (inlambda . 0)
- (inline-close . 0)
- (inline-open . 0)
- (inmodule . +)
- (innamespace . +)
- (knr-argdecl . 0)
- (knr-argdecl-intro . 5)
- (label . 0)
- (lambda-intro-cont . +)
- (member-init-cont . c-lineup-multi-inher)
- (member-init-intro . +)
- (module-close . 0)
- (module-open . 0)
- (namespace-close . 0)
- (namespace-open . 0)
- (objc-method-args-cont . c-lineup-ObjC-method-args)
- (objc-method-call-cont c-lineup-ObjC-method-call-colons c-lineup-ObjC-method-call +)
- (objc-method-intro . [0])
- (statement-case-open . +)
- (stream-op . c-lineup-streamop)
- (string . -1000)
- (substatement-label . 0)
- (substatement-open . +)
- (template-args-cont c-lineup-template-args +))))
- (setq c-default-style '((java-mode . "java")
- (awk-mode . "awk")
- (other . "gnu-mod"))))
+ :defer t
+ :bind (:map c-mode-map
+ ("M-/" . lh-matching-delim))
+ :hook (c-mode . (lambda ()
+ (auto-fill-mode)
+ (set-fill-column 80)
+ (abbrev-mode 0)
+ (flycheck-mode 1)
+ (lsp) ;; clangd seems pretty good!
+ (c-toggle-hungry-state 1)
+ (c-toggle-electric-state 1)
+ (c-toggle-syntactic-indentation 1)))
+ :config
+ (c-add-style "gnu-mod"
+ '("gnu"
+ (c-basic-offset . 2) ; Guessed value
+ (c-offsets-alist
+ (block-close . 0) ; Guessed value
+ (case-label . +) ; Guessed value
+ (defun-block-intro . +) ; Guessed value
+ (defun-close . 0) ; Guessed value
+ (defun-open . 0) ; Guessed value
+ (else-clause . 0) ; Guessed value
+ (statement . 0) ; Guessed value
+ (statement-block-intro . +) ; Guessed value
+ (statement-case-intro . +) ; Guessed value
+ (statement-cont . +) ; Guessed value
+ (substatement . +) ; Guessed value
+ (topmost-intro . 0) ; Guessed value
+ (topmost-intro-cont . 0) ; Guessed value
+ (access-label . -)
+ (annotation-top-cont . 0)
+ (annotation-var-cont . +)
+ (arglist-close . c-lineup-close-paren)
+ (arglist-cont c-lineup-gcc-asm-reg 0)
+ (arglist-cont-nonempty . c-lineup-arglist)
+ (arglist-intro . c-lineup-arglist-intro-after-paren)
+ (block-open . 0)
+ (brace-entry-open . 0)
+ (brace-list-close . 0)
+ (brace-list-entry . 0)
+ (brace-list-intro first c-lineup-2nd-brace-entry-in-arglist c-lineup-class-decl-init-+ +)
+ (brace-list-open . +)
+ (c . c-lineup-C-comments)
+ (catch-clause . 0)
+ (class-close . 0)
+ (class-open . 0)
+ (comment-intro . c-lineup-comment)
+ (composition-close . 0)
+ (composition-open . 0)
+ (cpp-define-intro c-lineup-cpp-define +)
+ (cpp-macro . -1000)
+ (cpp-macro-cont . +)
+ (do-while-closure . 0)
+ (extern-lang-close . 0)
+ (extern-lang-open . 0)
+ (friend . 0)
+ (func-decl-cont . +)
+ (inclass . +)
+ (incomposition . +)
+ (inexpr-class . +)
+ (inexpr-statement . +)
+ (inextern-lang . +)
+ (inher-cont . c-lineup-multi-inher)
+ (inher-intro . +)
+ (inlambda . 0)
+ (inline-close . 0)
+ (inline-open . 0)
+ (inmodule . +)
+ (innamespace . +)
+ (knr-argdecl . 0)
+ (knr-argdecl-intro . 5)
+ (label . 0)
+ (lambda-intro-cont . +)
+ (member-init-cont . c-lineup-multi-inher)
+ (member-init-intro . +)
+ (module-close . 0)
+ (module-open . 0)
+ (namespace-close . 0)
+ (namespace-open . 0)
+ (objc-method-args-cont . c-lineup-ObjC-method-args)
+ (objc-method-call-cont c-lineup-ObjC-method-call-colons c-lineup-ObjC-method-call +)
+ (objc-method-intro . [0])
+ (statement-case-open . +)
+ (stream-op . c-lineup-streamop)
+ (string . -1000)
+ (substatement-label . 0)
+ (substatement-open . +)
+ (template-args-cont c-lineup-template-args +))))
+ (setq c-default-style '((java-mode . "java")
+ (awk-mode . "awk")
+ (other . "gnu-mod"))))
;; -----------------------------------------------------------------------------
;; Rust
(use-package cargo
- :ensure t
- :defer t)
+ :ensure t
+ :defer t)
(use-package rust-mode
- :ensure t
- :defer t
- :bind (:map rust-mode-map
- ("M-," . lh-backward-delim)
- ("M-." . lh-forward-delim)
- ("M-/" . lh-matching-delim)
- ("M-p" . beginning-of-defun)
- ("M-n" . end-of-defun)
- ("C-c C-c" . rust-compile)
- ("C-c C-r" . rust-run))
- :hook (rust-mode . (lambda ()
- (cargo-minor-mode)
- ;; For some reason this is not automatic
- (setq-local electric-pair-pairs
- (cons '(?' . ?') electric-pair-pairs))
- ;; Pair {} in rust format strings ... ?
- (setq-local electric-pair-text-pairs
- (cons '(?{ . ?}) electric-pair-pairs))
- (flycheck-rust-setup)
- (lsp)))
- :config
- (setq rust-indent-offset 4
- rust-indent-method-chain t
- rust-indent-where-clause t
- rust-format-on-save t)
- (setq lsp-rust-server 'rust-analyzer
- lsp-rust-analyzer-call-info-full nil))
+ :ensure t
+ :defer t
+ :bind (:map rust-mode-map
+ ("M-," . lh-backward-delim)
+ ("M-." . lh-forward-delim)
+ ("M-/" . lh-matching-delim)
+ ("M-p" . beginning-of-defun)
+ ("M-n" . end-of-defun)
+ ("C-c C-c" . rust-compile)
+ ("C-c C-r" . rust-run))
+ :hook (rust-mode . (lambda ()
+ (cargo-minor-mode)
+ ;; For some reason this is not automatic
+ (setq-local electric-pair-pairs
+ (cons '(?' . ?') electric-pair-pairs))
+ ;; Pair {} in rust format strings ... ?
+ (setq-local electric-pair-text-pairs
+ (cons '(?{ . ?}) electric-pair-pairs))
+ (flycheck-rust-setup)
+ (lsp)))
+ :config
+ (setq rust-indent-offset 4
+ rust-indent-method-chain t
+ rust-indent-where-clause t
+ rust-format-on-save t)
+ (setq lsp-rust-server 'rust-analyzer
+ lsp-rust-analyzer-call-info-full nil))
;; -----------------------------------------------------------------------------
;; Python
@@ -234,99 +237,120 @@
;; Zig
(use-package zig-mode
- :ensure t
- :defer t
- :hook (zig-mode . (lambda () (lsp)))
- :bind (:map zig-mode-map
- ("M-," . lh-backward-delim)
- ("M-." . lh-forward-delim)
- ("M-/" . lh-matching-delim)
- ("M-p" . beginning-of-defun)
- ("M-n" . end-of-defun)
- ("C-c C-c" . zig-compile)
- ("C-c C-r" . zig-run))
- :config
- (require 'lsp)
- (setq lsp-zig-zls-executable "~/prog/zig/zls/zig-out/bin/zls"))
+ :ensure t
+ :defer t
+ :hook (zig-mode . (lambda () (lsp)))
+ :init
+ (defun my-zig-run ()
+ (interactive)
+ (zig--run-cmd "build run"))
+ :bind (:map zig-mode-map
+ ("M-," . lh-backward-delim)
+ ("M-." . lh-forward-delim)
+ ("M-/" . lh-matching-delim)
+ ("M-p" . beginning-of-defun)
+ ("M-n" . end-of-defun)
+ ("C-c C-c" . zig-compile)
+ ("C-c r" . zig-run)
+ ("C-c C-r" . my-zig-run))
+ :config
+ (require 'lsp)
+ (setq zig-format-on-save nil
+ lsp-zig-zls-executable "~/prog/zig/zls/zig-out/bin/zls"))
+
+;; -------------------------------------------------------------------
+;; OCaml
+
+(use-package utop
+ :ensure t
+ :defer t
+ :config
+ (setq utop-command "opam config exec -- utop -emacs"))
+
+(use-package tuareg
+ :ensure t
+ :defer t
+ :hook (tuareg-mode . (lambda ()
+ (utop-minor-mode))))
;; -------------------------------------------------------------------
;; Misc languages
(use-package js-comint
- :ensure t
- :defer t
- :config
- (setq js-comint-program-command "node"
- js-comint-program-arguments nil))
+ :ensure t
+ :defer t
+ :config
+ (setq js-comint-program-command "node"
+ js-comint-program-arguments nil))
(use-package js2-mode
- :ensure t
- :defer t
- :after js-comint
- :mode "\\.js$"
- :bind (:map js2-mode-map
- ("TAB" . js2-indent-line)
- ("C-x C-e" . js-send-last-sexp)
- ("C-c C-b" . js-send-buffer)
- ("C-c C-l" . js-load-file))
- :hook (js2-mode . (lambda ()
- (auto-revert-mode -1)
- (yas-minor-mode-on))))
+ :ensure t
+ :defer t
+ :after js-comint
+ :mode "\\.js$"
+ :bind (:map js2-mode-map
+ ("TAB" . js2-indent-line)
+ ("C-x C-e" . js-send-last-sexp)
+ ("C-c C-b" . js-send-buffer)
+ ("C-c C-l" . js-load-file))
+ :hook (js2-mode . (lambda ()
+ (auto-revert-mode -1)
+ (yas-minor-mode-on))))
(use-package nodemcu-mode
- :ensure t
- :defer t
- :config
- (setq nodemcu-default-keybindings t
- nodemcu-port "/dev/ttyUSB0"
- nodemcu-backend "nodemcu-uploader")
-
- (defun nodemcu-better-upload-current-file (&optional noreset)
- (interactive "P")
- (let ((proc (get-process "nodemcu-terminal")))
- (when proc
- (delete-process proc))
- (shell-command
- (nodemcu--get-command "upload" (file-name-nondirectory (buffer-file-name))))
- (unless noreset
- (shell-command
- (nodemcu--get-command "node restart"))
- (when proc
- (nodemcu-terminal))))))
+ :ensure t
+ :defer t
+ :config
+ (setq nodemcu-default-keybindings t
+ nodemcu-port "/dev/ttyUSB0"
+ nodemcu-backend "nodemcu-uploader")
+
+ (defun nodemcu-better-upload-current-file (&optional noreset)
+ (interactive "P")
+ (let ((proc (get-process "nodemcu-terminal")))
+ (when proc
+ (delete-process proc))
+ (shell-command
+ (nodemcu--get-command "upload" (file-name-nondirectory (buffer-file-name))))
+ (unless noreset
+ (shell-command
+ (nodemcu--get-command "node restart"))
+ (when proc
+ (nodemcu-terminal))))))
(use-package lua-mode
- :after nodemcu-mode
- :ensure t
- :defer t
- :bind (:map lua-mode-map
- ("C-x C-e" . lua-send-current-line)
- ("C-c C-d" . lua-send-defun)
- ("C-c C-e" . lua-send-region)
- ("C-c C-u" . nodemcu-better-upload-current-file)
- ("C-c C-t" . nodemcu-terminal)
- ("M-n" . lua-forward-sexp)
- ("M-p" . lua-backwards-to-block-begin-or-end))
- :hook (lua-mode . (lambda ()
- (require 'nodemcu-mode)
- (nodemcu-mode 1))))
+ :after nodemcu-mode
+ :ensure t
+ :defer t
+ :bind (:map lua-mode-map
+ ("C-x C-e" . lua-send-current-line)
+ ("C-c C-d" . lua-send-defun)
+ ("C-c C-e" . lua-send-region)
+ ("C-c C-u" . nodemcu-better-upload-current-file)
+ ("C-c C-t" . nodemcu-terminal)
+ ("M-n" . lua-forward-sexp)
+ ("M-p" . lua-backwards-to-block-begin-or-end))
+ :hook (lua-mode . (lambda ()
+ (require 'nodemcu-mode)
+ (nodemcu-mode 1))))
(use-package verilog-mode
- :ensure t
- :defer t
- :mode "\\.vl$"
- :hook (verilog-mode . (lambda ()
- (setq verilog-tool 'verilog-compiler)
- (verilog-set-compile-command)))
- :config
- (setq verilog-compiler "iverilog"
- verilog-tool 'verilog-compiler))
+ :ensure t
+ :defer t
+ :mode "\\.vl$"
+ :hook (verilog-mode . (lambda ()
+ (setq verilog-tool 'verilog-compiler)
+ (verilog-set-compile-command)))
+ :config
+ (setq verilog-compiler "iverilog"
+ verilog-tool 'verilog-compiler))
(use-package gforth
- :commands forth-mode
- :mode (("\\.fs$" . forth-mode)
- ("\\.fb$" . forth-block-mode)
- ("\\.4th$" . forth-mode)))
+ :commands forth-mode
+ :mode (("\\.fs$" . forth-mode)
+ ("\\.fb$" . forth-block-mode)
+ ("\\.4th$" . forth-mode)))
(use-package clojure-mode
- :ensure t
- :defer t)
+ :ensure t
+ :defer t)
diff --git a/emacs/inits/21-functional.el b/emacs/inits/21-functional.el
index f863145..d9e4214 100644
--- a/emacs/inits/21-functional.el
+++ b/emacs/inits/21-functional.el
@@ -1,4 +1,4 @@
-;; Time-stamp: <2021-07-07 19h56 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h48 EDT (hobbies)>
;; -----------------------------------------------------------------------------
;; Haskell
@@ -26,7 +26,7 @@
(interactive-haskell-mode)
(turn-on-haskell-doc-mode)
(turn-on-haskell-decl-scan)
- (lsp)
+ (lsp)
(haskell-mode-stylish-buffer))))
:config
(setq haskell-doc-show-global-types t
diff --git a/emacs/inits/22-lisp.el b/emacs/inits/22-lisp.el
index 8365293..fb1304e 100644
--- a/emacs/inits/22-lisp.el
+++ b/emacs/inits/22-lisp.el
@@ -1,4 +1,4 @@
-;; Time-stamp: <2019-10-02 22:40:52 (tslil@basingstoke)>
+;; Time-stamp: <2021-09-27 08h48 EDT (hobbies)>
;; ----------------------------------------------------------------------------
;; Lisp helpers
@@ -32,11 +32,11 @@
(defun lh-slurp-forward ()
(interactive)
- (corral-shift-backward ?\( ?\)))
+ (corral-shift-forward ?\( ?\)))
(defun lh-slurp-backward ()
(interactive)
- (corral-shift-forward ?\( ?\)))
+ (corral-shift-backward ?\( ?\)))
(defun lh-open-parentheses-dwim (arg)
(interactive "P")
@@ -80,8 +80,8 @@
(define-key map (kbd "M-}") 'corral-braces-backward)
(define-key map (kbd "M-[") 'corral-brackets-forward)
(define-key map (kbd "M-]") 'corral-brackets-backward)
- (define-key map (kbd "C-(") 'lh-slurp-forward)
- (define-key map (kbd "C-)") 'lh-slurp-backward)
+ (define-key map (kbd "C-)") 'lh-slurp-forward)
+ (define-key map (kbd "C-(") 'lh-slurp-backward)
(define-key map (kbd "M-p") 'beginning-of-defun)
(define-key map (kbd "M-n") 'lh-end-of-defun)
t)))
@@ -89,17 +89,24 @@
;; ----------------------------------------------------------------------------
;; Mode configurations
+;; (use-package rainbow-blocks :ensure t)
+
(add-hook 'emacs-lisp-mode-hook
(lambda ()
(eldoc-mode)
(aggressive-indent-mode)
(make-lisp-bindings)))
+(add-hook 'clojure-mode-hook
+ (lambda ()
+ (aggressive-indent-mode)
+ (make-lisp-bindings)))
+
(use-package caps-lock-mode
:load-path "~/.emacs.d/scripts/")
-(use-package slime-company
- :ensure t :defer t)
+;; (use-package slime-company
+;; :ensure t :defer t)
(use-package slime
:ensure t
@@ -113,8 +120,8 @@
slime-asdf
slime-banner
slime-scratch
- slime-autodoc
- slime-company))
+ ;; slime-company
+ slime-autodoc))
(slime-mode)
(require 'caps-lock-mode)
(caps-lock-mode)
@@ -127,6 +134,10 @@
(setq slime-header-line-p nil
slime-kill-without-query-p t))
+(use-package geiser-guile
+ :ensure t
+ :defer)
+
(use-package geiser
:ensure t
:hook (scheme-mode . (lambda ()
diff --git a/emacs/inits/27-gemini.el b/emacs/inits/27-gemini.el
index ff6e308..65a499d 100644
--- a/emacs/inits/27-gemini.el
+++ b/emacs/inits/27-gemini.el
@@ -1,12 +1,12 @@
-;; Time-stamp: <2021-06-29 17h29 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h48 EDT (hobbies)>
(use-package elpher
- :ensure t
- :defer)
+ :ensure t
+ :defer)
(use-package visual-fill-column
- :ensure t
- :defer)
+ :ensure t
+ :defer)
(defvar gemlog-directory (expand-file-name "~/hobbies/l-3.space/"))
(defvar gemlog-file-name "%y%02m%02d")
@@ -14,48 +14,48 @@
(defvar gemlog-time-zone "UTC")
(defun gemlog-new-entry ()
- (interactive)
- (let* ((title (read-string "Title: "))
- (number 1)
- (file (format "%s/log-%s-%d.gmi"
- gemlog-directory
- (format-time-string gemlog-file-name nil t)
- number)))
- (while (file-exists-p file)
- (setq number (+ 1 number))
- (setq file (format "%s/log-%s-%d.gmi"
- gemlog-directory
- (format-time-string gemlog-file-name nil t)
- number)))
- (find-file file)
- (setq-local time-stamp-time-zone gemlog-time-zone
- time-stamp-format gemlog-time-string)
- (insert "Time-stamp: <>") (newline) (newline)
- (insert "# " title) (newline) (newline)
- (time-stamp)))
+ (interactive)
+ (let* ((title (read-string "Title: "))
+ (number 1)
+ (file (format "%s/log-%s-%d.gmi"
+ gemlog-directory
+ (format-time-string gemlog-file-name nil t)
+ number)))
+ (while (file-exists-p file)
+ (setq number (+ 1 number))
+ (setq file (format "%s/log-%s-%d.gmi"
+ gemlog-directory
+ (format-time-string gemlog-file-name nil t)
+ number)))
+ (find-file file)
+ (setq-local time-stamp-time-zone gemlog-time-zone
+ time-stamp-format gemlog-time-string)
+ (insert "Time-stamp: <>") (newline) (newline)
+ (insert "# " title) (newline) (newline)
+ (time-stamp)))
(defvar gemini-footnote-symbols '("⁰" "¹" "²" "³" "⁴" "⁵" "⁶" "⁷" "⁸" "⁹" "ᵃ" "ᵇ" "ᶜ" "ᵈ" "ᵉ" "ᶠ"))
(defun gemini-insert-footnote ()
- (interactive)
- (let ((symb (car gemini-footnote-symbols))
- (n 0))
- (while (and symb (save-excursion (beginning-of-buffer) (search-forward symb nil t)))
- (setq n (1+ n)
- symb (nth n gemini-footnote-symbols)))
- (if (not symb) (message "Ran out of footnote symbols. Customise `gemini-footnote-symbols'.")
- (insert symb)
- (end-of-buffer)
- (unless (= (point) (point-at-bol)) (newline))
- (insert symb " "))))
+ (interactive)
+ (let ((symb (car gemini-footnote-symbols))
+ (n 0))
+ (while (and symb (save-excursion (beginning-of-buffer) (search-forward symb nil t)))
+ (setq n (1+ n)
+ symb (nth n gemini-footnote-symbols)))
+ (if (not symb) (message "Ran out of footnote symbols. Customise `gemini-footnote-symbols'.")
+ (insert symb)
+ (end-of-buffer)
+ (unless (= (point) (point-at-bol)) (newline))
+ (insert symb " "))))
(use-package gemini-mode
- :ensure t
- :bind (:map gemini-mode-map
- ("C-c C-f" . gemini-insert-footnote))
- :hook (gemini-mode . (lambda ()
- (setq time-stamp-time-zone gemlog-time-zone
- time-stamp-format gemlog-time-string)
- (setq-local indent-tabs-mode nil)
- (auto-fill-mode -1)
- (set-fill-column 80))))
+ :ensure t
+ :bind (:map gemini-mode-map
+ ("C-c C-f" . gemini-insert-footnote))
+ :hook (gemini-mode . (lambda ()
+ (setq time-stamp-time-zone gemlog-time-zone
+ time-stamp-format gemlog-time-string)
+ (setq-local indent-tabs-mode nil)
+ (auto-fill-mode -1)
+ (set-fill-column 80))))
diff --git a/emacs/inits/30-irc.el b/emacs/inits/30-irc.el
index 99d2e2f..7e20970 100644
--- a/emacs/inits/30-irc.el
+++ b/emacs/inits/30-irc.el
@@ -1,60 +1,62 @@
-;; Time-stamp: <2021-04-19 09h46 EDT (hobbies)>
+;; Time-stamp: <2021-09-27 08h48 EDT (hobbies)>
(use-package rcirc
- :ensure t
- :defer
- :hook (rcirc-mode . (lambda ()
- (rcirc-track-minor-mode 1)
- (rcirc-omit-mode 1)
- (spell-fu-mode 1)
- (visual-line-mode)
- (set (make-local-variable 'scroll-conservatively) 8192)))
- :config
- (use-package rcirc-color
- :ensure t
- :if (window-system))
- (use-package rcirc-styles
- :ensure t
- :if (window-system))
+ :ensure t
+ :defer
+ :hook (rcirc-mode . (lambda ()
+ (rcirc-track-minor-mode 1)
+ (rcirc-omit-mode 1)
+ (spell-fu-mode 1)
+ (visual-line-mode)
+ (set (make-local-variable 'scroll-conservatively) 8192)))
+ :config
+ (use-package rcirc-color
+ :ensure t
+ :if (window-system))
+ (use-package rcirc-styles
+ :ensure t
+ :if (window-system))
- (require 'auth-source)
- (defadvice rcirc (before rcirc-read-from-authinfo activate)
- (unless arg
- (custom-set-variables
- '(epg-gpg-program "/usr/bin/qubes-gpg-client-wrapper"))
- (setq rcirc-server-alist (copy-tree rcirc-server-alist-template))
- (dolist (server rcirc-server-alist)
- (let* ((pl (cdr server))
- (host (plist-get pl :host))
- (user (plist-get pl :user))
- (port (plist-get pl :port))
- (pass (plist-get pl :password)))
- (when (string-equal "%LOOKUP%" pass)
- (plist-put (cdr server) :password
- (concat user ":"
- (let ((match (car (auth-source-search :host host))))
- (if match
- (let ((secret (plist-get match :secret)))
- (if (functionp secret) (funcall secret) secret))
- (error "Password not found for %s" host)))))
- (message "Found authorisation information for %s." host))))))
+ (require 'auth-source)
+ (defadvice rcirc (before rcirc-read-from-authinfo activate)
+ (unless arg
+ (custom-set-variables
+ '(epg-gpg-program "/usr/bin/qubes-gpg-client-wrapper"))
+ (setq rcirc-server-alist (copy-tree rcirc-server-alist-template))
+ (dolist (server rcirc-server-alist)
+ (let* ((pl (cdr server))
+ (host (plist-get pl :host))
+ (user (plist-get pl :user))
+ (port (plist-get pl :port))
+ (pass (plist-get pl :password)))
+ (when (string-equal "%LOOKUP%" pass)
+ (plist-put (cdr server) :password
+ (concat user ":"
+ (let ((match (car (auth-source-search :host host))))
+ (if match
+ (let ((secret (plist-get match :secret)))
+ (if (functionp secret) (funcall secret) secret))
+ (error "Password not found for %s" host)))))
+ (message "Found authorisation information for %s." host))))))
- (defadvice rcirc (after rcirc-clean-passwords activate)
- (setq rcirc-server-alist nil)
- (custom-set-variables
- '(epg-gpg-program "gpg2")))
+ (defadvice rcirc (after rcirc-clean-passwords activate)
+ (setq rcirc-server-alist nil)
+ (custom-set-variables
+ '(epg-gpg-program "gpg2")))
- (setq rcirc-default-full-name "tslil"
- rcirc-default-nick "op_4"
- rcirc-default-user-name "op_4"
- rcirc-default-part-reason "leaving"
- rcirc-time-format "%Y-%m-%d %H:%M "
- rcirc-log-directory "~/logs/irc/"
- rcirc-fill-column 80
- rcirc-log-flag t
- rcirc-server-alist-template '(("l-3.space"
- :host "l-3.space"
- :port 6697
- :user "tslil"
- :password "%LOOKUP%"
- :encryption tls))))
+ (setq rcirc-default-full-name "tslil"
+ rcirc-default-nick "op_4"
+ rcirc-default-user-name "op_4"
+ rcirc-default-part-reason "leaving"
+ rcirc-time-format "%Y-%m-%d %H:%M "
+ rcirc-log-directory "~/logs/irc/"
+ rcirc-fill-column 80
+ rcirc-log-flag t
+ rcirc-ignore-list '("esowiki")
+ rcirc-server-alist-template '(("l-3.space"
+ :server-alias "libera.chat"
+ :host "l-3.space"
+ :port 6697
+ :user "tslil/liberachat"
+ :password "%LOOKUP%"
+ :encryption tls))))
diff --git a/emacs/inits/60-misc-configs.el b/emacs/inits/60-misc-configs.el
index 455da22..4df81e0 100644
--- a/emacs/inits/60-misc-configs.el
+++ b/emacs/inits/60-misc-configs.el
@@ -1,22 +1,22 @@
-;; Time-stamp: <2019-07-16 10:49:21 (tslil@bison)>
+;; Time-stamp: <2021-09-27 08h49 EDT (hobbies)>
(use-package dired
:defer t
:config
(setq dired-listing-switches "--group-directories-first -alh"
- dired-auto-revert-buffer t
- dired-dwim-target t
- ;; ???
- ;; dired-guess-shell-alist-user '(("\\.djvu\\'" "zathura")
- ;; ("\\.pdf\\'" "zathura")
- ;; ("\\.ps\\'" "zathura"))
- ))
+ dired-auto-revert-buffer t
+ dired-dwim-target t
+ ;; ???
+ ;; dired-guess-shell-alist-user '(("\\.djvu\\'" "zathura")
+ ;; ("\\.pdf\\'" "zathura")
+ ;; ("\\.ps\\'" "zathura"))
+ ))
(use-package browse-url
:defer t
:config
- (setq browse-url-generic-program "iceweasel"
- browse-url-browser-function '(("." . browse-url-generic))))
+ (setq browse-url-generic-program "firefox"
+ browse-url-browser-function 'browse-url-default-browser))
(setq backup-directory-alist `((".*" . ,temporary-file-directory))
auto-save-file-name-transforms `((".*" ,temporary-file-directory t)))
diff --git a/emacs/inits/70-global-keybinds.el b/emacs/inits/70-global-keybinds.el
index 6b02fe8..816998f 100644
--- a/emacs/inits/70-global-keybinds.el
+++ b/emacs/inits/70-global-keybinds.el
@@ -1,34 +1,34 @@
-;; Time-stamp: <2021-08-13 20h11 EDT (academic)>
+;; Time-stamp: <2020-10-26 17h12 EDT (hobbies)>
(setq time-stamp-active t
- time-stamp-line-limit 3
- time-stamp-format "%Y-%02m-%02d %02Hh%02M %Z (%s)")
+ time-stamp-line-limit 3
+ time-stamp-format "%Y-%02m-%02d %02Hh%02M %Z (%s)")
(add-hook 'before-save-hook #'time-stamp)
(defun insert-timestamp ()
- (interactive)
- (save-excursion
- (goto-char (point-min))
- (unless (search-forward "Time-stamp: "
- (line-beginning-position (1+ time-stamp-line-limit))
- t)
- (goto-char (point-min))
- (newline)
- (beginning-of-line 0)
- (comment-dwim nil)
- (insert (concat "Time-stamp: " "<>"))
- (newline))
- (time-stamp)))
+ (interactive)
+ (save-excursion
+ (goto-char (point-min))
+ (unless (search-forward "Time-stamp: "
+ (line-beginning-position (1+ time-stamp-line-limit))
+ t)
+ (goto-char (point-min))
+ (newline)
+ (beginning-of-line 0)
+ (comment-dwim nil)
+ (insert (concat "Time-stamp: " "<>"))
+ (newline))
+ (time-stamp)))
(global-set-key (kbd "C-x t") 'insert-timestamp)
(global-set-key (kbd "C-z") 'nil)
(use-package eterm-256color
- :ensure t
- :config
- (add-hook 'term-mode-hook #'eterm-256color-mode)
- (global-set-key (kbd "C-c c") 'ansi-term))
+ :ensure t
+ :config
+ (add-hook 'term-mode-hook #'eterm-256color-mode)
+ (global-set-key (kbd "C-c c") 'ansi-term))
(global-set-key (kbd "C-x e") 'eval-expression)
@@ -42,10 +42,8 @@
(global-set-key (kbd "M-z") 'zap-up-to-char)
(defun kill-region-or-backward-kill-word (arg)
- (interactive "p")
- (if (region-active-p) (kill-region 0 0 t)
- (backward-kill-word arg)))
+ (interactive "p")
+ (if (region-active-p) (kill-region 0 0 t)
+ (backward-kill-word arg)))
(global-set-key (kbd "C-w") 'kill-region-or-backward-kill-word)
-
-(global-set-key (kbd "M-SPC") '(lambda () (interactive) (insert ?\\))) ; Never used just-one-space
diff --git a/emacs/inits/99-last.el b/emacs/inits/99-last.el
index dc6db7d..1bcec66 100644
--- a/emacs/inits/99-last.el
+++ b/emacs/inits/99-last.el
@@ -1,7 +1,8 @@
-;; Time-stamp: <2019-01-26 12:56:04 (tslil@winslow)>
+;; Time-stamp: <2020-08-12 22:05:48 (user@hobbies)>
(add-hook 'after-init-hook
(lambda ()
- (run-with-idle-timer 20 nil (lambda () (setq gc-cons-threshold 8000000)))))
+ (run-with-idle-timer 20 nil (lambda () (setq gc-cons-threshold 80000000)))))
+(setq read-process-output-max (* 1024 1024))
(setq file-name-handler-alist old-file-name-handler-alist)