better lsp and dart config
This commit is contained in:
		
							parent
							
								
									f10a624531
								
							
						
					
					
						commit
						845d100f2c
					
				
					 2 changed files with 79 additions and 22 deletions
				
			
		
							
								
								
									
										53
									
								
								README.org
									
										
									
									
									
								
							
							
						
						
									
										53
									
								
								README.org
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -15,6 +15,7 @@
 | 
			
		|||
  - [[#better-ui][Better UI]]
 | 
			
		||||
  - [[#completion][Completion]]
 | 
			
		||||
  - [[#yasnippet][YASnippet]]
 | 
			
		||||
  - [[#projectile][Projectile]]
 | 
			
		||||
  - [[#navigation][Navigation]]
 | 
			
		||||
  - [[#window-management][Window Management]]
 | 
			
		||||
  - [[#help][Help]]
 | 
			
		||||
| 
						 | 
				
			
			@ -352,6 +353,7 @@ This evil-collection package includes a lot of other evil based things.
 | 
			
		|||
    "of" '(:ignore t :which-key "elfeed")
 | 
			
		||||
    "h" '(:ignore t :which-key "help")
 | 
			
		||||
    "n" '(:ignore t :which-key "notes")
 | 
			
		||||
    "l" '(:ignore t :which-key "lsp")
 | 
			
		||||
    "sp" '(:ignore t :which-key "passwords")
 | 
			
		||||
    "bs" '(consult-buffer :which-key "buffer search")
 | 
			
		||||
    "bd" '(kill-this-buffer :which-key "kill buffer")
 | 
			
		||||
| 
						 | 
				
			
			@ -627,17 +629,21 @@ Marginalia makes for some great decoration to our minibuffer completion items. W
 | 
			
		|||
*** Company
 | 
			
		||||
#+begin_src emacs-lisp
 | 
			
		||||
(use-package company
 | 
			
		||||
  :defer 1
 | 
			
		||||
  :config
 | 
			
		||||
  (global-company-mode +1)
 | 
			
		||||
  (setq company-dabbrev-other-buffers t
 | 
			
		||||
        company-minimum-prefix-length 1)
 | 
			
		||||
  :custom
 | 
			
		||||
  (company-dabbrev-other-buffers t)
 | 
			
		||||
  (company-minimum-prefix-length 1)
 | 
			
		||||
  (company-idle-delay 0.2)
 | 
			
		||||
  :general
 | 
			
		||||
  (general-define-key
 | 
			
		||||
   :states 'normal
 | 
			
		||||
   :keymaps '(override company-search-map)
 | 
			
		||||
   "TAB" 'company-complete-selection)
 | 
			
		||||
  )
 | 
			
		||||
  (general-def '(normal insert) company-active-map
 | 
			
		||||
    "TAB" 'company-complete-selection
 | 
			
		||||
    "RET" 'company-complete-selection)
 | 
			
		||||
  (general-def '(normal insert) lsp-mode-map
 | 
			
		||||
    "TAB" 'company-indent-or-complete-common))
 | 
			
		||||
 | 
			
		||||
;; (use-package company-box
 | 
			
		||||
;;   :hook (company-mode . company-box-mode))
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
#+begin_src emacs-lisp
 | 
			
		||||
| 
						 | 
				
			
			@ -654,6 +660,12 @@ YASnippet is a templating system. It's powerful.
 | 
			
		|||
  (yas-global-mode 1))
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
** Projectile
 | 
			
		||||
I'm going to use projectile to keep my projects inline.
 | 
			
		||||
#+begin_src emacs-lisp
 | 
			
		||||
(use-package projectile)
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
** Navigation
 | 
			
		||||
*** Avy
 | 
			
		||||
Avy provides a lot of functions to search through the current buffer. Most of the time I use evil or consult functions to find what I'm looking for, but avy provides a lot of small movements that are more useful for visible movements.
 | 
			
		||||
| 
						 | 
				
			
			@ -763,11 +775,22 @@ Since I use the Awesome WM I thought it'd be good to have lua around. It's also
 | 
			
		|||
LSP is useful...
 | 
			
		||||
#+begin_src emacs-lisp
 | 
			
		||||
(use-package lsp-mode
 | 
			
		||||
  :commands (lsp lsp-deferred)
 | 
			
		||||
  :init
 | 
			
		||||
  (setq lsp-keymap-prefix "C-c l")
 | 
			
		||||
  :config
 | 
			
		||||
  (setq lsp-lens-enable t
 | 
			
		||||
        lsp-signature-auto-activate nil))
 | 
			
		||||
        lsp-signature-auto-activate nil
 | 
			
		||||
        read-process-output-max (* 1024 1024))
 | 
			
		||||
  (lsp-enable-which-key-integration t))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-ui)
 | 
			
		||||
(use-package lsp-ui
 | 
			
		||||
  :hook (lsp-mode . lsp-ui-mode)
 | 
			
		||||
  :custom
 | 
			
		||||
  (lsp-ui-doc-position 'bottom))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-treemacs
 | 
			
		||||
  :after lsp)
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
*** Fennel
 | 
			
		||||
| 
						 | 
				
			
			@ -874,9 +897,17 @@ I may get into flutter development over using felgo..... but i'm not happy about
 | 
			
		|||
#+begin_src emacs-lisp
 | 
			
		||||
(use-package dart-mode
 | 
			
		||||
  :mode ("\\.dart\\'" . dart-mode)
 | 
			
		||||
  :config (add-hook 'dart-mode 'lsp))
 | 
			
		||||
  :hook (dart-mode . lsp-deferred)
 | 
			
		||||
  :general
 | 
			
		||||
  (general-def 'normal dart-mode-map
 | 
			
		||||
    "C-c r" 'lsp-dart-dap-flutter-hot-reload
 | 
			
		||||
    "C-c R" 'lsp-dart-dap-flutter-hot-restart))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-dart)
 | 
			
		||||
(use-package flutter
 | 
			
		||||
  :after dart)
 | 
			
		||||
(use-package hover
 | 
			
		||||
  :after dart)
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
Let's also add the android-sdk tools to emacs' path.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										48
									
								
								init.el
									
										
									
									
									
								
							
							
						
						
									
										48
									
								
								init.el
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -217,6 +217,7 @@
 | 
			
		|||
    "of" '(:ignore t :which-key "elfeed")
 | 
			
		||||
    "h" '(:ignore t :which-key "help")
 | 
			
		||||
    "n" '(:ignore t :which-key "notes")
 | 
			
		||||
    "l" '(:ignore t :which-key "lsp")
 | 
			
		||||
    "sp" '(:ignore t :which-key "passwords")
 | 
			
		||||
    "bs" '(consult-buffer :which-key "buffer search")
 | 
			
		||||
    "bd" '(kill-this-buffer :which-key "kill buffer")
 | 
			
		||||
| 
						 | 
				
			
			@ -361,17 +362,21 @@ vertically."
 | 
			
		|||
  :after selectrum)
 | 
			
		||||
 | 
			
		||||
(use-package company
 | 
			
		||||
  :defer 1
 | 
			
		||||
  :config
 | 
			
		||||
  (global-company-mode +1)
 | 
			
		||||
  (setq company-dabbrev-other-buffers t
 | 
			
		||||
        company-minimum-prefix-length 1)
 | 
			
		||||
  :custom
 | 
			
		||||
  (company-dabbrev-other-buffers t)
 | 
			
		||||
  (company-minimum-prefix-length 1)
 | 
			
		||||
  (company-idle-delay 0.2)
 | 
			
		||||
  :general
 | 
			
		||||
  (general-define-key
 | 
			
		||||
   :states 'normal
 | 
			
		||||
   :keymaps '(override company-search-map)
 | 
			
		||||
   "TAB" 'company-complete-selection)
 | 
			
		||||
  )
 | 
			
		||||
  (general-def '(normal insert) company-active-map
 | 
			
		||||
    "TAB" 'company-complete-selection
 | 
			
		||||
    "RET" 'company-complete-selection)
 | 
			
		||||
  (general-def '(normal insert) lsp-mode-map
 | 
			
		||||
    "TAB" 'company-indent-or-complete-common))
 | 
			
		||||
 | 
			
		||||
;; (use-package company-box
 | 
			
		||||
;;   :hook (company-mode . company-box-mode))
 | 
			
		||||
 | 
			
		||||
(use-package company-dict
 | 
			
		||||
  :after company)
 | 
			
		||||
| 
						 | 
				
			
			@ -381,6 +386,8 @@ vertically."
 | 
			
		|||
  (setq yas-snippet-dirs (list (expand-file-name "yasnippets/" user-emacs-directory)))
 | 
			
		||||
  (yas-global-mode 1))
 | 
			
		||||
 | 
			
		||||
(use-package projectile)
 | 
			
		||||
 | 
			
		||||
(use-package avy
 | 
			
		||||
  :after evil)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -454,11 +461,22 @@ vertically."
 | 
			
		|||
  :mode ("\\.lua\\'" . lua-mode))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-mode
 | 
			
		||||
  :commands (lsp lsp-deferred)
 | 
			
		||||
  :init
 | 
			
		||||
  (setq lsp-keymap-prefix "C-c l")
 | 
			
		||||
  :config
 | 
			
		||||
  (setq lsp-lens-enable t
 | 
			
		||||
        lsp-signature-auto-activate nil))
 | 
			
		||||
        lsp-signature-auto-activate nil
 | 
			
		||||
        read-process-output-max (* 1024 1024))
 | 
			
		||||
  (lsp-enable-which-key-integration t))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-ui)
 | 
			
		||||
(use-package lsp-ui
 | 
			
		||||
  :hook (lsp-mode . lsp-ui-mode)
 | 
			
		||||
  :custom
 | 
			
		||||
  (lsp-ui-doc-position 'bottom))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-treemacs
 | 
			
		||||
  :after lsp)
 | 
			
		||||
 | 
			
		||||
(use-package fennel-mode
 | 
			
		||||
  :mode ("\\.fnl\\'" . fennel-mode))
 | 
			
		||||
| 
						 | 
				
			
			@ -516,9 +534,17 @@ vertically."
 | 
			
		|||
 | 
			
		||||
(use-package dart-mode
 | 
			
		||||
  :mode ("\\.dart\\'" . dart-mode)
 | 
			
		||||
  :config (add-hook 'dart-mode 'lsp))
 | 
			
		||||
  :hook (dart-mode . lsp-deferred)
 | 
			
		||||
  :general
 | 
			
		||||
  (general-def 'normal dart-mode-map
 | 
			
		||||
    "C-c r" 'lsp-dart-dap-flutter-hot-reload
 | 
			
		||||
    "C-c R" 'lsp-dart-dap-flutter-hot-restart))
 | 
			
		||||
 | 
			
		||||
(use-package lsp-dart)
 | 
			
		||||
(use-package flutter
 | 
			
		||||
  :after dart)
 | 
			
		||||
(use-package hover
 | 
			
		||||
  :after dart)
 | 
			
		||||
 | 
			
		||||
(add-to-list 'exec-path "/opt/android-sdk/cmdline-tools/latest/bin")
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue