From 27cdfc304e629b6c7cb5f1b79e8fc3d95696e03e Mon Sep 17 00:00:00 2001 From: Claudio Maradonna Date: Thu, 16 Mar 2023 23:17:40 +0100 Subject: [PATCH] updated doom-emacs config --- emacs/doom-emacs/README.md | 8 ++++++-- emacs/doom-emacs/config.el | 15 ++++++++------ emacs/doom-emacs/init.el | 40 ++++++++++++++++++------------------ emacs/doom-emacs/packages.el | 3 +++ 4 files changed, 38 insertions(+), 28 deletions(-) diff --git a/emacs/doom-emacs/README.md b/emacs/doom-emacs/README.md index 02b9a66..38d7262 100644 --- a/emacs/doom-emacs/README.md +++ b/emacs/doom-emacs/README.md @@ -17,24 +17,28 @@ ### Languages * Common LISP +* Elixir * Emacs LISP * Go * Haskell * JSON -* Javascript +* Javascript + Coffee + NVM * Markdown * PHP * Python * Ruby * Rust * Sh +* SQL * Web (Generic module) * Yaml ### Other packages +* eshell +* ansible +* latex * LSP + Company -> autocompletion * iBuffer -> buffer management * docker -> docker commands and shortcuts -* magit * workspace -> project isolated spaces diff --git a/emacs/doom-emacs/config.el b/emacs/doom-emacs/config.el index 6df00c2..67ae043 100644 --- a/emacs/doom-emacs/config.el +++ b/emacs/doom-emacs/config.el @@ -22,12 +22,12 @@ ;; (setq doom-font (font-spec :family "monospace" :size 12 :weight 'semi-light) ;; doom-variable-pitch-font (font-spec :family "sans" :size 13)) -(setq doom-font (font-spec :family "Anonymice Nerd Font Mono" :size 21)) +(setq doom-font (font-spec :family "Anonymice Nerd Font Mono" :size 19)) ;; There are two ways to load a theme. Both assume the theme is installed and ;; available. You can either set `doom-theme' or manually load a theme with the ;; `load-theme' function. This is the default: -(setq doom-theme 'doom-gruvbox-light) +(setq doom-theme 'doom-dracula) ;; If you use `org' and don't want your org files in the default location below, ;; change `org-directory'. It must be set before org loads! @@ -55,9 +55,12 @@ ;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how ;; they are implemented. -(setq rubocop-autocorrect-on-save t) +(global-visual-line-mode t) + +(setq-default fill-column 120) + (setq projectile-enable-caching nil) -(add-hook! 'ruby-mode-hook 'robe-mode) -(eval-after-load 'company - '(push 'company-robe company-backends)) +(setq eww-search-prefix "https://www.yandex.com/search/?text=") +(setq-default TeX-engine 'xetex + TeX-PDF-mode t) diff --git a/emacs/doom-emacs/init.el b/emacs/doom-emacs/init.el index 6c23084..1795dd0 100644 --- a/emacs/doom-emacs/init.el +++ b/emacs/doom-emacs/init.el @@ -23,21 +23,21 @@ company ; the ultimate code completion backend ;;helm ; the *other* search engine for love and life ;;ido ; the other *other* search engine... - (ivy +fuzzy +prescient +childframe) ; a search engine for love and life - ;;vertico ; the search engine of the future + ;;(ivy +fuzzy +prescient +childframe) ; a search engine for love and life + (vertico +icons) ; the search engine of the future :ui ;;deft ; notational velocity for Emacs doom ; what makes DOOM look the way it does doom-dashboard ; a nifty splash screen for Emacs - doom-quit ; DOOM quit-message prompts when you quit Emacs + ;;doom-quit ; DOOM quit-message prompts when you quit Emacs ;;(emoji +unicode) ; 🙂 hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW ;;hydra ;;indent-guides ; highlighted indent columns - ligatures ; ligatures and symbols to make your code pretty again + ;;ligatures ; ligatures and symbols to make your code pretty again ;;minimap ; show a map of the code on the side - (modeline +light) ; snazzy, Atom-inspired modeline, plus API + ;;(modeline +light) ; snazzy, Atom-inspired modeline, plus API ;;nav-flash ; blink cursor line after big motions ;;neotree ; a project drawer, like NERDTree for vim ophints ; highlight the region an operation acts on @@ -45,8 +45,8 @@ ;;tabs ; a tab bar for Emacs ;;treemacs ; a project drawer, like neotree but cooler unicode ; extended unicode support for various languages - vc-gutter ; vcs diff in the fringe - vi-tilde-fringe ; fringe tildes to mark beyond EOB + ;;vc-gutter ; vcs diff in the fringe + ;;vi-tilde-fringe ; fringe tildes to mark beyond EOB ;;window-select ; visually switch windows workspaces ; tab emulation, persistence & separate workspaces ;;zen ; distraction-free coding or writing @@ -55,7 +55,7 @@ (evil +everywhere); come to the dark side, we have cookies file-templates ; auto-snippets for empty files fold ; (nigh) universal code folding - (format +onsave) ; automated prettiness + format ; automated prettiness ;;god ; run Emacs commands without modifier keys ;;lispy ; vim for lisp, for people who don't like vim ;;multiple-cursors ; editing in many places at once @@ -73,7 +73,7 @@ vc ; version-control and Emacs, sitting in a tree :term - ;;eshell ; the elisp shell that works everywhere + (eshell +company) ; the elisp shell that works everywhere ;;shell ; simple shell REPL for Emacs ;;term ; basic terminal emulator for Emacs ;;vterm ; the best terminal emulation in Emacs @@ -84,7 +84,7 @@ ;;grammar ; tasing grammar mistake every you make :tools - ;;ansible + ansible ;;debugger ; FIXME stepping through code, to help you add bugs ;;direnv (docker +lsp) @@ -94,14 +94,14 @@ ;;gist ; interacting with github gists lookup ; navigate your code and its documentation lsp ; M-x vscode - magit ; a git porcelain for Emacs + ;;magit ; a git porcelain for Emacs ;;make ; run make tasks from Emacs ;;pass ; password manager for nerds ;;pdf ; pdf enhancements ;;prodigy ; FIXME managing external services & code builders rgb ; creating color strings ;;taskrunner ; taskrunner for all your projects - ;;terraform ; infrastructure as code + terraform ; infrastructure as code ;;tmux ; an API for interacting with tmux ;;upload ; map local to remote projects via ssh/ftp @@ -121,7 +121,7 @@ ;;data ; config/data formats ;;(dart +flutter) ; paint ui and not much else ;;dhall - ;;elixir ; erlang done right + (elixir +lsp) ; erlang done right ;;elm ; care for a cup of TEA? emacs-lisp ; drown in parentheses ;;erlang ; an elegant language for a more civilized age @@ -135,12 +135,12 @@ (haskell +lsp) ; a language that's lazier than I am ;;hy ; readability of scheme w/ speed of python ;;idris ; a language you can depend on - json ; At least it ain't XML + (json +lsp) ; At least it ain't XML ;;(java +meghanada) ; the poster child for carpal tunnel syndrome - javascript ; all(hope(abandon(ye(who(enter(here)))))) + (javascript +lsp) ; all(hope(abandon(ye(who(enter(here)))))) ;;julia ; a better, faster MATLAB ;;kotlin ; a better, slicker Java(Script) - ;;latex ; writing papers in Emacs has never been so fun + (latex +latexml +lsp) ; writing papers in Emacs has never been so fun ;;lean ; for folks with too much to prove ;;ledger ; be audit you can be ;;lua ; one-based indices? one-based indices @@ -149,16 +149,16 @@ ;;nix ; I hereby declare "nix geht mehr!" ;;ocaml ; an objective camel ;;org ; organize your plain life in plain text - php ; perl's insecure younger brother + (php +lsp) ; perl's insecure younger brother ;;plantuml ; diagrams for confusing people more ;;purescript ; javascript, but functional - python ; beautiful is better than ugly + (python +lsp) ; beautiful is better than ugly ;;qt ; the 'cutest' gui framework ever ;;racket ; a DSL for DSLs ;;raku ; the artist formerly known as perl6 ;;rest ; Emacs as a REST client ;;rst ; ReST in peace - (ruby +lsp +rbenv +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} + (ruby +lsp +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} (rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() ;;scala ; java, but good ;;(scheme +guile) ; a fully conniving family of lisps @@ -168,7 +168,7 @@ ;;swift ; who asked for emoji variables? ;;terra ; Earth and Moon in alignment for performance. (web +lsp) ; the tubes - yaml ; JSON, but readable + (yaml +lsp) ; JSON, but readable ;;zig ; C, but simpler :email diff --git a/emacs/doom-emacs/packages.el b/emacs/doom-emacs/packages.el index 5bbe337..263f213 100644 --- a/emacs/doom-emacs/packages.el +++ b/emacs/doom-emacs/packages.el @@ -9,6 +9,9 @@ ;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror: ;(package! some-package) (package! slim-mode) +(package! coffee-mode) +(package! sqlformat) +(package! nvm) ;; To install a package directly from a remote git repo, you must specify a ;; `:recipe'. You'll find documentation on what `:recipe' accepts here: