summaryrefslogtreecommitdiff
path: root/.config/emacs/archive/misc.el
diff options
context:
space:
mode:
Diffstat (limited to '.config/emacs/archive/misc.el')
-rw-r--r--.config/emacs/archive/misc.el42
1 files changed, 42 insertions, 0 deletions
diff --git a/.config/emacs/archive/misc.el b/.config/emacs/archive/misc.el
new file mode 100644
index 0000000..07323b6
--- /dev/null
+++ b/.config/emacs/archive/misc.el
@@ -0,0 +1,42 @@
+;; Custom "in-line" text object
+(evil-define-text-object evil-inner-line (count &optional beg end type)
+ "Select the current line excluding leading/trailing whitespace."
+ (let* ((line-start (line-beginning-position))
+ (line-end (line-end-position))
+ (text (buffer-substring-no-properties line-start line-end))
+ (nonspace-start (string-match-p "\\S-" text))
+ (nonspace-end (or (save-match-data
+ (string-match-p "\\S-\\s-*\\'" text))
+ 0)))
+ (evil-range (+ line-start nonspace-start)
+ (+ line-start nonspace-end)
+ 'exclusive)))
+(define-key evil-inner-text-objects-map "l" 'evil-inner-line)
+
+;; icons
+(use-package nerd-icons)
+(use-package nerd-icons-dired
+ :hook
+ (dired-mode . nerd-icons-dired-mode))
+(use-package nerd-icons-completion
+ :after marginalia
+ :config
+ (nerd-icons-completion-mode)
+ (add-hook 'marginalia-mode-hook #'nerd-icons-completion-marginalia-setup))
+(use-package nerd-icons-corfu
+ :after corfu
+ :config
+ (add-to-list 'corfu-margin-formatters #'nerd-icons-corfu-formatter))
+
+;; == typst modes
+(use-package typst-ts-mode
+ :vc (:url "https://codeberg.org/meow_king/typst-ts-mode"
+ :rev :newest))
+
+(with-eval-after-load 'lsp-mode
+ (add-to-list 'lsp-language-id-configuration
+ '(typst-ts-mode . "typst"))
+ (lsp-register-client
+ (make-lsp-client :new-connection (lsp-stdio-connection "tinymist")
+ :activation-fn (lsp-activate-on "typst")
+ :server-id 'theme-check)))