FP dev tools

This commit is contained in:
Nathan McCarty 2022-10-31 12:08:17 -04:00
parent 34344a1354
commit 31639c1638
Signed by: thatonelutenist
GPG Key ID: D70DA3DD4D1E9F96
3 changed files with 55 additions and 39 deletions

View File

@ -741,6 +741,17 @@ Use rnix-lsp
:major-modes '(nix-mode)
:server-id 'nix)))
#+end_src
** Idris2
Configure idris2-mode, which we do manually since it's not yet in doom.
#+begin_src emacs-lisp
(use-package! idris2-mode)
#+end_src
** Haskell
Setup formatting
#+begin_src emacs-lisp
(after! lsp-haskell
(setq lsp-haskell-formatting-provider "brittany"))
#+end_src
* Composition
Modes for handling plain text and prose
** Markdown

79
init.el
View File

@ -15,63 +15,63 @@
;; directory (for easy access to its source code).
(doom! :completion
(company +childframe) ; the ultimate code completion backend
(company +childframe) ; the ultimate code completion backend
(ivy +fuzzy +precient +childframe +icons)
:ui
doom ; what makes DOOM look the way it does
doom-dashboard ; a nifty splash screen for Emacs
(emoji +unicode) ; 🙂
hl-todo ; highlight todo-words
indent-guides ; highlighted indent columns
modeline ; snazzy, Atom-inspired modeline, plus API
nav-flash ; blink cursor line after big motions
(popup +defaults) ; tame sudden yet inevitable temporary windows
(treemacs +lsp) ; a project drawer, like neotree but cooler
unicode ; extended unicode support for various languages
doom ; what makes DOOM look the way it does
doom-dashboard ; a nifty splash screen for Emacs
(emoji +unicode) ; 🙂
hl-todo ; highlight todo-words
indent-guides ; highlighted indent columns
modeline ; snazzy, Atom-inspired modeline, plus API
nav-flash ; blink cursor line after big motions
(popup +defaults) ; tame sudden yet inevitable temporary windows
(treemacs +lsp) ; a project drawer, like neotree but cooler
unicode ; extended unicode support for various languages
(vc-gutter +diff-hl +pretty)
window-select ; visually switch windows
workspaces ; tab emulation, persistence & separate workspaces
zen ; distraction-free coding or writing
window-select ; visually switch windows
workspaces ; tab emulation, persistence & separate workspaces
zen ; distraction-free coding or writing
:editor
file-templates ; auto-snippets for empty files
fold ; (nigh) universal code folding
(format +onsave) ; automated prettiness
file-templates ; auto-snippets for empty files
fold ; (nigh) universal code folding
(format +onsave) ; automated prettiness
lispy
rotate-text ; cycle region at point between text candidates
snippets ; my elves. They type so I don't have to
word-wrap ; soft wrapping with language-aware indent
rotate-text ; cycle region at point between text candidates
snippets ; my elves. They type so I don't have to
word-wrap ; soft wrapping with language-aware indent
:emacs
(dired +icons) ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent
(ibuffer +icons) ; interactive buffer management
undo ; persistent, smarter undo for your inevitable mistakes
vc ; version-control and Emacs, sitting in a tree
(dired +icons) ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent
(ibuffer +icons) ; interactive buffer management
undo ; persistent, smarter undo for your inevitable mistakes
vc ; version-control and Emacs, sitting in a tree
:term
vterm ; the best terminal emulation in Emacs
vterm ; the best terminal emulation in Emacs
:checkers
(syntax +childframe) ; tasing you for every semicolon you forget
(spell +aspell +everywhere) ; tasing you for misspelling mispelling
(syntax +childframe) ; tasing you for every semicolon you forget
(spell +aspell +everywhere) ; tasing you for misspelling mispelling
:tools
(debugger +lsp) ; stepping through code, to help you add bugs
(debugger +lsp) ; stepping through code, to help you add bugs
direnv
docker
editorconfig ; let someone else argue about tabs vs spaces
(eval +overlay) ; run code, run (also, repls)
lookup ; navigate your code and its documentation
lsp ; M-x vscode
(magit +forge) ; a git porcelain for Emacs
pdf ; pdf enhancements
rgb ; creating color strings
editorconfig ; let someone else argue about tabs vs spaces
(eval +overlay) ; run code, run (also, repls)
lookup ; navigate your code and its documentation
lsp ; M-x vscode
(magit +forge) ; a git porcelain for Emacs
pdf ; pdf enhancements
rgb ; creating color strings
tree-sitter
:os
(:if IS-MAC macos) ; improve compatibility with macOS
(:if IS-MAC macos) ; improve compatibility with macOS
(tty +osc)
:lang
@ -82,17 +82,18 @@
markdown
nix
(org +pandoc +present +roam2 +pomodoro)
rest ; Emacs as a REST client
rest ; Emacs as a REST client
(rust +lsp)
(sh +fish)
yaml
(scheme +chez)
(haskell +lsp)
:email
(mu4e +org)
:app
(rss +org) ; emacs as an RSS reader
(rss +org) ; emacs as an RSS reader
:config
literate

View File

@ -68,3 +68,7 @@
(package! websocket)
(package! org-roam-ui)
(package! edit-server)
(package! idris2-mode :recipe
(:host github
:repo "idris-community/idris2-mode"
:branch "main"))