many updates...
This commit is contained in:
parent
3a743c894f
commit
41a17231b4
|
|
@ -0,0 +1,2 @@
|
||||||
|
((nil (eglot-workspace-configuration . ((gopls . ((staticcheck . t)
|
||||||
|
(matcher . "CaseSensitive")))))))
|
||||||
|
|
@ -22,6 +22,7 @@
|
||||||
(require 'module-apitest)
|
(require 'module-apitest)
|
||||||
(require 'module-qt)
|
(require 'module-qt)
|
||||||
(require 'module-eglot)
|
(require 'module-eglot)
|
||||||
|
;; (require 'module-lsp)
|
||||||
|
|
||||||
(provide 'feature-dev)
|
(provide 'feature-dev)
|
||||||
;;; feature-dev.el ends here.
|
;;; feature-dev.el ends here.
|
||||||
|
|
|
||||||
|
|
@ -75,19 +75,13 @@
|
||||||
|
|
||||||
|
|
||||||
(defun my/search-denote-notes ()
|
(defun my/search-denote-notes ()
|
||||||
"Use consult-ripgrep to search only the Denote metadata index file."
|
"Use consult-ripgrep to search Denote notes in denote-directory."
|
||||||
(interactive)
|
(interactive)
|
||||||
(let* ((index-file my/denote-metadata-index-file)
|
(let ((consult-ripgrep-args
|
||||||
(default-directory (file-name-directory index-file))
|
"rg --null --ignore-case --type org --line-buffered --color=never --max-columns=500 --no-heading --line-number"))
|
||||||
(file-name (file-name-nondirectory index-file))
|
(if (file-directory-p denote-directory)
|
||||||
(consult-ripgrep-args
|
(consult-ripgrep denote-directory)
|
||||||
(concat "rg --null --ignore-case --type org --line-buffered --color=never "
|
(message "Denote directory not found: %s" denote-directory))))
|
||||||
"--max-columns=500 --no-heading --line-number "
|
|
||||||
"--max-depth 0 "
|
|
||||||
(shell-quote-argument file-name))))
|
|
||||||
(if (file-exists-p index-file)
|
|
||||||
(consult-ripgrep default-directory)
|
|
||||||
(message "Metadata index file not found: %s" index-file))))
|
|
||||||
|
|
||||||
(global-set-key (kbd "C-x n /") #'my/search-denote-notes))
|
(global-set-key (kbd "C-x n /") #'my/search-denote-notes))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,26 @@
|
||||||
|
|
||||||
(require 'module-pkg)
|
(require 'module-pkg)
|
||||||
(pkg/require 'eglot)
|
(pkg/require 'eglot)
|
||||||
|
(pkg/require 'go-mode)
|
||||||
|
|
||||||
(add-hook 'go-mode-hook 'eglot-ensure)
|
(add-hook 'go-mode-hook 'eglot-ensure)
|
||||||
(add-hook 'c-mode-hook 'eglot-ensure)
|
(add-hook 'c-mode-hook 'eglot-ensure)
|
||||||
|
|
||||||
|
(defun eglot-format-buffer-before-save ()
|
||||||
|
(add-hook 'before-save-hook #'eglot-format-buffer -10 t))
|
||||||
|
(add-hook 'go-mode-hook #'eglot-format-buffer-before-save)
|
||||||
|
|
||||||
|
(setq-default eglot-workspace-configuration
|
||||||
|
'((:gopls .
|
||||||
|
((staticcheck . t)
|
||||||
|
(matcher . "CaseSensitive")))))
|
||||||
|
|
||||||
|
(defun go-mode-setup-organize-imports ()
|
||||||
|
(add-hook 'before-save-hook
|
||||||
|
(lambda ()
|
||||||
|
(call-interactively 'eglot-code-action-organize-imports))
|
||||||
|
nil t))
|
||||||
|
(add-hook 'go-mode-hook #'go-mode-setup-organize-imports)
|
||||||
|
|
||||||
(provide 'module-eglot)
|
(provide 'module-eglot)
|
||||||
;;; module-eglot.el ends here
|
;;; module-eglot.el ends here
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,15 @@
|
||||||
|
|
||||||
(pkg/require-defer 'go-mode)
|
(pkg/require-defer 'go-mode)
|
||||||
|
|
||||||
|
(defun project-find-go-module (dir)
|
||||||
|
(when-let ((root (locate-dominating-file dir "go.mod")))
|
||||||
|
(cons 'go-module root)))
|
||||||
|
|
||||||
|
(cl-defmethod project-root ((project (head go-module)))
|
||||||
|
(cdr project))
|
||||||
|
|
||||||
|
(add-hook 'project-find-functions #'project-find-go-module)
|
||||||
|
|
||||||
(with-eval-after-load 'go-mode
|
(with-eval-after-load 'go-mode
|
||||||
(add-to-list 'auto-mode-alist '("\\.go$" . go-mode))
|
(add-to-list 'auto-mode-alist '("\\.go$" . go-mode))
|
||||||
(add-hook 'before-save-hook #'gofmt-before-save))
|
(add-hook 'before-save-hook #'gofmt-before-save))
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,94 @@
|
||||||
|
;;; module-lsp.el --- LSP configuration module -*- lexical-binding: t -*-
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
;; This module sets up lsp-mode with specific configurations for Please build system
|
||||||
|
|
||||||
|
;;; Code:
|
||||||
|
|
||||||
|
(require 'lsp-mode)
|
||||||
|
(require 'lsp-ui)
|
||||||
|
(require 'which-key)
|
||||||
|
|
||||||
|
;; LSP Mode core settings
|
||||||
|
(setq lsp-keymap-prefix "C-c l")
|
||||||
|
(setq lsp-idle-delay 0.500)
|
||||||
|
(setq lsp-log-io nil)
|
||||||
|
(setq lsp-completion-provider :capf)
|
||||||
|
(setq lsp-prefer-flymake nil)
|
||||||
|
|
||||||
|
;; Please build system specific configurations
|
||||||
|
(setq lsp-file-watch-ignored-directories
|
||||||
|
'("[/\\\\]\\.git$"
|
||||||
|
"[/\\\\]\\.hg$"
|
||||||
|
"[/\\\\]\\.bzr$"
|
||||||
|
"[/\\\\]_darcs$"
|
||||||
|
"[/\\\\]\\.svn$"
|
||||||
|
"[/\\\\]_FOSSIL_$"
|
||||||
|
"[/\\\\]\\.idea$"
|
||||||
|
"[/\\\\]\\.ensime_cache$"
|
||||||
|
"[/\\\\]\\.eunit$"
|
||||||
|
"[/\\\\]node_modules$"
|
||||||
|
"[/\\\\]\\.fslckout$"
|
||||||
|
"[/\\\\]\\.tox$"
|
||||||
|
"[/\\\\]\\.stack-work$"
|
||||||
|
"[/\\\\]\\.bloop$"
|
||||||
|
"[/\\\\]\\.metals$"
|
||||||
|
"[/\\\\]target$"
|
||||||
|
"[/\\\\]\\.ccls-cache$"
|
||||||
|
"[/\\\\]\\.deps$"
|
||||||
|
"[/\\\\]build-aux$"
|
||||||
|
"[/\\\\]autom4te.cache$"
|
||||||
|
"[/\\\\]\\.reference$"
|
||||||
|
"[/\\\\]plz-out$")) ;; Add plz-out to ignored directories
|
||||||
|
|
||||||
|
;; Increase watch threshold for large Please projects
|
||||||
|
(setq lsp-file-watch-threshold 10000)
|
||||||
|
|
||||||
|
;; LSP UI configurations
|
||||||
|
(setq lsp-ui-doc-enable t)
|
||||||
|
(setq lsp-ui-doc-show-with-cursor t)
|
||||||
|
(setq lsp-ui-doc-position 'at-point)
|
||||||
|
(setq lsp-ui-doc-delay 0.5)
|
||||||
|
(setq lsp-ui-sideline-enable t)
|
||||||
|
(setq lsp-ui-sideline-show-diagnostics t)
|
||||||
|
(setq lsp-ui-sideline-show-hover t)
|
||||||
|
(setq lsp-ui-sideline-show-code-actions t)
|
||||||
|
|
||||||
|
;; Performance optimizations for large projects
|
||||||
|
(setq gc-cons-threshold 100000000)
|
||||||
|
(setq read-process-output-max (* 3 1024 1024)) ;; Increased for larger projects
|
||||||
|
(setq lsp-response-timeout 20) ;; Increased timeout
|
||||||
|
(setq lsp-idle-delay 0.500)
|
||||||
|
|
||||||
|
;; Decrease the amount of data lsp has to process
|
||||||
|
(setq lsp-enable-file-watchers t)
|
||||||
|
(setq lsp-enable-folding nil)
|
||||||
|
(setq lsp-enable-text-document-color nil)
|
||||||
|
(setq lsp-enable-on-type-formatting nil)
|
||||||
|
(setq lsp-enable-links nil)
|
||||||
|
|
||||||
|
;; Which-key integration
|
||||||
|
(with-eval-after-load 'lsp-mode
|
||||||
|
(add-hook 'lsp-mode-hook #'lsp-enable-which-key-integration))
|
||||||
|
|
||||||
|
;; Enable LSP for specific modes
|
||||||
|
(add-hook 'python-mode-hook #'lsp-deferred)
|
||||||
|
(add-hook 'c-mode-hook #'lsp-deferred)
|
||||||
|
(add-hook 'c++-mode-hook #'lsp-deferred)
|
||||||
|
(add-hook 'rust-mode-hook #'lsp-deferred)
|
||||||
|
(add-hook 'go-mode-hook #'lsp-deferred)
|
||||||
|
(add-hook 'js-mode-hook #'lsp-deferred)
|
||||||
|
(add-hook 'typescript-mode-hook #'lsp-deferred)
|
||||||
|
|
||||||
|
;; Format on save (optional)
|
||||||
|
(add-hook 'before-save-hook #'lsp-format-buffer)
|
||||||
|
|
||||||
|
;; Keybindings
|
||||||
|
(define-key lsp-mode-map (kbd "C-c l f") #'lsp-format-buffer)
|
||||||
|
(define-key lsp-mode-map (kbd "C-c l r") #'lsp-rename)
|
||||||
|
(define-key lsp-mode-map (kbd "C-c l a") #'lsp-execute-code-action)
|
||||||
|
(define-key lsp-mode-map (kbd "C-c l d") #'lsp-find-definition)
|
||||||
|
(define-key lsp-mode-map (kbd "C-c l R") #'lsp-find-references)
|
||||||
|
|
||||||
|
(provide 'module-lsp)
|
||||||
|
;;; module-lsp.el ends here
|
||||||
|
|
@ -20,6 +20,10 @@
|
||||||
(org-babel-do-load-languages
|
(org-babel-do-load-languages
|
||||||
'org-babel-load-languages '((plantuml . t))))
|
'org-babel-load-languages '((plantuml . t))))
|
||||||
|
|
||||||
|
(with-eval-after-load 'plantuml-mode
|
||||||
|
(add-to-list 'auto-mode-alist '("\\.puml$" . plantuml-mode)))
|
||||||
|
|
||||||
|
|
||||||
(provide 'module-plantuml)
|
(provide 'module-plantuml)
|
||||||
|
|
||||||
;;; module-plantuml.el ends here.
|
;;; module-plantuml.el ends here.
|
||||||
|
|
|
||||||
30
sway/config
30
sway/config
|
|
@ -62,6 +62,19 @@ input "2821:6246:Asus_Keyboard" {
|
||||||
xkb_variant "dvorak"
|
xkb_variant "dvorak"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input "1:1:AT_Translated_Set_2_keyboard" {
|
||||||
|
xkb_layout "us"
|
||||||
|
xkb_variant "dvorak"
|
||||||
|
}
|
||||||
|
|
||||||
|
input "1267:12811:ELAN0688:00_04F3:320B_Touchpad" {
|
||||||
|
natural_scroll enabled
|
||||||
|
dwt disabled
|
||||||
|
drag enabled
|
||||||
|
drag_lock enabled
|
||||||
|
tap enabled
|
||||||
|
}
|
||||||
|
|
||||||
### Input configuration
|
### Input configuration
|
||||||
#
|
#
|
||||||
# Example configuration:
|
# Example configuration:
|
||||||
|
|
@ -244,18 +257,6 @@ input "2821:6246:Asus_Keyboard" {
|
||||||
input "type:keyboard" xkb_options compose:ralt
|
input "type:keyboard" xkb_options compose:ralt
|
||||||
exec foot --server
|
exec foot --server
|
||||||
|
|
||||||
# setup displays
|
|
||||||
exec wlr-randr --output HDMI-A-1 --scale 1 --preferred
|
|
||||||
exec wlr-randr --output eDP-1 --scale 1.5
|
|
||||||
|
|
||||||
# start pipewire
|
|
||||||
exec pipewire &
|
|
||||||
exec wireplumber &
|
|
||||||
|
|
||||||
# pulseaudio compatibility, mainly for gaming
|
|
||||||
exec pipewire-pulse &
|
|
||||||
|
|
||||||
|
|
||||||
bindsym --locked XF86AudioRaiseVolume exec --no-startup-id amixer set Master 5%+
|
bindsym --locked XF86AudioRaiseVolume exec --no-startup-id amixer set Master 5%+
|
||||||
bindsym --locked XF86AudioLowerVolume exec --no-startup-id amixer set Master 5%-
|
bindsym --locked XF86AudioLowerVolume exec --no-startup-id amixer set Master 5%-
|
||||||
bindsym --locked XF86AudioMute exec --no-startup-id amixer set Master mute toggle
|
bindsym --locked XF86AudioMute exec --no-startup-id amixer set Master mute toggle
|
||||||
|
|
@ -272,9 +273,8 @@ exec vorta &
|
||||||
|
|
||||||
include /etc/sway/config.d/*
|
include /etc/sway/config.d/*
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
seat seat0 xcursor_theme Adwaita 48
|
seat seat0 xcursor_theme Adwaita 48
|
||||||
|
|
||||||
|
exec eval $(gnome-keyring-daemon --start)
|
||||||
|
exec export SSH_AUTH_SOCK
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue