Compare commits

..

8 Commits

Author SHA1 Message Date
Sravan Balaji
d71a35720f Remove org superstar configuration 2025-04-26 21:06:59 -04:00
Sravan Balaji
83c8819b26 Remove conflicting dap-mode / Dape keybindings 2025-04-26 14:44:42 -04:00
Sravan Balaji
dae83ddfea Enable direnv module 2025-01-04 20:33:32 -05:00
Sravan Balaji
8004d554b9 Enable editorconfig support 2025-01-02 09:37:23 -05:00
Sravan Balaji
0c8f9301c2 Disable tab to complete for company mode 2025-01-01 13:07:17 -05:00
Sravan Balaji
325b13ed8d Init.el Cleanup and Relative Line Mode
- Remove whitespace in init.el
- Use built-in lua and nix language support
  instead of external packages
- Enable relative line mode
2024-12-31 11:12:59 -05:00
Sravan Balaji
a3624d9371 Update external language support packages
- Remove pkgbuild (arch packages) mode
- Remove yuck (for EWW configs) mode
- Add portage modes
2024-12-31 10:20:46 -05:00
Sravan Balaji
424aeea906 Disable Format on Save, Enable Tree Sitter, add sxhkd mode
- Disable formatting on save
- Enable tree-sitter
- Add sxhkd mode package
2024-09-28 14:54:19 -04:00
4 changed files with 368 additions and 420 deletions

View File

