Adding flutter and dart capabilities

This commit is contained in:
Chris Cochrun 2021-07-09 06:34:36 -05:00
parent 210b0b67c3
commit af3334ebd7
2 changed files with 87 additions and 17 deletions

View file

@ -498,6 +498,8 @@ vertically."
(window-resize-pixelwise t)) (window-resize-pixelwise t))
(window-resize (window-resize
window (- dheight wheight) nil nil 'pixelwise))) window (- dheight wheight) nil nil 'pixelwise)))
:general :general
('selectrum-minibuffer-map ('selectrum-minibuffer-map
"C-j" 'selectrum-next-candidate "C-j" 'selectrum-next-candidate
@ -595,11 +597,6 @@ Consult has a lot of nice functions like Ivy's Counsel functions (enhanced searc
"so" 'consult-org-heading)) "so" 'consult-org-heading))
#+end_src #+end_src
#+begin_src emacs-lisp :tangle no
(map! :leader "s s" 'consult-line
:leader "f r" 'consult-recent-file)
#+end_src
*** MARGINALIA *** MARGINALIA
Marginalia makes for some great decoration to our minibuffer completion items. Works great with Selectrum which does not have this out of the box. Marginalia makes for some great decoration to our minibuffer completion items. Works great with Selectrum which does not have this out of the box.
@ -633,7 +630,14 @@ Marginalia makes for some great decoration to our minibuffer completion items. W
:defer 1 :defer 1
:config :config
(global-company-mode +1) (global-company-mode +1)
(setq company-dabbrev-other-buffers t)) (setq company-dabbrev-other-buffers t
company-minimum-prefix-length 1)
:general
(general-define-key
:states 'normal
:keymaps '(override company-search-map)
"TAB" 'company-complete-selection)
)
#+end_src #+end_src
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -646,7 +650,7 @@ YASnippet is a templating system. It's powerful.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package yasnippet (use-package yasnippet
:config :config
(setq yas-snippet-dirs '("~/.dotemacs/yasnippets")) (setq yas-snippet-dirs (list (expand-file-name "yasnippets/" user-emacs-directory)))
(yas-global-mode 1)) (yas-global-mode 1))
#+end_src #+end_src
@ -686,8 +690,8 @@ Ace link provides an avy like search for links. Upon using the keybindings prese
(setq display-buffer-alist (setq display-buffer-alist
'(("\\*e?shell\\*" '(("\\*e?shell\\*"
(display-buffer-in-side-window) (display-buffer-in-side-window)
(side . right) (side . bottom)
(window-width . 0.4)) (window-height . 0.25))
("*helpful*" ("*helpful*"
(display-buffer-in-side-window) (display-buffer-in-side-window)
(side . right) (side . right)
@ -755,6 +759,17 @@ Since I use the Awesome WM I thought it'd be good to have lua around. It's also
:mode ("\\.lua\\'" . lua-mode)) :mode ("\\.lua\\'" . lua-mode))
#+end_src #+end_src
*** LSP
LSP is useful...
#+begin_src emacs-lisp
(use-package lsp-mode
:config
(setq lsp-lens-enable t
lsp-signature-auto-activate nil))
(use-package lsp-ui)
#+end_src
*** Fennel *** Fennel
I use fennel to build my awesomewm config. So, we'll need that downloaded. I use fennel to build my awesomewm config. So, we'll need that downloaded.
#+begin_src emacs-lisp #+begin_src emacs-lisp
@ -854,6 +869,21 @@ Let's also add org-babel support for this to create documentation easier.
:after org) :after org)
#+end_src #+end_src
*** Dart/Flutter
I may get into flutter development over using felgo..... but i'm not happy about it....
#+begin_src emacs-lisp
(use-package dart-mode
:mode ("\\.dart\\'" . dart-mode)
:config (add-hook 'dart-mode 'lsp))
(use-package lsp-dart)
#+end_src
Let's also add the android-sdk tools to emacs' path.
#+begin_src emacs-lisp
(add-to-list 'exec-path "/opt/android-sdk/cmdline-tools/latest/bin")
#+end_src
** File Management ** File Management
*** Dired *** Dired
I'm making a small function in here to open files in the appropriate program using XDG defaults. This is like opening odt files in Libreoffice or mp4 files in MPV. I'm making a small function in here to open files in the appropriate program using XDG defaults. This is like opening odt files in Libreoffice or mp4 files in MPV.
@ -1720,6 +1750,14 @@ Let's add our own eshell prompt. and set the password cache to a significantly h
(setq eshell-banner-message "") (setq eshell-banner-message "")
(setq eshell-path-env "/usr/local/bin:/usr/bin:/opt/android-sdk/cmdline-tools/latest/bin")
;; this makes it so flutter works properly
(setenv "ANDROID_SDK_ROOT" "/opt/android-sdk")
(setenv "CHROME_EXECUTABLE" "/usr/bin/qutebrowser")
(setenv "JAVA_HOME" "/usr/lib/jvm/default")
(setenv "PATH" "/usr/local/bin:/usr/bin:/opt/android-sdk/cmdline-tools/latest/bin")
(add-hook 'eshell-mode-hook '(hscroll-margin 0)) (add-hook 'eshell-mode-hook '(hscroll-margin 0))
(add-hook 'eshell-mode-hook '(display-line-numbers-mode -1)) (add-hook 'eshell-mode-hook '(display-line-numbers-mode -1))
@ -1736,8 +1774,8 @@ Let's add our own eshell prompt. and set the password cache to a significantly h
("gg" "magit-status") ("gg" "magit-status")
("clear" "clear-scrollback") ("clear" "clear-scrollback")
("!c" "eshell-previous-input 2") ("!c" "eshell-previous-input 2")
("yay" "paru") ("yay" "paru $1")
("yeet" "paru -Rns"))) ("yeet" "paru -Rns $1")))
:general :general
(chris/leader-keys (chris/leader-keys

44
init.el
View file

@ -306,6 +306,8 @@ vertically."
(window-resize-pixelwise t)) (window-resize-pixelwise t))
(window-resize (window-resize
window (- dheight wheight) nil nil 'pixelwise))) window (- dheight wheight) nil nil 'pixelwise)))
:general :general
('selectrum-minibuffer-map ('selectrum-minibuffer-map
"C-j" 'selectrum-next-candidate "C-j" 'selectrum-next-candidate
@ -362,14 +364,21 @@ vertically."
:defer 1 :defer 1
:config :config
(global-company-mode +1) (global-company-mode +1)
(setq company-dabbrev-other-buffers t)) (setq company-dabbrev-other-buffers t
company-minimum-prefix-length 1)
:general
(general-define-key
:states 'normal
:keymaps '(override company-search-map)
"TAB" 'company-complete-selection)
)
(use-package company-dict (use-package company-dict
:after company) :after company)
(use-package yasnippet (use-package yasnippet
:config :config
(setq yas-snippet-dirs '("~/.dotemacs/yasnippets")) (setq yas-snippet-dirs (list (expand-file-name "yasnippets/" user-emacs-directory)))
(yas-global-mode 1)) (yas-global-mode 1))
(use-package avy (use-package avy
@ -394,8 +403,8 @@ vertically."
(setq display-buffer-alist (setq display-buffer-alist
'(("\\*e?shell\\*" '(("\\*e?shell\\*"
(display-buffer-in-side-window) (display-buffer-in-side-window)
(side . right) (side . bottom)
(window-width . 0.4)) (window-height . 0.25))
("*helpful*" ("*helpful*"
(display-buffer-in-side-window) (display-buffer-in-side-window)
(side . right) (side . right)
@ -444,6 +453,13 @@ vertically."
(use-package lua-mode (use-package lua-mode
:mode ("\\.lua\\'" . lua-mode)) :mode ("\\.lua\\'" . lua-mode))
(use-package lsp-mode
:config
(setq lsp-lens-enable t
lsp-signature-auto-activate nil))
(use-package lsp-ui)
(use-package fennel-mode (use-package fennel-mode
:mode ("\\.fnl\\'" . fennel-mode)) :mode ("\\.fnl\\'" . fennel-mode))
@ -498,6 +514,14 @@ vertically."
(use-package ob-restclient (use-package ob-restclient
:after org) :after org)
(use-package dart-mode
:mode ("\\.dart\\'" . dart-mode)
:config (add-hook 'dart-mode 'lsp))
(use-package lsp-dart)
(add-to-list 'exec-path "/opt/android-sdk/cmdline-tools/latest/bin")
(use-package dired (use-package dired
:ensure nil :ensure nil
:straight nil :straight nil
@ -1272,6 +1296,14 @@ If on a:
(setq eshell-banner-message "") (setq eshell-banner-message "")
(setq eshell-path-env "/usr/local/bin:/usr/bin:/opt/android-sdk/cmdline-tools/latest/bin")
;; this makes it so flutter works properly
(setenv "ANDROID_SDK_ROOT" "/opt/android-sdk")
(setenv "CHROME_EXECUTABLE" "/usr/bin/qutebrowser")
(setenv "JAVA_HOME" "/usr/lib/jvm/default")
(setenv "PATH" "/usr/local/bin:/usr/bin:/opt/android-sdk/cmdline-tools/latest/bin")
(add-hook 'eshell-mode-hook '(hscroll-margin 0)) (add-hook 'eshell-mode-hook '(hscroll-margin 0))
(add-hook 'eshell-mode-hook '(display-line-numbers-mode -1)) (add-hook 'eshell-mode-hook '(display-line-numbers-mode -1))
@ -1288,8 +1320,8 @@ If on a:
("gg" "magit-status") ("gg" "magit-status")
("clear" "clear-scrollback") ("clear" "clear-scrollback")
("!c" "eshell-previous-input 2") ("!c" "eshell-previous-input 2")
("yay" "paru") ("yay" "paru $1")
("yeet" "paru -Rns"))) ("yeet" "paru -Rns $1")))
:general :general
(chris/leader-keys (chris/leader-keys