summaryrefslogtreecommitdiff
path: root/emacs/project-stuff.el
diff options
context:
space:
mode:
authortmu <t.man.atl.2012@gmail.com>2023-08-02 12:07:55 -0700
committertmu <t.man.atl.2012@gmail.com>2023-08-02 12:07:55 -0700
commit05d72eabc9e1f0daefe26be6f7c54f83f58d5f15 (patch)
tree229cbfa49468c011954242ca11b475b9d04cb362 /emacs/project-stuff.el
parentc2235d1850722932b7fb9dcf5907bbcc040bb29c (diff)
update. mostly emacs
Diffstat (limited to 'emacs/project-stuff.el')
-rw-r--r--emacs/project-stuff.el81
1 files changed, 58 insertions, 23 deletions
diff --git a/emacs/project-stuff.el b/emacs/project-stuff.el
index 03142b2..29b515e 100644
--- a/emacs/project-stuff.el
+++ b/emacs/project-stuff.el
@@ -7,6 +7,10 @@
(add-hook 'xref-backend-functions 'gxref-xref-backend)
+;; don't forget that eglot exists
+;; (global-company-mode 1)
+;; (setq company-idle-delay 0.1)
+
;; (require 'semantic/sb)
;; (setq semantic-default-submodes
;; '(global-semantic-idle-scheduler-mode
@@ -17,11 +21,9 @@
;; global-semantic-mru-bookmark-mode
;; global-semantic-idle-local-symbol-highlight-mode)
;; semantic-idle-scheduler-work-idle-time 5)
-;; (semantic-mode 1)
+;; (semantic-mode 1
;; (global-ede-mode t)
-;; don't forget that eglot exists
-
;; better commenting stuff
(global-set-key (kbd "C-x C-;") 'comment-or-uncomment-region)
(global-set-key (kbd "C-x ;") 'comment-line)
@@ -29,6 +31,9 @@
(setq asm-comment-char ?#)
+;; nice eglot binds
+(global-set-key (kbd "C-c f") 'eglot-code-action-quickfix)
+(global-set-key (kbd "C-c C-f") 'eglot-code-actions)
;; deal white whitespace better
(setq whitespace-style
@@ -38,6 +43,8 @@
(whitespace-mode 1)
(display-fill-column-indicator-mode 1)))
+(global-hl-todo-mode 1)
+
(require 'sr-speedbar "~/.emacs.d/sr-speedbar.el" nil)
(defun speedbar-switch-and-setup ()
@@ -59,6 +66,8 @@
(global-unset-key (kbd "M-i"))
(global-set-key (kbd "M-i") 'speedbar-switch-and-setup)
+(global-set-key (kbd "M-Z") 'suspend-frame)
+
;; indent code when pasting, from
;; https://trey-jackson.blogspot.com/2008/03/emacs-tip-15-indent-yanked-code.html
@@ -93,6 +102,19 @@ BEG and END define the region."
(let ((transient-mark-mode nil))
(yank-advised-indent-function (region-beginning) (region-end)))))
+(defadvice evil-paste-before (after yank-indent activate)
+ "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)."
+ (if (and (not (ad-get-arg 0))
+ (member major-mode yank-indent-modes))
+ (let ((transient-mark-mode nil))
+ (yank-advised-indent-function (region-beginning) (region-end)))))
+
+(defadvice evil-paste-after (after yank-indent activate)
+ "If current mode is one of 'yank-indent-modes, indent yanked text (with prefix arg don't indent)."
+ (if (and (not (ad-get-arg 0))
+ (member major-mode yank-indent-modes))
+ (let ((transient-mark-mode nil))
+ (yank-advised-indent-function (region-beginning) (region-end)))))
;; make ibuffer play with projectile
@@ -110,6 +132,12 @@ BEG and END define the region."
;; code folding
+(add-to-list 'load-path "~/.emacs.d/")
+;; (require 'ts-foldV)
+
+(autoload 'hide-lines "hide-lines" "Hide lines based on a regexp" t)
+(global-set-key (kbd "C-c /") 'hide-lines)
+
;; region folding
(autoload 'fold-this "fold-this" "arbitrary folding" t)
(autoload 'fold-this-unfold-at-point "fold-this" "arbitrary folding" t)
@@ -168,13 +196,28 @@ BEG and END define the region."
(hs-minor-mode 1)
;; (flymake-mode 1)
(spell-fu-mode 0)
+ (superword-mode 1)
(add-hook 'before-save-hook (lambda () (clean-prog-file (current-buffer))))))
-(use-package flymake-diagnostic-at-point
- :after flymake
- :config
- (setq flymake-diagnostic-at-point-timer-delay 1)
- (add-hook 'flymake-mode-hook #'flymake-diagnostic-at-point-mode))
+;; (use-package flymake-diagnostic-at-point
+;; :after flymake
+;; :config
+;; (setq flymake-diagnostic-at-point-timer-delay 1)
+;; (add-hook 'flymake-mode-hook #'flymake-diagnostic-at-point-mode))
+
+(use-package sideline
+ :init
+ (setq sideline-backends-skip-current-line t ; don't display on current line
+ sideline-order-left 'down ; or 'up
+ sideline-order-right 'up ; or 'down
+ sideline-format-left "%s " ; format for left aligment
+ sideline-format-right " %s" ; format for right aligment
+ sideline-priority 100 ; overlays' priority
+ sideline-display-backend-name t) ; display the backend name
+ :hook ((flycheck-mode . sideline-mode) ; for `sideline-flycheck`
+ (flymake-mode . sideline-mode)) ; for `sideline-flymake`
+ :init
+ (setq sideline-backends-right '(sideline-flymake)))
(setq rustic-lsp-setup-p nil)
@@ -205,6 +248,7 @@ BEG and END define the region."
(require 'evil)
(evil-set-initial-state 'vterm-mode 'emacs)
+(evil-define-key 'normal global-map (kbd "SPC i") 'imenu)
(define-key eshell-mode-map (kbd "M-o") 'other-window)
(define-key eshell-mode-map (kbd "M-W") 'switch-buffer)
@@ -213,8 +257,6 @@ BEG and END define the region."
(recenter-top-bottom 0)))
;; compilation stuff
-(global-unset-key (kbd "M-m"))
-(global-unset-key (kbd "M-M"))
(global-set-key (kbd "M-m") (lambda ()
(interactive)
(if flymake-mode
@@ -224,20 +266,12 @@ BEG and END define the region."
(setq compilation-always-kill t
compilation-scroll-output t)
-;; better finding things
-(global-set-key (kbd "C-s") 'swiper)
+;; better searching
+(setq counsel-grep-base-command
+ "rg -i -M 120 --no-heading --line-number --color never '%s' %s")
+(global-set-key (kbd "C-s") 'counsel-grep-or-swiper)
(global-set-key (kbd "C-S-s") 'isearch-forward)
-(global-set-key (kbd "C-r") 'counsel-ag)
-
-;; perspective and friends
-;; (require 'perspective)
-;; (customize-set-variable 'persp-mode-prefix-key (kbd "M-p"))
-;; (global-set-key (kbd "C-x C-b") 'persp-ibuffer)
-;; (persp-mode)
-;; (global-set-key (kbd "C-x b") 'persp-switch-to-buffer*)
-;; (global-set-key (kbd "M-W") 'persp-switch-to-buffer*)
-;; (global-set-key (kbd "C-x k") 'persp-kill-buffer*)
-
+(define-key evil-normal-state-map (kbd "C-r") 'counsel-rg)
(require 'persp-mode)
(persp-mode 1)
@@ -267,6 +301,7 @@ BEG and END define the region."
persp-kill-foreign-buffer-behaviour 'dont-ask)
(global-set-key (kbd "M-p") 'persp-key-map)
(global-set-key (kbd "C-x b") #'persp-switch-to-buffer)
+ (global-set-key (kbd "C-x B") #'switch-to-buffer)
(global-set-key (kbd "C-x C-b") (lambda ()
(interactive)
(with-persp-buffer-list () (ibuffer))))