@@ -8,6 +8,7 @@
- [[#git-ignore][Git Ignore]]
- [[#configuration-files][Configuration Files]]
- [[#initel][init.el]]
- [[#start-of-initel][Start of init.el]]
- [[#input][Input]]
- [[#completion][Completion]]
- [[#user-interface][User Interface]]
@@ -21,6 +22,7 @@
- [[#email][Email]]
- [[#apps][Apps]]
- [[#config][Config]]
- [[#end-of-initel][End of init.el]]
- [[#configel][config.el]]
- [[#user-configuration][User Configuration]]
- [[#user-interface-1][User Interface]]
@@ -65,10 +67,16 @@ This file controls which Doom modules are enabled and what order they load in. R
Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (for easy access to its source code).
*** Start of init.el
#+BEGIN_SRC emacs-lisp :tangle init.el
(doom!
#+END_SRC
*** Input
#+BEGIN_SRC emacs-lisp :tangle init.el
(doom! :input
:input
;;bidi ; (tfel ot) thgir etirw uoy gnipleh
;;chinese
;;japanese
@@ -79,7 +87,7 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
#+BEGIN_SRC emacs-lisp :tangle init.el
:completion
(company +tng) ; the ultimate code completion backend
company ; the ultimate code completion backend
;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
;;ivy ; a search engine for love and life
@@ -122,7 +130,7 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
(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
@@ -137,7 +145,7 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
#+BEGIN_SRC emacs-lisp :tangle init.el
:emacs
(dired +ranger +icons) ; making dired pretty [functional]
(dired +icons) ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent
(ibuffer +icons) ; interactive buffer management
(undo +tree) ; persistent, smarter undo for your inevitable mistakes
@@ -170,9 +178,9 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
;;ansible
;;biblio ; Writes a PhD for you (citation needed)
(debugger +lsp) ; FIXME stepping through code, to help you add bugs
;;direnv
direnv
(docker +lsp)
;;editorconfig ; let someone else argue about tabs vs spaces
editorconfig ; let someone else argue about tabs vs spaces
ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists
@@ -183,11 +191,11 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
;;pass ; password manager for nerds
pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders
rgb ; creating color strings
;;rgb ; creating color strings
;;taskrunner ; taskrunner for all your projects
;;terraform ; infrastructure as code
;;tmux ; an API for interacting with tmux
;;tree-sitter ; syntax and parsing, sitting in a tree...
tmux ; an API for interacting with tmux
tree-sitter ; syntax and parsing, sitting in a tree...
upload ; map local to remote projects via ssh/ftp
#+END_SRC
@@ -205,7 +213,7 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
:lang
;;agda ; types of types of types of types...
;;beancount ; mind the GAAP
(cc +lsp) ; C > C++ == 1
(cc +lsp +tree-sitter) ; C > C++ == 1
;;clojure ; java with a lisp
;;common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs
@@ -227,43 +235,43 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
;;gdscript ; the language you waited for
;;(go +lsp) ; the hipster dialect
;;(graphql +lsp) ; Give queries a REST
(haskell +lsp) ; a language that's lazier than I am
(haskell +lsp +tree-sitter) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on
(json +lsp) ; At least it ain't XML
(json +lsp +tree-sitter) ; At least it ain't XML
;;(java +lsp) ; the poster child for carpal tunnel syndrome
(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
(javascript +lsp +tree-sitter) ; all(hope(abandon(ye(who(enter(here))))))
;;(julia +lsp) ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script)
(latex +cdlatex +latexmk +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
(lua +lsp +tree-sitter) ; one-based indices? one-based indices
(markdown +grip) ; writing docs for people to ignore
;;nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!"
(nix +lsp +tree-sitter) ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel
(org +dragndrop +jupyter +pretty) ; organize your plain life in plain text
;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional
(python +lsp) ; beautiful is better than ugly
(python +lsp +tree-sitter) ; 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 +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
(rust +lsp +tree-sitter) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good
;;(scheme +guile) ; a fully conniving family of lisps
(sh +fish +lsp) ; she sells {ba,z,fi}sh shells on the C xor
(sh +fish +lsp +tree-sitter) ; she sells {ba,z,fi}sh shells on the C xor
;;sml
;;solidity ; do you need a blockchain? No.
;;swift ; who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance.
(web +lsp) ; the tubes
(yaml +lsp) ; JSON, but readable
(yaml +lsp +tree-sitter) ; JSON, but readable
;;zig ; C, but simpler
#+END_SRC
@@ -293,7 +301,13 @@ Alternatively, press =gd= (or =C-c c d=) on a module to browse its directory (fo
#+BEGIN_SRC emacs-lisp :tangle init.el
:config
;;literate
(default +bindings +smartparens))
(default +bindings +smartparens)
#+END_SRC
*** End of init.el
#+BEGIN_SRC emacs-lisp :tangle init.el
)
#+END_SRC
** config.el
@@ -386,7 +400,7 @@ There are two ways to load a theme. Both assume the theme is installed and avail
This determines the style of line numbers in effect. If set to =nil=, line numbers are disabled. For relative line numbers, set this to =relative=.
#+BEGIN_SRC emacs-lisp :tangle config.el
(setq display-line-numbers-type t)
(setq display-line-numbers-type 'relative)
#+END_SRC
**** Tab Width
@@ -745,14 +759,6 @@ If you use =org= and don't want your org files in the default location below, ch
(org-colors-dracula))
#+END_SRC
**** Superstar
#+BEGIN_SRC emacs-lisp :tangle config.el
(setq org-superstar-headline-bullets-list '("" "" "" "" "" "" ""))
(setq org-superstar-item-bullet-alist '((?+ . ?➤) (?- . ?✦))) ; changes +/- symbols in item lists
(add-hook! org-mode (org-superstar-mode))
#+END_SRC
*** Markdown
#+BEGIN_SRC emacs-lisp :tangle config.el
@@ -807,41 +813,6 @@ Revert buffers when the underlying file has changed
*** Debugging
**** Keybindings
#+BEGIN_SRC emacs-lisp :tangle config.el
(map! :map dap-mode-map
:leader
:prefix ("d" . "dap")
;; basics
:desc "dap next" "n" #'dap-next
:desc "dap step in" "i" #'dap-step-in
:desc "dap step out" "o" #'dap-step-out
:desc "dap continue" "c" #'dap-continue
:desc "dap hydra" "h" #'dap-hydra
:desc "dap debug restart" "r" #'dap-debug-restart
:desc "dap debug" "s" #'dap-debug
;; debug
:prefix ("dd" . "Debug")
:desc "dap debug recent" "r" #'dap-debug-recent
:desc "dap debug last" "l" #'dap-debug-last
;; eval
:prefix ("de" . "Eval")
:desc "eval" "e" #'dap-eval
:desc "eval region" "r" #'dap-eval-region
:desc "eval thing at point" "s" #'dap-eval-thing-at-point
:desc "add expression" "a" #'dap-ui-expressions-add
:desc "remove expression" "d" #'dap-ui-expressions-remove
:prefix ("db" . "Breakpoint")
:desc "dap breakpoint toggle" "b" #'dap-breakpoint-toggle
:desc "dap breakpoint condition" "c" #'dap-breakpoint-condition
:desc "dap breakpoint hit count" "h" #'dap-breakpoint-hit-condition
:desc "dap breakpoint log message" "l" #'dap-breakpoint-log-message)
#+END_SRC
**** Python
#+BEGIN_SRC emacs-lisp :tangle config.el
@@ -935,17 +906,24 @@ Doom's packages are pinned to a specific commit and updated from release to rele
*** Packages
**** Org Auto Tangle
#+BEGIN_SRC emacs-lisp :tangle packages.el
(package! org-auto-tangle)
#+END_SRC
**** Language Syntax Highlighting
#+BEGIN_SRC emacs-lisp :tangle packages.el
(package! git-modes)
(package! vimrc-mode)
(package! prettier-js)
(package! rainbow-mode)
(package! systemd)
(package! pkgbuild-mode)
(package! lua-mode)
(package! just-mode)
(package! nix-mode)
(package! yuck-mode)
(package! sxhkd-mode
:recipe (:host github :repo "xFA25E/sxhkd-mode"))
(package! ebuild-mode)
(package! portage-modes
:recipe (:host github :repo "OpenSauce04/portage-modes"))
#+END_SRC

View File

@@ -19,7 +19,7 @@
(doom/set-frame-opacity 95)
(setq display-line-numbers-type t)
(setq display-line-numbers-type 'relative)
(setq-default tab-width 4)
@@ -158,10 +158,6 @@
;; Load our desired org-colors-* theme on startup
(org-colors-dracula))
(setq org-superstar-headline-bullets-list '("" "" "" "" "" "" ""))
(setq org-superstar-item-bullet-alist '((?+ . ?➤) (?- . ?✦))) ; changes +/- symbols in item lists
(add-hook! org-mode (org-superstar-mode))
(custom-set-faces
'(markdown-header-face ((t (:inherit font-lock-function-name-face :weight bold :family "variable-pitch"))))
'(markdown-header-face-1 ((t (:inherit markdown-header-face :height 1.8))))
@@ -184,37 +180,6 @@
(lambda () (rainbow-mode 1)))
(global-rainbow-mode 1)
(map! :map dap-mode-map
:leader
:prefix ("d" . "dap")
;; basics
:desc "dap next" "n" #'dap-next
:desc "dap step in" "i" #'dap-step-in
:desc "dap step out" "o" #'dap-step-out
:desc "dap continue" "c" #'dap-continue
:desc "dap hydra" "h" #'dap-hydra
:desc "dap debug restart" "r" #'dap-debug-restart
:desc "dap debug" "s" #'dap-debug
;; debug
:prefix ("dd" . "Debug")
:desc "dap debug recent" "r" #'dap-debug-recent
:desc "dap debug last" "l" #'dap-debug-last
;; eval
:prefix ("de" . "Eval")
:desc "eval" "e" #'dap-eval
:desc "eval region" "r" #'dap-eval-region
:desc "eval thing at point" "s" #'dap-eval-thing-at-point
:desc "add expression" "a" #'dap-ui-expressions-add
:desc "remove expression" "d" #'dap-ui-expressions-remove
:prefix ("db" . "Breakpoint")
:desc "dap breakpoint toggle" "b" #'dap-breakpoint-toggle
:desc "dap breakpoint condition" "c" #'dap-breakpoint-condition
:desc "dap breakpoint hit count" "h" #'dap-breakpoint-hit-condition
:desc "dap breakpoint log message" "l" #'dap-breakpoint-log-message)
(after! dap-mode
(setq dap-python-debugger 'debugpy))

44
init.el
View File

@@ -1,13 +1,15 @@
;;; init.el -*- lexical-binding: t; -*-
(doom! :input
(doom!
:input
;;bidi ; (tfel ot) thgir etirw uoy gnipleh
;;chinese
;;japanese
;;layout ; auie,ctsrnm is the superior home row
:completion
(company +tng) ; the ultimate code completion backend
company ; the ultimate code completion backend
;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
;;ivy ; a search engine for love and life
@@ -42,7 +44,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
@@ -53,7 +55,7 @@
word-wrap ; soft wrapping with language-aware indent
:emacs
(dired +ranger +icons) ; making dired pretty [functional]
(dired +icons) ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent
(ibuffer +icons) ; interactive buffer management
(undo +tree) ; persistent, smarter undo for your inevitable mistakes
@@ -74,9 +76,9 @@
;;ansible
;;biblio ; Writes a PhD for you (citation needed)
(debugger +lsp) ; FIXME stepping through code, to help you add bugs
;;direnv
direnv
(docker +lsp)
;;editorconfig ; let someone else argue about tabs vs spaces
editorconfig ; let someone else argue about tabs vs spaces
ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists
@@ -87,11 +89,11 @@
;;pass ; password manager for nerds
pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders
rgb ; creating color strings
;;rgb ; creating color strings
;;taskrunner ; taskrunner for all your projects
;;terraform ; infrastructure as code
;;tmux ; an API for interacting with tmux
;;tree-sitter ; syntax and parsing, sitting in a tree...
tmux ; an API for interacting with tmux
tree-sitter ; syntax and parsing, sitting in a tree...
upload ; map local to remote projects via ssh/ftp
:os
@@ -101,7 +103,7 @@
:lang
;;agda ; types of types of types of types...
;;beancount ; mind the GAAP
(cc +lsp) ; C > C++ == 1
(cc +lsp +tree-sitter) ; C > C++ == 1
;;clojure ; java with a lisp
;;common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs
@@ -123,43 +125,43 @@
;;gdscript ; the language you waited for
;;(go +lsp) ; the hipster dialect
;;(graphql +lsp) ; Give queries a REST
(haskell +lsp) ; a language that's lazier than I am
(haskell +lsp +tree-sitter) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on
(json +lsp) ; At least it ain't XML
(json +lsp +tree-sitter) ; At least it ain't XML
;;(java +lsp) ; the poster child for carpal tunnel syndrome
(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
(javascript +lsp +tree-sitter) ; all(hope(abandon(ye(who(enter(here))))))
;;(julia +lsp) ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script)
(latex +cdlatex +latexmk +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
(lua +lsp +tree-sitter) ; one-based indices? one-based indices
(markdown +grip) ; writing docs for people to ignore
;;nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!"
(nix +lsp +tree-sitter) ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel
(org +dragndrop +jupyter +pretty) ; organize your plain life in plain text
;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional
(python +lsp) ; beautiful is better than ugly
(python +lsp +tree-sitter) ; 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 +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
(rust +lsp +tree-sitter) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good
;;(scheme +guile) ; a fully conniving family of lisps
(sh +fish +lsp) ; she sells {ba,z,fi}sh shells on the C xor
(sh +fish +lsp +tree-sitter) ; she sells {ba,z,fi}sh shells on the C xor
;;sml
;;solidity ; do you need a blockchain? No.
;;swift ; who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance.
(web +lsp) ; the tubes
(yaml +lsp) ; JSON, but readable
(yaml +lsp +tree-sitter) ; JSON, but readable
;;zig ; C, but simpler
:email
@@ -177,4 +179,6 @@
:config
;;literate
(default +bindings +smartparens))
(default +bindings +smartparens)
)

View File

@@ -2,14 +2,15 @@
;;; $DOOMDIR/packages.el
(package! org-auto-tangle)
(package! git-modes)
(package! vimrc-mode)
(package! prettier-js)
(package! rainbow-mode)
(package! systemd)
(package! pkgbuild-mode)
(package! lua-mode)
(package! just-mode)
(package! nix-mode)
(package! yuck-mode)
(package! sxhkd-mode
:recipe (:host github :repo "xFA25E/sxhkd-mode"))
(package! ebuild-mode)
(package! portage-modes
:recipe (:host github :repo "OpenSauce04/portage-modes"))