system updates
This commit is contained in:
+296
-347
@@ -18,7 +18,7 @@
|
|||||||
- [[#flycheck][FLYCHECK]]
|
- [[#flycheck][FLYCHECK]]
|
||||||
- [[#fonts][FONTS]]
|
- [[#fonts][FONTS]]
|
||||||
- [[#setting-the-font-face][Setting The Font Face]]
|
- [[#setting-the-font-face][Setting The Font Face]]
|
||||||
- [[#zoom-inout][Zoom In/Out]]
|
- [[#zoom-inout][ZOOM IN/OUT]]
|
||||||
- [[#gnuplot][GNUPLOT]]
|
- [[#gnuplot][GNUPLOT]]
|
||||||
- [[#image-dir-ed][IMAGE DIR-ED]]
|
- [[#image-dir-ed][IMAGE DIR-ED]]
|
||||||
- [[#indentingtabs][INDENTING/TABS]]
|
- [[#indentingtabs][INDENTING/TABS]]
|
||||||
@@ -31,19 +31,19 @@
|
|||||||
- [[#rainbow-mode][RAINBOW MODE]]
|
- [[#rainbow-mode][RAINBOW MODE]]
|
||||||
- [[#reload-emacs][RELOAD EMACS]]
|
- [[#reload-emacs][RELOAD EMACS]]
|
||||||
- [[#shells-and-terminals][SHELLS AND TERMINALS]]
|
- [[#shells-and-terminals][SHELLS AND TERMINALS]]
|
||||||
- [[#eshell][Eshell]]
|
- [[#eshell][ESHELL]]
|
||||||
- [[#sudo-edit][SUDO EDIT]]
|
- [[#sudo-edit][SUDO EDIT]]
|
||||||
- [[#theme][THEME]]
|
- [[#theme][THEME]]
|
||||||
- [[#transparency][TRANSPARENCY]]
|
- [[#transparency][TRANSPARENCY]]
|
||||||
- [[#gui-tweaks][GUI TWEAKS]]
|
- [[#gui-tweaks][GUI TWEAKS]]
|
||||||
- [[#disable-menubar-toolbars-and-scrollbars][Disable Menubar, Toolbars and Scrollbars]]
|
- [[#disable-menubar-toolbars-and-scrollbars][DISABLE MENUBAR, TOOLBARS AND SCROLLBARS]]
|
||||||
- [[#display-line-numbers-and-truncated-lines][Display Line Numbers and Truncated Lines]]
|
- [[#display-line-numbers-and-truncated-lines][DISPLAY LINE NUMBERS AND TRUNCATED LINES]]
|
||||||
- [[#ivy-counsel][IVY (COUNSEL)]]
|
- [[#ivy-counsel][IVY (COUNSEL)]]
|
||||||
- [[#language-support][LANGUAGE SUPPORT]]
|
- [[#language-support][LANGUAGE SUPPORT]]
|
||||||
- [[#org-mode][ORG MODE]]
|
- [[#org-mode][ORG MODE]]
|
||||||
- [[#enabling-table-of-contents][Enabling Table of Contents]]
|
- [[#enabling-table-of-contents][ENABLING TABLE OF CONTENTS]]
|
||||||
- [[#enabling-org-bullets][Enabling Org Bullets]]
|
- [[#enabling-org-bullets][ENABLING ORG BULLETS]]
|
||||||
- [[#source-code-block-tag-expansion][Source Code Block Tag Expansion]]
|
- [[#source-code-block-tag-expansion][SOURCE CODE BLOCK TAG EXPANSION]]
|
||||||
- [[#which-key][WHICH-KEY]]
|
- [[#which-key][WHICH-KEY]]
|
||||||
|
|
||||||
* IMPORTANT PROGRAMS TO LOAD FIRST
|
* IMPORTANT PROGRAMS TO LOAD FIRST
|
||||||
@@ -170,7 +170,7 @@
|
|||||||
(lm/leader-keys
|
(lm/leader-keys
|
||||||
"SPC" '(counsel-M-x :wk "Counsel M-x")
|
"SPC" '(counsel-M-x :wk "Counsel M-x")
|
||||||
"." '(find-file :wk "Find file")
|
"." '(find-file :wk "Find file")
|
||||||
"f c" '((lambda () (interactive) (find-file "~/nixos/modules/old_configs/emacs/config.org")) :wk "Edit emacs config")
|
"f c" '((lambda () (interactive) (find-file "~/personal/nixos/configs/emacs/config.org")) :wk "Edit emacs config")
|
||||||
"f r" '(counsel-recentf :wk "Find recent files")
|
"f r" '(counsel-recentf :wk "Find recent files")
|
||||||
"TAB TAB" '(comment-line :wk "Comment lines"))
|
"TAB TAB" '(comment-line :wk "Comment lines"))
|
||||||
|
|
||||||
@@ -181,9 +181,9 @@
|
|||||||
"h r r" '(reload-init-file :wk "Reload emacs config"))
|
"h r r" '(reload-init-file :wk "Reload emacs config"))
|
||||||
;; "h r r" '((lambda () (interactive) (load-file user-init-file)) :wk "Reload emacs config"))
|
;; "h r r" '((lambda () (interactive) (load-file user-init-file)) :wk "Reload emacs config"))
|
||||||
|
|
||||||
(lm/leader-keys
|
;; (lm/leader-keys
|
||||||
"i" '(:ignore t :wk "Insert")
|
;; "i" '(:ignore t :wk "Insert")
|
||||||
"i p" '(org-download-screenshot :wk "Insert screenshot (org)"))
|
;; "i p" '(org-download-screenshot :wk "Insert screenshot (org)"))
|
||||||
|
|
||||||
(lm/leader-keys
|
(lm/leader-keys
|
||||||
"t" '(:ignore t :wk "Toggle")
|
"t" '(:ignore t :wk "Toggle")
|
||||||
@@ -342,9 +342,7 @@ Defining the various fonts emacs will use
|
|||||||
** Setting The Font Face
|
** Setting The Font Face
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
|
|
||||||
(set-face-attribute 'default nil
|
(set-face-attribute 'default nil
|
||||||
;; try switch to Source Code Pro
|
|
||||||
:font "FiraCodeNerdFontMono"
|
:font "FiraCodeNerdFontMono"
|
||||||
:height 110
|
:height 110
|
||||||
:weight 'medium)
|
:weight 'medium)
|
||||||
@@ -354,8 +352,9 @@ Defining the various fonts emacs will use
|
|||||||
:weight 'medium)
|
:weight 'medium)
|
||||||
(set-face-attribute 'fixed-pitch nil
|
(set-face-attribute 'fixed-pitch nil
|
||||||
:font "FiraCodeNerdFontMono"
|
:font "FiraCodeNerdFontMono"
|
||||||
:height 110
|
:height 130
|
||||||
:weight 'medium)
|
:weight 'medium)
|
||||||
|
|
||||||
;; Makes commented text and keywords italics.
|
;; Makes commented text and keywords italics.
|
||||||
;; This is working in emacsclient but not emacs.
|
;; This is working in emacsclient but not emacs.
|
||||||
;; Your font must have an italic face available.
|
;; Your font must have an italic face available.
|
||||||
@@ -363,419 +362,369 @@ Defining the various fonts emacs will use
|
|||||||
:slant 'italic)
|
:slant 'italic)
|
||||||
(set-face-attribute 'font-lock-keyword-face nil
|
(set-face-attribute 'font-lock-keyword-face nil
|
||||||
:slant 'italic)
|
:slant 'italic)
|
||||||
|
|
||||||
;; This sets the default font on all graphical frames created after restarting Emacs.
|
;; This sets the default font on all graphical frames created after restarting Emacs.
|
||||||
;; Does the same thing as 'set-face-attribute default' above, but emacsclient fonts
|
;; Does the same thing as 'set-face-attribute default' above, but emacsclient fonts
|
||||||
;; are not right unless I also add this method of setting the default font.
|
;; are not right unless I also add this method of setting the default font.
|
||||||
(add-to-list 'default-frame-alist '(font . "FiraCodeNerdFontMono-14"))
|
(add-to-list 'default-frame-alist '(font . "FiraCodeNerdFontMono-15"))
|
||||||
|
|
||||||
;; Uncomment the following line if line spacing needs adjusting.
|
;; UNCOMMENT THE FOLLOWING LINE IF LINE SPACING NEEDS ADJUSTING.
|
||||||
;; (setq-default line-spacing 0.12)
|
;; (SETQ-DEFAULT LINE-SPACING 0.12)
|
||||||
|
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
** Zoom In/Out
|
** ZOOM IN/OUT
|
||||||
Enable zoom in/out with C-=/- and also for C-scrl-up/down
|
ENABLE ZOOM IN/OUT WITH C-=/- AND ALSO FOR C-SCRL-UP/DOWN
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(global-set-key (kbd "C-=") 'text-scale-increase)
|
(GLOBAL-SET-KEY (KBD "C-=") 'TEXT-SCALE-INCREASE)
|
||||||
(global-set-key (kbd "C--") 'text-scale-decrease)
|
(GLOBAL-SET-KEY (KBD "C--") 'TEXT-SCALE-DECREASE)
|
||||||
(global-set-key (kbd "<C-wheel-up>") 'text-scale-increase)
|
(GLOBAL-SET-KEY (KBD "<C-WHEEL-UP>") 'TEXT-SCALE-INCREASE)
|
||||||
(global-set-key (kbd "<C-wheel-down>") 'text-scale-decrease)
|
(GLOBAL-SET-KEY (KBD "<C-WHEEL-DOWN>") 'TEXT-SCALE-DECREASE)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* GNUPLOT
|
* GNUPLOT
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package gnuplot-mode)
|
(USE-PACKAGE GNUPLOT-MODE)
|
||||||
;; automatically open files ending with .gp or .gnuplot in gnuplot mode
|
;; AUTOMATICALLY OPEN FILES ENDING WITH .GP OR .GNUPLOT IN GNUPLOT MODE
|
||||||
;; (setq auto-mode-alist
|
;; (SETQ AUTO-MODE-ALIST
|
||||||
;; (append '(("\\.\\(gp\\|gnuplot\\)$" . gnuplot-mode)) auto-mode-alist)))
|
;; (APPEND '(("\\.\\(GP\\|GNUPLOT\\)$" . GNUPLOT-MODE)) AUTO-MODE-ALIST)))
|
||||||
|
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* IMAGE DIR-ED
|
* IMAGE DIR-ED
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package image-dired+)
|
(USE-PACKAGE IMAGE-DIRED+)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
* INDENTING/TABS
|
* INDENTING/TABS
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(setq-default indent-tabs-mode nil)
|
(SETQ-DEFAULT INDENT-TABS-MODE NIL)
|
||||||
(setq-default tab-width 4)
|
(SETQ-DEFAULT TAB-WIDTH 2)
|
||||||
(setq-default indent-line-function 'insert-tab)
|
(SETQ-DEFAULT INDENT-LINE-FUNCTION 'INSERT-TAB)
|
||||||
(setq-default c-default-style "linux"
|
(SETQ-DEFAULT C-DEFAULT-STYLE "LINUX"
|
||||||
c-basic-offset 4)
|
C-BASIC-OFFSET 2)
|
||||||
;; if indent-tabs-mode is off, untabify before saving
|
;; IF INDENT-TABS-MODE IS OFF, UNTABIFY BEFORE SAVING
|
||||||
;;(add-hook 'write-file-hooks
|
;;(ADD-HOOK 'WRITE-FILE-HOOKS
|
||||||
;; (lambda () (if (not indent-tabs-mode)
|
;; (LAMBDA () (IF (NOT INDENT-TABS-MODE)
|
||||||
;; (untabify (point-min) (point-max)))))
|
;; (UNTABIFY (POINT-MIN) (POINT-MAX)))))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* LIGATURES
|
* LIGATURES
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
;; This assumes you've installed the package via MELPA.
|
;; THIS ASSUMES YOU'VE INSTALLED THE PACKAGE VIA MELPA.
|
||||||
(use-package ligature
|
(USE-PACKAGE LIGATURE
|
||||||
:config
|
:CONFIG
|
||||||
;; Enable the "www" ligature in every possible major mode
|
;; ENABLE THE "WWW" LIGATURE IN EVERY POSSIBLE MAJOR MODE
|
||||||
(ligature-set-ligatures 't '("www"))
|
(LIGATURE-SET-LIGATURES 'T '("WWW"))
|
||||||
;; Enable traditional ligature support in eww-mode, if the
|
;; ENABLE TRADITIONAL LIGATURE SUPPORT IN EWW-MODE, IF THE
|
||||||
;; `variable-pitch' face supports it
|
;; `VARIABLE-PITCH' FACE SUPPORTS IT
|
||||||
(ligature-set-ligatures 'eww-mode '("ff" "fi" "ffi"))
|
(LIGATURE-SET-LIGATURES 'EWW-MODE '("FF" "FI" "FFI"))
|
||||||
;; Enable all FiraMonoNerdFont and Fira Code ligatures in programming modes
|
;; ENABLE ALL CASCADIA CODE LIGATURES IN PROGRAMMING MODES
|
||||||
|
(LIGATURE-SET-LIGATURES 'PROG-MODE '("|||>" "<|||" "<==>" "<!--" "####" "~~>" "***" "||=" "||>"
|
||||||
(ligature-set-ligatures 'prog-mode
|
":::" "::=" "=:=" "===" "==>" "=!=" "=>>" "=<<" "=/=" "!=="
|
||||||
'(;; == === ==== => =| =>>=>=|=>==>> ==< =/=//=// =~
|
"!!." ">=>" ">>=" ">>>" ">>-" ">->" "->>" "-->" "---" "-<<"
|
||||||
;; =:= =!=
|
"<~~" "<~>" "<*>" "<||" "<|>" "<$>" "<==" "<=>" "<=<" "<->"
|
||||||
("=" (rx (+ (or ">" "<" "|" "/" "~" ":" "!" "="))))
|
"<--" "<-<" "<<=" "<<-" "<<<" "<+>" "</>" "###" "#_(" "..<"
|
||||||
;; ;; ;;;
|
"..." "+++" "/==" "///" "_|_" "WWW" "&&" "^=" "~~" "~@" "~="
|
||||||
(";" (rx (+ ";")))
|
"~>" "~-" "**" "*>" "*/" "||" "|}" "|]" "|=" "|>" "|-" "{|"
|
||||||
;; && &&&
|
"[|" "]#" "::" ":=" ":>" ":<" "$>" "==" "=>" "!=" "!!" ">:"
|
||||||
("&" (rx (+ "&")))
|
">=" ">>" ">-" "-~" "-|" "->" "--" "-<" "<~" "<*" "<|" "<:"
|
||||||
;; !! !!! !. !: !!. != !== !~
|
"<$" "<=" "<>" "<-" "<<" "<+" "</" "#{" "#[" "#:" "#=" "#!"
|
||||||
("!" (rx (+ (or "=" "!" "\." ":" "~"))))
|
"##" "#(" "#?" "#_" "%%" ".=" ".-" ".." ".?" "+>" "++" "?:"
|
||||||
;; ?? ??? ?: ?= ?.
|
"?=" "?." "??" ";;" "/*" "/=" "/>" "//" "__" "~~" "(*" "*)"
|
||||||
("?" (rx (or ":" "=" "\." (+ "?"))))
|
"\\\\" "://"))
|
||||||
;; %% %%%
|
;; ENABLES LIGATURE CHECKS GLOBALLY IN ALL BUFFERS. YOU CAN ALSO DO IT
|
||||||
("%" (rx (+ "%")))
|
;; PER MODE WITH `LIGATURE-MODE'.
|
||||||
;; |> ||> |||> ||||> |] |} || ||| |-> ||-||
|
(GLOBAL-LIGATURE-MODE T))
|
||||||
;; |->>-||-<<-| |- |== ||=||
|
#+END_SRC
|
||||||
;; |==>>==<<==<=>==//==/=!==:===>
|
|
||||||
("|" (rx (+ (or ">" "<" "|" "/" ":" "!" "}" "\]"
|
|
||||||
"-" "=" ))))
|
|
||||||
;; \\ \\\ \/
|
|
||||||
("\\" (rx (or "/" (+ "\\"))))
|
|
||||||
;; ++ +++ ++++ +>
|
|
||||||
("+" (rx (or ">" (+ "+"))))
|
|
||||||
;; :: ::: :::: :> :< := :// ::=
|
|
||||||
(":" (rx (or ">" "<" "=" "//" ":=" (+ ":"))))
|
|
||||||
;; // /// //// /\ /* /> /===:===!=//===>>==>==/
|
|
||||||
("/" (rx (+ (or ">" "<" "|" "/" "\\" "\*" ":" "!"
|
|
||||||
"="))))
|
|
||||||
;; .. ... .... .= .- .? ..= ..<
|
|
||||||
("\." (rx (or "=" "-" "\?" "\.=" "\.<" (+ "\."))))
|
|
||||||
;; -- --- ---- -~ -> ->> -| -|->-->>->--<<-|
|
|
||||||
("-" (rx (+ (or ">" "<" "|" "~" "-"))))
|
|
||||||
;; *> */ *) ** *** ****
|
|
||||||
("*" (rx (or ">" "/" ")" (+ "*"))))
|
|
||||||
;; www wwww
|
|
||||||
("w" (rx (+ "w")))
|
|
||||||
;; <> <!-- <|> <: <~ <~> <~~ <+ <* <$ </ <+> <*>
|
|
||||||
;; <$> </> <| <|| <||| <|||| <- <-| <-<<-|-> <->>
|
|
||||||
;; <<-> <= <=> <<==<<==>=|=>==/==//=!==:=>
|
|
||||||
;; << <<< <<<<
|
|
||||||
("<" (rx (+ (or "\+" "\*" "\$" "<" ">" ":" "~" "!"
|
|
||||||
"-" "/" "|" "="))))
|
|
||||||
;; >: >- >>- >--|-> >>-|-> >= >== >>== >=|=:=>>
|
|
||||||
;; >> >>> >>>>
|
|
||||||
(">" (rx (+ (or ">" "<" "|" "/" ":" "=" "-"))))
|
|
||||||
;; #: #= #! #( #? #[ #{ #_ #_( ## ### #####
|
|
||||||
("#" (rx (or ":" "=" "!" "(" "\?" "\[" "{" "_(" "_"
|
|
||||||
(+ "#"))))
|
|
||||||
;; ~~ ~~~ ~= ~- ~@ ~> ~~>
|
|
||||||
("~" (rx (or ">" "=" "-" "@" "~>" (+ "~"))))
|
|
||||||
;; __ ___ ____ _|_ __|____|_
|
|
||||||
("_" (rx (+ (or "_" "|"))))
|
|
||||||
;; Fira code: 0xFF 0x12
|
|
||||||
("0" (rx (and "x" (+ (in "A-F" "a-f" "0-9")))))
|
|
||||||
;; Fira code:
|
|
||||||
"Fl" "Tl" "fi" "fj" "fl" "ft"
|
|
||||||
;; The few not covered by the regexps.
|
|
||||||
"{|" "[|" "]#" "(*" "}#" "$>" "^="))
|
|
||||||
|
|
||||||
;; Enables ligature checks globally in all buffers. You can also do it
|
|
||||||
;; per mode with `ligature-mode'.
|
|
||||||
(global-ligature-mode t))
|
|
||||||
|
|
||||||
#+end_src
|
|
||||||
|
|
||||||
* MARKDOWN MODE
|
* MARKDOWN MODE
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package markdown-mode
|
(USE-PACKAGE MARKDOWN-MODE
|
||||||
:ensure t
|
:ENSURE T
|
||||||
:mode ("README\\.md\\'" . gfm-mode)
|
:MODE ("README\\.MD\\'" . GFM-MODE)
|
||||||
:init (setq markdown-command "multimarkdown"))
|
:INIT (SETQ MARKDOWN-COMMAND "MULTIMARKDOWN"))
|
||||||
|
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* ORG DOWNLOAD
|
* ORG DOWNLOAD
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
|
(USE-PACKAGE ORG-DOWNLOAD
|
||||||
(use-package org-download
|
:AFTER ORG
|
||||||
:after org
|
:DEFER NIL
|
||||||
:defer nil
|
:CUSTOM
|
||||||
:custom
|
(ORG-DOWNLOAD-METHOD 'DIRECTORY)
|
||||||
(org-download-method 'directory)
|
(ORG-DOWNLOAD-IMAGE-DIR "~/EMACS/IMAGES/")
|
||||||
(org-download-image-dir "~/emacs/images/")
|
(ORG-DOWNLOAD-HEADING-LVL 0)
|
||||||
(org-download-heading-lvl 0)
|
(ORG-DOWNLOAD-TIMESTAMP "ORG_%Y%M%D-%H%M%S_")
|
||||||
(org-download-timestamp "org_%Y%m%d-%H%M%S_")
|
(ORG-IMAGE-ACTUAL-WIDTH 400)
|
||||||
(org-image-actual-width 400)
|
(ORG-DOWNLOAD-SCREENSHOT-METHOD "WAYLAND_DISPLAY=WAYLAND-1 WL-PASTE -T IMAGE/PNG > '%S'.PNG")
|
||||||
(org-download-screenshot-method "WAYLAND_DISPLAY=wayland-1 wl-paste -t image/png > '%s'.png")
|
:BIND
|
||||||
:bind
|
("C-M-Y" . ORG-DOWNLOAD-SCREENSHOT)
|
||||||
("C-M-y" . org-download-screenshot file)
|
:CONFIG
|
||||||
:config
|
(REQUIRE 'ORG-DOWNLOAD))
|
||||||
(require 'org-download))
|
#+END_SRC
|
||||||
#+end_src
|
|
||||||
|
|
||||||
* PULSE
|
* PULSE
|
||||||
Pulse highlight a line on certain actions
|
PULSE HIGHLIGHT A LINE ON CERTAIN ACTIONS
|
||||||
|
|
||||||
# #+begin_src emacs-lisp
|
# #+BEGIN_SRC EMACS-LISP
|
||||||
# (use-package pulse
|
# (USE-PACKAGE PULSE
|
||||||
# :ensure nil
|
# :ENSURE NIL
|
||||||
# :defer
|
# :DEFER
|
||||||
# :init
|
# :INIT
|
||||||
# (defun pulse-line (&rest _)
|
# (DEFUN PULSE-LINE (&REST _)
|
||||||
# "Pulse the current line"
|
# "PULSE THE CURRENT LINE"
|
||||||
# (pulse-momentary-highlight-one-line (point)))
|
# (PULSE-MOMENTARY-HIGHLIGHT-ONE-LINE (POINT)))
|
||||||
|
|
||||||
# (dolist (command '(scroll-up-command
|
# (DOLIST (COMMAND '(SCROLL-UP-COMMAND
|
||||||
# scroll-down-command
|
# SCROLL-DOWN-COMMAND
|
||||||
# windmove-left
|
# WINDMOVE-LEFT
|
||||||
# windmove-right
|
# WINDMOVE-RIGHT
|
||||||
# windmove-up
|
# WINDMOVE-UP
|
||||||
# windmove-down
|
# WINDMOVE-DOWN
|
||||||
# move-to-window-line-top-bottom
|
# MOVE-TO-WINDOW-LINE-TOP-BOTTOM
|
||||||
# recenter-top-bottom
|
# RECENTER-TOP-BOTTOM
|
||||||
# other-window))
|
# OTHER-WINDOW))
|
||||||
# (advice-add command :after #'pulse-line)))
|
# (ADVICE-ADD COMMAND :AFTER #'PULSE-LINE)))
|
||||||
# #+end_src
|
# #+END_SRC
|
||||||
|
|
||||||
* PDF TOOLS
|
* PDF TOOLS
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package pdf-tools)
|
(USE-PACKAGE PDF-TOOLS)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
* PROJECTILE
|
* PROJECTILE
|
||||||
[[https://github.com/bbatsov/projectile][Projectile]] is a project interaction library for Emacs.
|
[[HTTPS://GITHUB.COM/BBATSOV/PROJECTILE][PROJECTILE]] IS A PROJECT INTERACTION LIBRARY FOR EMACS.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package projectile
|
(USE-PACKAGE PROJECTILE
|
||||||
:diminish
|
:DIMINISH
|
||||||
:config
|
:CONFIG
|
||||||
(projectile-mode 1))
|
(PROJECTILE-MODE 1))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* RAINBOW MODE
|
* RAINBOW MODE
|
||||||
Display the actual color as a background for any hex color value (ex. #ffffff). The code block below enables rainbow-mode in all programming modes (prog-mode) as well as org-mode, which is why rainbow works in this document.
|
DISPLAY THE ACTUAL COLOR AS A BACKGROUND FOR ANY HEX COLOR VALUE (EX. #FFFFFF). THE CODE BLOCK BELOW ENABLES RAINBOW-MODE IN ALL PROGRAMMING MODES (PROG-MODE) AS WELL AS ORG-MODE, WHICH IS WHY RAINBOW WORKS IN THIS DOCUMENT.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package rainbow-mode
|
(USE-PACKAGE RAINBOW-MODE
|
||||||
:diminish
|
:DIMINISH
|
||||||
:hook
|
:HOOK
|
||||||
((org-mode prog-mode) . rainbow-mode))
|
((ORG-MODE PROG-MODE) . RAINBOW-MODE))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* RELOAD EMACS
|
* RELOAD EMACS
|
||||||
This is just an example of how to create a simple function in Emacs. Use this function to reload Emacs after adding changes to the config. Yes, I am loading the user-init-file twice in this function, which is a hack because for some reason, just loading the user-init-file once does not work properly.
|
THIS IS JUST AN EXAMPLE OF HOW TO CREATE A SIMPLE FUNCTION IN EMACS. USE THIS FUNCTION TO RELOAD EMACS AFTER ADDING CHANGES TO THE CONFIG. YES, I AM LOADING THE USER-INIT-FILE TWICE IN THIS FUNCTION, WHICH IS A HACK BECAUSE FOR SOME REASON, JUST LOADING THE USER-INIT-FILE ONCE DOES NOT WORK PROPERLY.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(defun reload-init-file ()
|
(DEFUN RELOAD-INIT-FILE ()
|
||||||
(interactive)
|
(INTERACTIVE)
|
||||||
(load-file user-init-file)
|
(LOAD-FILE USER-INIT-FILE)
|
||||||
(load-file user-init-file))
|
(LOAD-FILE USER-INIT-FILE))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* SHELLS AND TERMINALS
|
* SHELLS AND TERMINALS
|
||||||
|
|
||||||
** Eshell
|
** ESHELL
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package eshell-syntax-highlighting
|
(USE-PACKAGE ESHELL-SYNTAX-HIGHLIGHTING
|
||||||
:after esh-mode
|
:AFTER ESH-MODE
|
||||||
:config
|
:CONFIG
|
||||||
(eshell-syntax-highlighting-global-mode +1))
|
(ESHELL-SYNTAX-HIGHLIGHTING-GLOBAL-MODE +1))
|
||||||
|
|
||||||
(setq eshell-rc-script (concat user-emacs-directory "eshell/profile")
|
(SETQ ESHELL-RC-SCRIPT (CONCAT USER-EMACS-DIRECTORY "ESHELL/PROFILE")
|
||||||
eshell-aliases-file (concat user-emacs-directory "eshell/aliases")
|
ESHELL-ALIASES-FILE (CONCAT USER-EMACS-DIRECTORY "ESHELL/ALIASES")
|
||||||
eshell-history-size 5000
|
ESHELL-HISTORY-SIZE 5000
|
||||||
eshell-buffer-maximum-lines 5000
|
ESHELL-BUFFER-MAXIMUM-LINES 5000
|
||||||
eshell-hist-ignoredups t
|
ESHELL-HIST-IGNOREDUPS T
|
||||||
eshell-scroll-to-bottom-on-input t
|
ESHELL-SCROLL-TO-BOTTOM-ON-INPUT T
|
||||||
eshell-destroy-buffer-when-process-dies t
|
ESHELL-DESTROY-BUFFER-WHEN-PROCESS-DIES T
|
||||||
eshell-visual-commands'("bash" "fish" "htop" "ssh" "top" "zsh"))
|
ESHELL-VISUAL-COMMANDS'("BASH" "FISH" "HTOP" "SSH" "TOP" "ZSH"))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* SUDO EDIT
|
* SUDO EDIT
|
||||||
Enable editing of privileged files
|
ENABLE EDITING OF PRIVILEGED FILES
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package sudo-edit
|
(USE-PACKAGE SUDO-EDIT
|
||||||
:config
|
:CONFIG
|
||||||
(lm/leader-keys
|
(LM/LEADER-KEYS
|
||||||
"fu" '(sudo-edit-find-file :wk "Sudo find file")
|
"FU" '(SUDO-EDIT-FIND-FILE :WK "SUDO FIND FILE")
|
||||||
"fU" '(sudo-edit :wk "Sudo edit file")))
|
"FU" '(SUDO-EDIT :WK "SUDO EDIT FILE")))
|
||||||
|
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* THEME
|
* THEME
|
||||||
Set themes dir, load chosen theme - theme made with [[https://emacsfodder.github.io/emacs-theme-editor/][Emacs Theme Editor]].
|
SET THEMES DIR, LOAD CHOSEN THEME - THEME MADE WITH [[HTTPS://EMACSFODDER.GITHUB.IO/EMACS-THEME-EDITOR/][EMACS THEME EDITOR]].
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
;;(add-to-list 'custom-theme-load-path "~/.config/emacs/themes")
|
;;(ADD-TO-LIST 'CUSTOM-THEME-LOAD-PATH "~/.CONFIG/EMACS/THEMES")
|
||||||
;;(load-theme 'soft-charcoal t)
|
;;(LOAD-THEME 'SOFT-CHARCOAL T)
|
||||||
|
|
||||||
(use-package doom-themes
|
(USE-PACKAGE DOOM-THEMES
|
||||||
:ensure t
|
:ENSURE T
|
||||||
:config
|
:CONFIG
|
||||||
;; Global settings (defaults)
|
;; GLOBAL SETTINGS (DEFAULTS)
|
||||||
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
|
(SETQ DOOM-THEMES-ENABLE-BOLD T ; IF NIL, BOLD IS UNIVERSALLY DISABLED
|
||||||
doom-themes-enable-italic t) ; if nil, italics is universally disabled
|
DOOM-THEMES-ENABLE-ITALIC T) ; IF NIL, ITALICS IS UNIVERSALLY DISABLED
|
||||||
(load-theme 'doom-monokai-spectrum t)
|
(LOAD-THEME 'DOOM-MONOKAI-SPECTRUM T)
|
||||||
;; (load-theme 'doom-monokai-machine t)
|
;; (LOAD-THEME 'DOOM-MONOKAI-MACHINE T)
|
||||||
|
|
||||||
;; Enable flashing mode-line on errors
|
;; ENABLE FLASHING MODE-LINE ON ERRORS
|
||||||
(doom-themes-visual-bell-config)
|
(DOOM-THEMES-VISUAL-BELL-CONFIG)
|
||||||
;; Enable custom neotree theme (all-the-icons must be installed!)
|
;; ENABLE CUSTOM NEOTREE THEME (ALL-THE-ICONS MUST BE INSTALLED!)
|
||||||
(doom-themes-neotree-config)
|
(DOOM-THEMES-NEOTREE-CONFIG)
|
||||||
;; or for treemacs users
|
;; OR FOR TREEMACS USERS
|
||||||
(setq doom-themes-treemacs-theme "doom-colors") ; use "doom-colors" for less minimal icon theme
|
(SETQ DOOM-THEMES-TREEMACS-THEME "DOOM-COLORS") ; USE "DOOM-COLORS" FOR LESS MINIMAL ICON THEME
|
||||||
(doom-themes-treemacs-config)
|
(DOOM-THEMES-TREEMACS-CONFIG)
|
||||||
;; Corrects (and improves) org-mode's native fontification.
|
;; CORRECTS (AND IMPROVES) ORG-MODE'S NATIVE FONTIFICATION.
|
||||||
(doom-themes-org-config))
|
(DOOM-THEMES-ORG-CONFIG))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* TRANSPARENCY
|
* TRANSPARENCY
|
||||||
True transparency support as of emacs 29
|
TRUE TRANSPARENCY SUPPORT AS OF EMACS 29
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(add-to-list 'default-frame-alist '(alpha-background . 90)) ;; for all new frames
|
(ADD-TO-LIST 'DEFAULT-FRAME-ALIST '(ALPHA-BACKGROUND . 90)) ;; FOR ALL NEW FRAMES
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
* GUI TWEAKS
|
* GUI TWEAKS
|
||||||
Making the UI look nicer
|
MAKING THE UI LOOK NICER
|
||||||
|
|
||||||
** Disable Menubar, Toolbars and Scrollbars
|
** DISABLE MENUBAR, TOOLBARS AND SCROLLBARS
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(menu-bar-mode -1)
|
(MENU-BAR-MODE -1)
|
||||||
(tool-bar-mode -1)
|
(TOOL-BAR-MODE -1)
|
||||||
(scroll-bar-mode -1)
|
(SCROLL-BAR-MODE -1)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
** Display Line Numbers and Truncated Lines
|
** DISPLAY LINE NUMBERS AND TRUNCATED LINES
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(global-display-line-numbers-mode 0)
|
(GLOBAL-DISPLAY-LINE-NUMBERS-MODE 0)
|
||||||
(menu-bar--display-line-numbers-mode-relative)
|
(MENU-BAR--DISPLAY-LINE-NUMBERS-MODE-RELATIVE)
|
||||||
;; (setq display-line-numbers-mode-relative 't)
|
;; (SETQ DISPLAY-LINE-NUMBERS-MODE-RELATIVE 'T)
|
||||||
|
|
||||||
(global-visual-line-mode t)
|
(GLOBAL-VISUAL-LINE-MODE T)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* IVY (COUNSEL)
|
* IVY (COUNSEL)
|
||||||
+ Ivy, a generic completion mechanism for Emacs.
|
+ IVY, A GENERIC COMPLETION MECHANISM FOR EMACS.
|
||||||
+ Counsel, a collection of Ivy-enhanced versions of common Emacs commands.
|
+ COUNSEL, A COLLECTION OF IVY-ENHANCED VERSIONS OF COMMON EMACS COMMANDS.
|
||||||
+ Ivy-rich allows us to add descriptions alongside the commands in M-x.
|
+ IVY-RICH ALLOWS US TO ADD DESCRIPTIONS ALONGSIDE THE COMMANDS IN M-X.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package counsel
|
(USE-PACKAGE COUNSEL
|
||||||
:after ivy
|
:AFTER IVY
|
||||||
:diminish
|
:DIMINISH
|
||||||
:config (counsel-mode))
|
:CONFIG (COUNSEL-MODE))
|
||||||
|
|
||||||
(use-package ivy
|
(USE-PACKAGE IVY
|
||||||
:bind
|
:BIND
|
||||||
;; ivy-resume resumes the last Ivy-based completion.
|
;; IVY-RESUME RESUMES THE LAST IVY-BASED COMPLETION.
|
||||||
(("C-c C-r" . ivy-resume)
|
(("C-C C-R" . IVY-RESUME)
|
||||||
("C-x B" . ivy-switch-buffer-other-window))
|
("C-X B" . IVY-SWITCH-BUFFER-OTHER-WINDOW))
|
||||||
:diminish
|
:DIMINISH
|
||||||
:custom
|
:CUSTOM
|
||||||
(setq ivy-use-virtual-buffers t)
|
(SETQ IVY-USE-VIRTUAL-BUFFERS T)
|
||||||
(setq ivy-count-format "(%d/%d) ")
|
(SETQ IVY-COUNT-FORMAT "(%D/%D) ")
|
||||||
(setq enable-recursive-minibuffers t)
|
(SETQ ENABLE-RECURSIVE-MINIBUFFERS T)
|
||||||
:config
|
:CONFIG
|
||||||
(ivy-mode))
|
(IVY-MODE))
|
||||||
|
|
||||||
(use-package all-the-icons-ivy-rich
|
(USE-PACKAGE ALL-THE-ICONS-IVY-RICH
|
||||||
:ensure t
|
:ENSURE T
|
||||||
:diminish
|
:DIMINISH
|
||||||
:init (all-the-icons-ivy-rich-mode 1))
|
:INIT (ALL-THE-ICONS-IVY-RICH-MODE 1))
|
||||||
|
|
||||||
(use-package ivy-rich
|
(USE-PACKAGE IVY-RICH
|
||||||
:after ivy
|
:AFTER IVY
|
||||||
:diminish
|
:DIMINISH
|
||||||
:ensure t
|
:ENSURE T
|
||||||
:init (ivy-rich-mode 1) ;; this gets us descriptions in M-x.
|
:INIT (IVY-RICH-MODE 1) ;; THIS GETS US DESCRIPTIONS IN M-X.
|
||||||
:custom
|
:CUSTOM
|
||||||
(ivy-virtual-abbreviate 'full
|
(IVY-VIRTUAL-ABBREVIATE 'FULL
|
||||||
ivy-rich-switch-buffer-align-virtual-buffer t
|
IVY-RICH-SWITCH-BUFFER-ALIGN-VIRTUAL-BUFFER T
|
||||||
ivy-rich-path-style 'abbrev)
|
IVY-RICH-PATH-STYLE 'ABBREV)
|
||||||
:config
|
:CONFIG
|
||||||
(ivy-set-display-transformer 'ivy-switch-buffer
|
(IVY-SET-DISPLAY-TRANSFORMER 'IVY-SWITCH-BUFFER
|
||||||
'ivy-rich-switch-buffer-transformer))
|
'IVY-RICH-SWITCH-BUFFER-TRANSFORMER))
|
||||||
|
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* LANGUAGE SUPPORT
|
* LANGUAGE SUPPORT
|
||||||
Emacs has built-in programming language modes for Lisp, Scheme, DSSSL, Ada, ASM, AWK, C, C++, Fortran, Icon, IDL (CORBA), IDLWAVE, Java, Javascript, M4, Makefiles, Metafont, Modula2, Object Pascal, Objective-C, Octave, Pascal, Perl, Pike, PostScript, Prolog, Python, Ruby, Simula, SQL, Tcl, Verilog, and VHDL. Other languages will require you to install additional modes.
|
EMACS HAS BUILT-IN PROGRAMMING LANGUAGE MODES FOR LISP, SCHEME, DSSSL, ADA, ASM, AWK, C, C++, FORTRAN, ICON, IDL (CORBA), IDLWAVE, JAVA, JAVASCRIPT, M4, MAKEFILES, METAFONT, MODULA2, OBJECT PASCAL, OBJECTIVE-C, OCTAVE, PASCAL, PERL, PIKE, POSTSCRIPT, PROLOG, PYTHON, RUBY, SIMULA, SQL, TCL, VERILOG, AND VHDL. OTHER LANGUAGES WILL REQUIRE YOU TO INSTALL ADDITIONAL MODES.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package zig-mode)
|
(USE-PACKAGE ZIG-MODE)
|
||||||
(use-package nix-mode)
|
(USE-PACKAGE NIX-MODE)
|
||||||
;; (use-package jai-mode)
|
;; (USE-PACKAGE JAI-MODE)
|
||||||
(use-package rust-mode)
|
(USE-PACKAGE RUST-MODE)
|
||||||
(use-package cargo-mode)
|
(USE-PACKAGE CARGO-MODE)
|
||||||
(use-package lua-mode)
|
(USE-PACKAGE LUA-MODE)
|
||||||
(add-to-list 'load-path "~/.config/emacs/manual-packages")
|
(ADD-TO-LIST 'LOAD-PATH "~/.CONFIG/EMACS/MANUAL-PACKAGES")
|
||||||
(require 'odin-mode)
|
(REQUIRE 'ODIN-MODE)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
|
|
||||||
* ORG MODE
|
* ORG MODE
|
||||||
** Enabling Table of Contents
|
** ENABLING TABLE OF CONTENTS
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package toc-org
|
(USE-PACKAGE TOC-ORG
|
||||||
:commands toc-org-enable
|
:COMMANDS TOC-ORG-ENABLE
|
||||||
:init (add-hook 'org-mode-hook 'toc-org-enable))
|
:INIT (ADD-HOOK 'ORG-MODE-HOOK 'TOC-ORG-ENABLE))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
** Enabling Org Bullets
|
** ENABLING ORG BULLETS
|
||||||
Org-bullets give bullet points instead of asterisks
|
ORG-BULLETS GIVE BULLET POINTS INSTEAD OF ASTERISKS
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(add-hook 'org-mode-hook 'org-indent-mode)
|
(ADD-HOOK 'ORG-MODE-HOOK 'ORG-INDENT-MODE)
|
||||||
;;(setq (setq org-return-follows-link t)
|
;;(SETQ (SETQ ORG-RETURN-FOLLOWS-LINK T)
|
||||||
(use-package org-bullets)
|
(USE-PACKAGE ORG-BULLETS)
|
||||||
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))
|
(ADD-HOOK 'ORG-MODE-HOOK (LAMBDA () (ORG-BULLETS-MODE 1)))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
** Source Code Block Tag Expansion
|
** SOURCE CODE BLOCK TAG EXPANSION
|
||||||
Org-tempo is not a separate package but a module within org that can be enabled. Org-tempo allows for '<s' followed by TAB to expand to a begin_src tag. Other expansions available include:
|
ORG-TEMPO IS NOT A SEPARATE PACKAGE BUT A MODULE WITHIN ORG THAT CAN BE ENABLED. ORG-TEMPO ALLOWS FOR '<S' FOLLOWED BY TAB TO EXPAND TO A BEGIN_SRC TAG. OTHER EXPANSIONS AVAILABLE INCLUDE:
|
||||||
|
|
||||||
| Typing the below + TAB | Expands to ... |
|
| TYPING THE BELOW + TAB | EXPANDS TO ... |
|
||||||
|------------------------+-----------------------------------------|
|
|------------------------+-----------------------------------------|
|
||||||
| <a | '#+BEGIN_EXPORT ascii' … '#+END_EXPORT |
|
| <A | '#+BEGIN_EXPORT ASCII' … '#+END_EXPORT |
|
||||||
| <c | '#+BEGIN_CENTER' … '#+END_CENTER' |
|
| <C | '#+BEGIN_CENTER' … '#+END_CENTER' |
|
||||||
| <C | '#+BEGIN_COMMENT' … '#+END_COMMENT' |
|
| <C | '#+BEGIN_COMMENT' … '#+END_COMMENT' |
|
||||||
| <e | '#+BEGIN_EXAMPLE' … '#+END_EXAMPLE' |
|
| <E | '#+BEGIN_EXAMPLE' … '#+END_EXAMPLE' |
|
||||||
| <E | '#+BEGIN_EXPORT' … '#+END_EXPORT' |
|
| <E | '#+BEGIN_EXPORT' … '#+END_EXPORT' |
|
||||||
| <h | '#+BEGIN_EXPORT html' … '#+END_EXPORT' |
|
| <H | '#+BEGIN_EXPORT HTML' … '#+END_EXPORT' |
|
||||||
| <l | '#+BEGIN_EXPORT latex' … '#+END_EXPORT' |
|
| <L | '#+BEGIN_EXPORT LATEX' … '#+END_EXPORT' |
|
||||||
| <q | '#+BEGIN_QUOTE' … '#+END_QUOTE' |
|
| <Q | '#+BEGIN_QUOTE' … '#+END_QUOTE' |
|
||||||
| <s | '#+BEGIN_SRC' … '#+END_SRC' |
|
| <S | '#+BEGIN_SRC' … '#+END_SRC' |
|
||||||
| <v | '#+BEGIN_VERSE' … '#+END_VERSE' |
|
| <V | '#+BEGIN_VERSE' … '#+END_VERSE' |
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(require 'org-tempo)
|
(REQUIRE 'ORG-TEMPO)
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|
||||||
* WHICH-KEY
|
* WHICH-KEY
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+BEGIN_SRC EMACS-LISP
|
||||||
(use-package which-key
|
(USE-PACKAGE WHICH-KEY
|
||||||
:init
|
:INIT
|
||||||
(which-key-mode 1)
|
(WHICH-KEY-MODE 1)
|
||||||
:diminish
|
:DIMINISH
|
||||||
:config
|
:CONFIG
|
||||||
(setq which-key-side-window-location 'bottom
|
(SETQ WHICH-KEY-SIDE-WINDOW-LOCATION 'BOTTOM
|
||||||
which-key-sort-order #'which-key-key-order-alpha
|
WHICH-KEY-SORT-ORDER #'WHICH-KEY-KEY-ORDER-ALPHA
|
||||||
which-key-sort-uppercase-first nil
|
WHICH-KEY-SORT-UPPERCASE-FIRST NIL
|
||||||
which-key-add-column-padding 1
|
WHICH-KEY-ADD-COLUMN-PADDING 1
|
||||||
which-key-max-display-columns nil
|
WHICH-KEY-MAX-DISPLAY-COLUMNS NIL
|
||||||
which-key-min-display-lines 6
|
WHICH-KEY-MIN-DISPLAY-LINES 6
|
||||||
which-key-side-window-slot -10
|
WHICH-KEY-SIDE-WINDOW-SLOT -10
|
||||||
which-key-side-window-max-height 0.25
|
WHICH-KEY-SIDE-WINDOW-MAX-HEIGHT 0.25
|
||||||
which-key-ide-delay 0.8
|
WHICH-KEY-IDE-DELAY 0.8
|
||||||
which-key-max-description-length 25
|
WHICH-KEY-MAX-DESCRIPTION-LENGTH 25
|
||||||
which-key-allow-imprecise-window-fit nil
|
WHICH-KEY-ALLOW-IMPRECISE-WINDOW-FIT NIL
|
||||||
which-key-separator " -> " ))
|
WHICH-KEY-SEPARATOR " -> " ))
|
||||||
#+end_src
|
#+END_SRC
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ bind=$altMod SHIFT, Return, exec, alacritty
|
|||||||
bind=$mainMod SHIFT, D, exec, discord --enable-blink-features=MiddleClickAutoscroll
|
bind=$mainMod SHIFT, D, exec, discord --enable-blink-features=MiddleClickAutoscroll
|
||||||
bind=$mainMod SHIFT, E, exec, emacsclient -c -a 'emacs'
|
bind=$mainMod SHIFT, E, exec, emacsclient -c -a 'emacs'
|
||||||
bind=$mainMode SHIFT, F, exec, focus-linux
|
bind=$mainMode SHIFT, F, exec, focus-linux
|
||||||
bind=$mainMod, SPACE, exec, pkill wofi || wofi
|
bind=$mainMod, SPACE, exec, pkill fuzzel || fuzzel
|
||||||
bind=$mainMod, E, exec, nautilus
|
bind=$mainMod, E, exec, nautilus
|
||||||
bind=$mainMod, S, exec, spotify
|
bind=$mainMod, S, exec, spotify
|
||||||
bind=$mainMod, P, exec, hyprpicker -a -f hex
|
bind=$mainMod, P, exec, hyprpicker -a -f hex
|
||||||
|
|||||||
+11
-3
@@ -10,7 +10,10 @@ function execs() {
|
|||||||
rivertile -view-padding 1 -outer-padding 2 &
|
rivertile -view-padding 1 -outer-padding 2 &
|
||||||
swww-daemon &
|
swww-daemon &
|
||||||
swaync &
|
swaync &
|
||||||
quickshell &
|
# quickshell &
|
||||||
|
waybar &
|
||||||
|
hypridle &
|
||||||
|
emacs --daemon &
|
||||||
wl-clipboard-history -t &
|
wl-clipboard-history -t &
|
||||||
wl-paste -p --watch wl-copy -p '' &
|
wl-paste -p --watch wl-copy -p '' &
|
||||||
wlsunset -l $longitude -L $latitude &
|
wlsunset -l $longitude -L $latitude &
|
||||||
@@ -82,11 +85,13 @@ function binds() {
|
|||||||
|
|
||||||
# Binds :: Progams
|
# Binds :: Progams
|
||||||
discord="discord --enable-blink-features=MiddleClickAutoscroll"
|
discord="discord --enable-blink-features=MiddleClickAutoscroll"
|
||||||
|
emacs="emacsclient -c -a 'emacs'"
|
||||||
hyprpicker="hyprpicker -a"
|
hyprpicker="hyprpicker -a"
|
||||||
screenshot="grim - | wl-copy"
|
screenshot="grim - | wl-copy"
|
||||||
screenshotarea="grim -g \"\$(slurp)\" - | wl-copy"
|
screenshotarea="grim -g \"\$(slurp)\" - | wl-copy"
|
||||||
riverctl map normal Alt Return spawn ghostty
|
riverctl map normal Alt Return spawn ghostty
|
||||||
riverctl map normal $mod+Shift D spawn "$discord"
|
riverctl map normal $mod+Shift D spawn "$discord"
|
||||||
|
riverctl map normal $mod+Shift E spawn "$emacs"
|
||||||
riverctl map normal $mod Space spawn fuzzel
|
riverctl map normal $mod Space spawn fuzzel
|
||||||
riverctl map normal $mod P spawn "$hyprpicker"
|
riverctl map normal $mod P spawn "$hyprpicker"
|
||||||
riverctl map normal None Print spawn "$screenshotarea"
|
riverctl map normal None Print spawn "$screenshotarea"
|
||||||
@@ -144,8 +149,11 @@ function binds() {
|
|||||||
for i in $(seq 1 9)
|
for i in $(seq 1 9)
|
||||||
do
|
do
|
||||||
tags=$((1 << ($i - 1)))
|
tags=$((1 << ($i - 1)))
|
||||||
riverctl map normal $mod $i set-focused-tags $tags # Focus tag
|
# Focus tag
|
||||||
riverctl map normal $mod+Shift $i set-view-tags $tags # Assign tag to window
|
riverctl map normal $mod $i set-focused-tags $tags
|
||||||
|
|
||||||
|
# Assign tag to window and focus
|
||||||
|
riverctl map normal $mod+Shift $i spawn "sh -c 'riverctl set-view-tags $tags && riverctl set-focused-tags $tags'"
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -52,6 +52,8 @@
|
|||||||
"10": "",
|
"10": "",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
"river/tags": {
|
||||||
|
},
|
||||||
"group/control-center": {
|
"group/control-center": {
|
||||||
"orientation": "inherit",
|
"orientation": "inherit",
|
||||||
"modules": ["hyprland/language", "group/audio", "group/connection"],
|
"modules": ["hyprland/language", "group/audio", "group/connection"],
|
||||||
|
|||||||
Generated
+42
-42
@@ -20,11 +20,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752743471,
|
"lastModified": 1753216019,
|
||||||
"narHash": "sha256-4izhj1j7J4mE8LgljCXSIUDculqOsxxhdoC81VhqizM=",
|
"narHash": "sha256-zik7WISrR1ks2l6T1MZqZHb/OqroHdJnSnAehkE0kCk=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "aquamarine",
|
"repo": "aquamarine",
|
||||||
"rev": "e31b575d19e7cf8a8f4398e2f9cffe27a1332506",
|
"rev": "be166e11d86ba4186db93e10c54a141058bdce49",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -36,11 +36,11 @@
|
|||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1696426674,
|
"lastModified": 1747046372,
|
||||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -78,11 +78,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753943136,
|
"lastModified": 1755121891,
|
||||||
"narHash": "sha256-eiEE5SabVcIlGSTRcRyBjmJMaYAV95SJnjy8YSsVeW4=",
|
"narHash": "sha256-UtYkukiGnPRJ5rpd4W/wFVrLMh8fqtNkqHTPgHEtrqU=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "bd82507edd860c453471c46957cbbe3c9fd01b5c",
|
"rev": "279ca5addcdcfa31ac852b3ecb39fc372684f426",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -107,11 +107,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1749155331,
|
"lastModified": 1753964049,
|
||||||
"narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=",
|
"narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprcursor",
|
"repo": "hyprcursor",
|
||||||
"rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80",
|
"rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -136,11 +136,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752149140,
|
"lastModified": 1754305013,
|
||||||
"narHash": "sha256-gbh1HL98Fdqu0jJIWN4OJQN7Kkth7+rbkFpSZLm/62A=",
|
"narHash": "sha256-u+M2f0Xf1lVHzIPQ7DsNCDkM1NYxykOSsRr4t3TbSM4=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprgraphics",
|
"repo": "hyprgraphics",
|
||||||
"rev": "340494a38b5ec453dfc542c6226481f736cc8a9a",
|
"rev": "4c1d63a0f22135db123fc789f174b89544c6ec2d",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -165,11 +165,11 @@
|
|||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753971789,
|
"lastModified": 1755184403,
|
||||||
"narHash": "sha256-V0yPyFMBdOt0c3QIUlO18bHDI7vXKqOixtLuBZZjrBI=",
|
"narHash": "sha256-VI+ZPD/uIFjzYW8IcyvBgvwyDIvUe4/xh/kOHTbITX8=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "a907ecd4ff736a3a09410532b405a437eb48033c",
|
"rev": "60d769a89908c29e19100059985db15a7b6bab6a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -195,11 +195,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753894287,
|
"lastModified": 1755183521,
|
||||||
"narHash": "sha256-yPeP6mY5Mdozji7xZBWYy6K166RcCuJgnOXxQt7vl3s=",
|
"narHash": "sha256-wrP8TM2lb2x0+PyTc7Uc3yfVBeIlYW7+hFeG14N9Cr8=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "bf310cda4a09b79725c2919688881959ebf3229e",
|
"rev": "c1ddebb423acc7c88653c04de5ddafee64dac89a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -288,11 +288,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750371812,
|
"lastModified": 1753819801,
|
||||||
"narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=",
|
"narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-qtutils",
|
"repo": "hyprland-qtutils",
|
||||||
"rev": "b13c7481e37856f322177010bdf75fccacd1adc8",
|
"rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -317,11 +317,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750371198,
|
"lastModified": 1753622892,
|
||||||
"narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=",
|
"narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprlang",
|
"repo": "hyprlang",
|
||||||
"rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b",
|
"rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -342,11 +342,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753800567,
|
"lastModified": 1754481650,
|
||||||
"narHash": "sha256-W0xgXsaqGa/5/7IBzKNhf0+23MqGPymYYfqT7ECqeTE=",
|
"narHash": "sha256-6u6HdEFJh5gY6VfyMQbhP7zDdVcqOrCDTkbiHJmAtMI=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprutils",
|
"repo": "hyprutils",
|
||||||
"rev": "c65d41d4f4e6ded6fdb9d508a73e2fe90e55cdf7",
|
"rev": "df6b8820c4a0835d83d0c7c7be86fbc555f1f7fd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -382,11 +382,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1752687322,
|
"lastModified": 1754725699,
|
||||||
"narHash": "sha256-RKwfXA4OZROjBTQAl9WOZQFm7L8Bo93FQwSJpAiSRvo=",
|
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "6e987485eb2c77e5dcc5af4e3c70843711ef9251",
|
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -398,11 +398,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1753694789,
|
"lastModified": 1755027561,
|
||||||
"narHash": "sha256-cKgvtz6fKuK1Xr5LQW/zOUiAC0oSQoA9nOISB0pJZqM=",
|
"narHash": "sha256-IVft239Bc8p8Dtvf7UAACMG5P3ZV+3/aO28gXpGtMXI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "dc9637876d0dcc8c9e5e22986b857632effeb727",
|
"rev": "005433b926e16227259a1843015b5b2b7f7d1fc3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -422,11 +422,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1750779888,
|
"lastModified": 1754416808,
|
||||||
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
|
"narHash": "sha256-c6yg0EQ9xVESx6HGDOCMcyRSjaTpNJP10ef+6fRcofA=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
|
"rev": "9c52372878df6911f9afc1e2a1391f55e4dfc864",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -507,11 +507,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751300244,
|
"lastModified": 1753633878,
|
||||||
"narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=",
|
"narHash": "sha256-js2sLRtsOUA/aT10OCDaTjO80yplqwOIaLUqEe0nMx0=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a",
|
"rev": "371b96bd11ad2006ed4f21229dbd1be69bed3e8a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
time.timeZone = "Europe/Dublin";
|
time.timeZone = "Europe/Dublin";
|
||||||
|
# time.timeZone = "America/New_York";
|
||||||
|
|
||||||
i18n= {
|
i18n= {
|
||||||
defaultLocale = "en_US.UTF-8";
|
defaultLocale = "en_US.UTF-8";
|
||||||
|
|||||||
@@ -61,12 +61,10 @@ in
|
|||||||
outOfStoreSymlink = true;
|
outOfStoreSymlink = true;
|
||||||
recursive = true;
|
recursive = true;
|
||||||
};
|
};
|
||||||
|
".config/emacs" = {
|
||||||
# I have no idea why this is an issue...
|
source = ../../configs/emacs;
|
||||||
# ".config/emacs" = {
|
outOfStoreSymlink = true;
|
||||||
# source = ../../configs/emacs;
|
recursive = true;
|
||||||
# outOfStoreSymlink = true;
|
};
|
||||||
# recursive = true;
|
|
||||||
# };
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,10 +70,10 @@
|
|||||||
# ENV SETTINGS
|
# ENV SETTINGS
|
||||||
xdg.enable = true;
|
xdg.enable = true;
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"emacs" = {
|
# "emacs" = {
|
||||||
source = ../../configs/emacs;
|
# source = ../../configs/emacs;
|
||||||
recursive = true;
|
# recursive = true;
|
||||||
};
|
# };
|
||||||
|
|
||||||
"user-dirs.dirs".source = ../../configs/user-dirs.dirs;
|
"user-dirs.dirs".source = ../../configs/user-dirs.dirs;
|
||||||
"user-dirs.locale".source = ../../configs/user-dirs.locale;
|
"user-dirs.locale".source = ../../configs/user-dirs.locale;
|
||||||
|
|||||||
@@ -53,6 +53,7 @@
|
|||||||
slurp
|
slurp
|
||||||
swaynotificationcenter
|
swaynotificationcenter
|
||||||
swww
|
swww
|
||||||
|
teams-for-linux
|
||||||
texliveFull
|
texliveFull
|
||||||
xfce.thunar
|
xfce.thunar
|
||||||
xfce.thunar-volman
|
xfce.thunar-volman
|
||||||
|
|||||||
Reference in New Issue
Block a user