This commit is contained in:
parent
118cf92a27
commit
87913bbd6a
14 changed files with 243 additions and 241 deletions
|
|
@ -18,7 +18,8 @@
|
|||
;; this to `nil' in the past, but the `bidi-display-reordering's docs say that
|
||||
;; is an undefined state and suggest this to be just as good:
|
||||
(setq-default bidi-display-reordering 'left-to-right
|
||||
bidi-paragraph-direction 'left-to-right)
|
||||
bidi-paragraph-direction 'left-to-right
|
||||
bidi-inhibit-bpa t)
|
||||
|
||||
;; Reduce rendering/line scan work for Emacs by not rendering cursors or regions
|
||||
;; in non-focused windows.
|
||||
|
|
@ -31,7 +32,7 @@
|
|||
(setopt fast-but-imprecise-scrolling t)
|
||||
|
||||
;;;;;;;;; TRAMP configuration ;;;;;;;;;;;;;;;;
|
||||
(use-package tramp :ensure nil :defer 3
|
||||
(use-package tramp :ensure nil :defer 5
|
||||
:config
|
||||
(setopt tramp-default-method "ssh"))
|
||||
|
||||
|
|
@ -89,7 +90,8 @@
|
|||
(setopt large-file-warning-threshold 50000000)
|
||||
|
||||
;; Numbers are arbitrary, but work on a large screen. Default is 160
|
||||
(setopt split-width-threshold 200)
|
||||
(setopt split-width-threshold 190)
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;; Shell stuff ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)
|
||||
|
||||
|
|
@ -149,9 +151,5 @@
|
|||
;;;;;;;;;;;;;;;;; Use C-n to create a new line
|
||||
(setopt next-line-add-newlines t)
|
||||
|
||||
;;;;;;;;;;;;;;;;; Speed up long line display by disabling bidirectional text
|
||||
(setq-default bidi-paragraph-direction 'left-to-right
|
||||
bidi-inhibit-bpa t)
|
||||
|
||||
(provide 'icejam-base)
|
||||
;;; icejam-base.el ends here
|
||||
|
|
|
|||
|
|
@ -74,12 +74,12 @@
|
|||
#'cape-file
|
||||
#'cape-elisp-symbol)))
|
||||
|
||||
(use-package yasnippet-capf :ensure t :after corfu :defer 1
|
||||
(use-package yasnippet-capf :ensure t :after corfu :defer t
|
||||
:config
|
||||
(declare-function yasnippet-capf 'yasnippet)
|
||||
(setopt yasnippet-capf-lookup-by 'name))
|
||||
|
||||
(use-package nerd-icons-corfu :ensure t :defer 2
|
||||
(use-package nerd-icons-corfu :ensure t :defer 5
|
||||
:after corfu
|
||||
:config
|
||||
(declare-function nerd-icons-corfu-formatter 'nerd-icons-corfu)
|
||||
|
|
|
|||
|
|
@ -25,9 +25,9 @@
|
|||
;; (defconst icejam-font "Victor Mono Medium" "Default font.")
|
||||
;; (defconst icejam-font "Iosevka Term" "Default font.")
|
||||
|
||||
(defconst icejam-default-font-family "Iosevka Comfy Motion" "Default font.")
|
||||
(defconst icejam-default-font-family "Iosevka Term" "Default font.")
|
||||
(defconst icejam-variable-font-family "Lexica Ultralegible" "Variable pitch font.")
|
||||
(defconst icejam-markdown-font-family "Iosevka Term"
|
||||
(defconst icejam-markdown-font-family "Iosevka Comfy Motion"
|
||||
"Font used to render code blocks in markdown.
|
||||
It is different than default font to keep it visually distinct.")
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
;;; Highlight misspelled words
|
||||
;;; Code:
|
||||
|
||||
(use-package ispell :ensure nil :defer 2
|
||||
(use-package ispell :ensure nil :defer t
|
||||
:config
|
||||
(setopt ispell-program-name "aspell")
|
||||
(setopt ispell-extra-args '("--run-together" "--run-together-limit=5" "--run-together-min=2")))
|
||||
|
|
|
|||
|
|
@ -45,8 +45,8 @@
|
|||
(keymap-set icejam-keys-mode-map "C-c r" #'icejam-revert-buffer-no-confirm)
|
||||
|
||||
;; Make emacs behave like a normal editor from 21st century.
|
||||
(keymap-set icejam-keys-mode-map "<home>" 'beginning-of-line)
|
||||
(keymap-set icejam-keys-mode-map "<end>" 'end-of-line)
|
||||
(keymap-set icejam-keys-mode-map "<home>" #'beginning-of-line)
|
||||
(keymap-set icejam-keys-mode-map "<end>" #'end-of-line)
|
||||
|
||||
;;;;;;;;; Translate keys ;;;;;;;;;;;;;;;;;;;;;
|
||||
(keymap-set key-translation-map "<f6>" "C-c l") ;; On F6, send C-c l
|
||||
|
|
|
|||
|
|
@ -65,13 +65,12 @@
|
|||
(use-package lsp-ui :ensure t :after (lsp-mode) :defer t
|
||||
:config
|
||||
(setopt lsp-ui-doc-enable t
|
||||
lsp-ui-header t
|
||||
lsp-ui-delay 0.5 ;; Wait half a second to display documentation
|
||||
lsp-ui-doc-delay 0.5 ;; Wait half a second to display documentation
|
||||
lsp-ui-doc-position 'at-point
|
||||
lsp-ui-doc-include-signature t))
|
||||
|
||||
;; Lsp debugger mode
|
||||
(use-package dap-mode :ensure t :after (lsp-mode lsp-ui) :defer t)
|
||||
(use-package dap-mode :ensure t :after (lsp-mode) :defer t)
|
||||
|
||||
(provide 'icejam-lsp)
|
||||
;;; icejam-lsp.el ends here
|
||||
|
|
|
|||
|
|
@ -23,10 +23,9 @@
|
|||
(conf-mode . whitespace-mode)
|
||||
(before-save . whitespace-cleanup))
|
||||
:config
|
||||
(setopt
|
||||
whitespace-style #'(face trailing empty) ;; New whitespace style
|
||||
require-final-newline 't ;; Insert newline on save
|
||||
))
|
||||
(setopt whitespace-style #'(face trailing empty) ;; New whitespace style
|
||||
require-final-newline 't ;; Insert newline on save
|
||||
))
|
||||
|
||||
(setq-default indent-tabs-mode nil)
|
||||
|
||||
|
|
@ -49,11 +48,6 @@
|
|||
(add-to-list 'dash-at-point-mode-alist '(enh-ruby-mode . "ruby,rubygems,rails"))
|
||||
(add-to-list 'dash-at-point-mode-alist '(elixir-ts-mode . "elixir,hex")))
|
||||
|
||||
|
||||
;; By default, use 2 spaces for indentation
|
||||
(setopt tab-width 2)
|
||||
(setopt tab-stop-list (number-sequence tab-width 200 tab-width))
|
||||
|
||||
;; Ensure indentation in steps:
|
||||
(defun icejam-set-indent (step)
|
||||
"Set indentation to STEP."
|
||||
|
|
@ -61,26 +55,14 @@
|
|||
(setq-local tab-width step)
|
||||
(setq-local tab-stop-list (number-sequence step 200 step)))
|
||||
|
||||
(defun icejam-set-indent-2 () "Set indent to 2." (icejam-set-indent 2))
|
||||
(defun icejam-set-indent-4 () "Set indent to 4." (icejam-set-indent 4))
|
||||
(defun icejam-set-indent-8 () "Set indent to 8." (icejam-set-indent 8))
|
||||
;; By default, use 2 spaces for indentation
|
||||
(icejam-set-indent 2)
|
||||
|
||||
(use-package column-enforce-mode :ensure t :defer t
|
||||
:hook (elpaca-after-init . global-column-enforce-mode)
|
||||
:config
|
||||
(declare-function column-enforce-n 'column-enforce-mode)
|
||||
(defun icejam-column-enforce-80 ()
|
||||
"Enforce 80 columns."
|
||||
(column-enforce-n 80))
|
||||
(defun icejam-column-enforce-100 ()
|
||||
"Enforce 100 columns."
|
||||
(column-enforce-n 100))
|
||||
(defun icejam-column-enforce-98 ()
|
||||
"Enforce 98 columns."
|
||||
(column-enforce-n 98)))
|
||||
:hook (elpaca-after-init . global-column-enforce-mode))
|
||||
|
||||
;; PCRE to Emacs regex translations
|
||||
(use-package pcre2el :ensure t :defer 3)
|
||||
(use-package pcre2el :ensure t :defer 5)
|
||||
|
||||
;; Visual regexp
|
||||
(use-package visual-regexp-steroids :ensure t
|
||||
|
|
|
|||
|
|
@ -43,6 +43,7 @@
|
|||
;; (use-package zenburn-theme :ensure t
|
||||
;; :config
|
||||
;; (load-theme 'zenburn t t))
|
||||
|
||||
;; (use-package catppuccin-theme :ensure t
|
||||
;; :custom
|
||||
;; ((catpuccin-flavor 'frappe))
|
||||
|
|
@ -61,7 +62,7 @@
|
|||
|
||||
(if (memq window-system '(x mac ns))
|
||||
(enable-theme 'icejam-base16-zenburn)
|
||||
(enable-theme 'icejam-base16-zenburn)))
|
||||
(enable-theme 'icejam-base16-zenburn)))
|
||||
|
||||
(provide 'icejam-themes)
|
||||
;;; icejam-themes.el ends here
|
||||
|
|
|
|||
|
|
@ -40,8 +40,7 @@
|
|||
(column-enforce-n 80)
|
||||
(cider-mode 1)
|
||||
|
||||
(define-key
|
||||
clojure-mode-map (kbd "C-c l") 'icejam-lang-cider-context-menu)
|
||||
(define-key clojure-mode-map (kbd "C-c l") 'icejam-lang-cider-context-menu)
|
||||
|
||||
;; Do not enable paredit for clojure
|
||||
;; (paredit-mode 1)
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
;;; languages/elisp -- summary -*- lexical-binding: t; -*-
|
||||
;;; Commentary:
|
||||
;;; Code:
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function icejam-set-elisp-capfs 'icejam-complete-at-point)
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
|
||||
(eval-when-compile
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function icejam-set-elisp-capfs 'icejam-complete-at-point)
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode))
|
||||
|
||||
(add-to-list 'auto-mode-alist '("/Eask\\'" . emacs-lisp-mode))
|
||||
|
||||
|
|
|
|||
|
|
@ -2,15 +2,15 @@
|
|||
;;; Commentary:
|
||||
;;; Code:
|
||||
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function -> 'dash)
|
||||
(declare-function lsp 'lsp-mode)
|
||||
(declare-function yas--table-get-create 'yasnippet)
|
||||
(declare-function yas--remove-template-by-uuid 'yasnippet)
|
||||
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
|
||||
(eval-when-compile (defvar icejam-language-transient-alist))
|
||||
(eval-when-compile
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function -> 'dash)
|
||||
(declare-function lsp 'lsp-mode)
|
||||
(declare-function yas--table-get-create 'yasnippet)
|
||||
(declare-function yas--remove-template-by-uuid 'yasnippet)
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
|
||||
(defvar icejam-language-transient-alist))
|
||||
|
||||
;; Only load the elixir-format from elixir mode.
|
||||
(use-package elixir-format :defer t
|
||||
|
|
|
|||
|
|
@ -2,32 +2,35 @@
|
|||
;;; Commentary:
|
||||
;;; Code:
|
||||
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
(eval-when-compile
|
||||
(declare-function elpaca-installed-p "elpaca")
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
(declare-function rxt--re-builder-switch-pcre-mode "pcre2el"))
|
||||
|
||||
;; Markdown is a dependency of LSP mode. By wrapping it in unless we silence
|
||||
;; a warning from the byte compiler.
|
||||
(declare-function elpaca-installed-p "elpaca")
|
||||
(unless (elpaca-installed-p 'markdown-mode)
|
||||
(use-package markdown-mode :ensure t :defer t))
|
||||
(use-package markdown-mode :ensure t :defer t
|
||||
:commands (markdown-preview)
|
||||
:config
|
||||
;; Render preview and open it in browser.
|
||||
(keymap-set markdown-mode-map "C-c C-v" #'markdown-preview)
|
||||
|
||||
(with-eval-after-load 'markdown-mode
|
||||
(setq-default markdown-command "pandoc"))
|
||||
|
||||
(declare-function rxt--re-builder-switch-pcre-mode "pcre2el")
|
||||
(declare-function markdown-preview 'markdown-mode)
|
||||
;; Render HTML preview with pandoc
|
||||
(setq-default markdown-command '("pandoc"
|
||||
"-f"
|
||||
"markdown"
|
||||
"-t"
|
||||
"html5"
|
||||
"--template"
|
||||
"github.html5"
|
||||
"--highlight-style"
|
||||
"pygments"))))
|
||||
|
||||
(defun icejam-lang-activate-markdown-mode ()
|
||||
"Reconfigure markdown mode for your own purposes."
|
||||
(icejam-set-indent 2)
|
||||
(column-enforce-n 10000)
|
||||
|
||||
;; Markdown mode reuses my bindings, remove them.
|
||||
(keymap-set markdown-mode-map "C-c <left>" nil)
|
||||
(keymap-set markdown-mode-map "C-c <right>" nil)
|
||||
(keymap-set markdown-mode-map "C-c <up>" nil)
|
||||
(keymap-set markdown-mode-map "C-c <down>" nil)
|
||||
(keymap-set markdown-mode-map "C-c C-v" #'markdown-preview))
|
||||
(icejam-set-indent 2))
|
||||
|
||||
(add-hook 'markdown-mode-hook 'icejam-lang-activate-markdown-mode)
|
||||
(add-hook 'markdown-mode-hook 'display-line-numbers-mode)
|
||||
|
|
|
|||
|
|
@ -1,23 +1,27 @@
|
|||
;;; rust -- summary -*- lexical-binding: t; -*-
|
||||
;;; Commentary:
|
||||
;;; Code:
|
||||
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function lsp-deferred 'lsp-mode)
|
||||
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point)
|
||||
(eval-when-compile
|
||||
(declare-function column-enforce-n 'column-enforce-mode (number))
|
||||
(declare-function lsp-deferred 'lsp-mode)
|
||||
(declare-function icejam-set-indent 'icejam-prog-mode)
|
||||
(declare-function icejam-set-lsp-capfs 'icejam-complete-at-point))
|
||||
|
||||
(use-package rust-mode
|
||||
:ensure t
|
||||
:defer t
|
||||
:config
|
||||
(setq rust-mode-treesitter-derive t))
|
||||
:config (setopt rust-mode-treesitter-derive t))
|
||||
|
||||
(use-package rustic
|
||||
:ensure t
|
||||
:defer t
|
||||
:after (rust-mode)
|
||||
:config (setopt rustic-format-on-save nil))
|
||||
|
||||
(use-package flycheck-rust
|
||||
:ensure t
|
||||
:defer t
|
||||
:requires (rust-mode lsp))
|
||||
:after (rust-mode lsp))
|
||||
|
||||
(defun icejam-activate-rust-mode ()
|
||||
"All things for Rust mode."
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue