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