Update March 2022

This commit is contained in:
minhtrannhat 2022-03-24 16:46:01 -04:00
parent d38a777f75
commit 2d7feede1a
No known key found for this signature in database
GPG Key ID: 894C6A5801E01CA9
25 changed files with 464 additions and 639 deletions

View File

@ -1 +0,0 @@
alias mpv='mpv --gpu-context=wayland --hwdec=vaapi'

View File

@ -25,8 +25,20 @@ export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus export QT_IM_MODULE=ibus
export VDPAU_DRIVER=va_gl
export GPG_TYY=$(tty) export GPG_TYY=$(tty)
alias rm='rm -i'
alias nnn='nnn -e'
alias magit='emacs -nw --eval "(magit-status)"'
alias emac='emacsclient -nw'
gpgconf --launch gpg-agent
export EDITOR=/home/minhradz/.local/bin/lvim
export NVIM_LISTEN_ADDRESS=/tmp/nvimsocket
export MANPAGER="lvim +Man!"
export LC_ALL=en_US.UTF-8
eval "$(direnv hook bash)"
eval "$(starship init bash)" eval "$(starship init bash)"
export PATH="/home/minhradz/.cargo/bin;/home/minhradz/.local/bin;/home/minhradz/go/bin;/home/minhradz/.cabal/bin:$PATH"

161
cava/.config/cava/config Normal file
View File

@ -0,0 +1,161 @@
## Configuration file for CAVA. Default values are commented out. Use either ';' or '#' for commenting.
[general]
# Smoothing mode. Can be 'normal', 'scientific' or 'waves'. DEPRECATED as of 0.6.0
; mode = normal
# Accepts only non-negative values.
; framerate = 60
# 'autosens' will attempt to decrease sensitivity if the bars peak. 1 = on, 0 = off
# new as of 0.6.0 autosens of low values (dynamic range)
# 'overshoot' allows bars to overshoot (in % of terminal height) without initiating autosens. DEPRECATED as of 0.6.0
; autosens = 1
; overshoot = 20
# Manual sensitivity in %. If autosens is enabled, this will only be the initial value.
# 200 means double height. Accepts only non-negative values.
; sensitivity = 100
# The number of bars (0-200). 0 sets it to auto (fill up console).
# Bars' width and space between bars in number of characters.
; bars = 0
bar_width = 1
bar_spacing = 1
# Lower and higher cutoff frequencies for lowest and highest bars
# the bandwidth of the visualizer.
# Note: there is a minimum total bandwidth of 43Mhz x number of bars.
# Cava will automatically increase the higher cutoff if a too low band is specified.
; lower_cutoff_freq = 50
higher_cutoff_freq = 5000
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
; sleep_timer = 0
[input]
# Audio capturing method. Possible methods are: 'pulse', 'alsa', 'fifo', 'sndio' or 'shmem'
# Defaults to 'pulse', 'alsa' or 'fifo', in that order, dependent on what support cava was built with.
#
# All input methods uses the same config variable 'source'
# to define where it should get the audio.
#
# For pulseaudio 'source' will be the source. Default: 'auto', which uses the monitor source of the default sink
# (all pulseaudio sinks(outputs) have 'monitor' sources(inputs) associated with them).
#
# For alsa 'source' will be the capture device.
# For fifo 'source' will be the path to fifo-file.
# For shmem 'source' will be /squeezelite-AA:BB:CC:DD:EE:FF where 'AA:BB:CC:DD:EE:FF' will be squeezelite's MAC address
method = pulse
source = auto
; method = alsa
; source = hw:Loopback,1
; method = fifo
; source = /tmp/mpd.fifo
; sample_rate = 44100
; sample_bits = 16
; method = shmem
; source = /squeezelite-AA:BB:CC:DD:EE:FF
; method = portaudio
; source = auto
[output]
# Output method. Can be 'ncurses', 'noncurses' or 'raw'.
# 'noncurses' uses a custom framebuffer technique and draws only changes
# from frame to frame. 'ncurses' is default if supported
#
# 'raw' is an 8 or 16 bit (configurable via the 'bit_format' option) data
# stream of the bar heights that can be used to send to other applications.
# 'raw' defaults to 200 bars, which can be adjusted in the 'bars' option above.
; method = ncurses
# Visual channels. Can be 'stereo' or 'mono'.
# 'stereo' mirrors both channels with low frequencies in center.
# 'mono' outputs left to right lowest to highest frequencies.
# 'mono_option' set mono to either take input from 'left', 'right' or 'average'.
; channels = stereo
; mono_option = average
# Raw output target. A fifo will be created if target does not exist.
; raw_target = /dev/stdout
# Raw data format. Can be 'binary' or 'ascii'.
; data_format = binary
# Binary bit format, can be '8bit' (0-255) or '16bit' (0-65530).
; bit_format = 16bit
# Ascii max value. In 'ascii' mode range will run from 0 to value specified here
; ascii_max_range = 1000
# Ascii delimiters. In ascii format each bar and frame is separated by a delimiters.
# Use decimal value in ascii table (i.e. 59 = ';' and 10 = '\n' (line feed)).
; bar_delimiter = 59
; frame_delimiter = 10
[color]
# Colors can be one of seven predefined: black, blue, cyan, green, magenta, red, white, yellow.
# Or defined by hex code '#xxxxxx' (hex code must be within ''). User defined colors requires
# ncurses output method and a terminal that can change color definitions such as Gnome-terminal or rxvt.
# if supported, ncurses mode will be forced on if user defined colors are used.
# default is to keep current terminal color
background = default
foreground = green
# Gradient mode, only hex defined colors (and thereby ncurses mode) are supported,
# background must also be defined in hex or remain commented out. 1 = on, 0 = off.
# You can define as many as 8 different colors. They range from bottom to top of screen
gradient = 1
gradient_count = 4
gradient_color_4 = '#a9b665'
gradient_color_3 = '#d8a657'
gradient_color_2 = '#e78a4e'
gradient_color_1 = '#ea6962'
[smoothing]
# Percentage value for integral smoothing. Takes values from 0 - 100.
# Higher values means smoother, but less precise. 0 to disable.
integral = 60
# Disables or enables the so-called "Monstercat smoothing" with or without "waves". Set to 0 to disable.
monstercat = 1
waves = 0
# Set gravity percentage for "drop off". Higher values means bars will drop faster.
# Accepts only non-negative values. 50 means half gravity, 200 means double. Set to 0 to disable "drop off".
; gravity = 100
# In bar height, bars that would have been lower that this will not be drawn.
; ignore = 0
[eq]
# This one is tricky. You can have as much keys as you want.
# Remember to uncomment more then one key! More keys = more precision.
# Look at readme.md on github for further explanations and examples.
; 1 = 1 # bass
; 2 = 1
; 3 = 1 # midtone
; 4 = 1
; 5 = 1 # treble

View File

@ -5,213 +5,72 @@
;; Some functionality uses this to identify you, e.g. GPG configuration, email ;; Some functionality uses this to identify you, e.g. GPG configuration, email
;; clients, file templates and snippets. ;; clients, file templates and snippets. It is optional.
(setq user-full-name "minhtrannhat" (setq user-full-name "John Doe"
user-mail-address "minhtrannhat@tutanota.com") user-mail-address "john@doe.com")
;; Doom exposes five (optional) variables for controlling fonts in Doom. Here ;; Doom exposes five (optional) variables for controlling fonts in Doom:
;; are the three important ones:
;; ;;
;; + `doom-font' ;; - `doom-font' -- the primary font to use
;; + `doom-variable-pitch-font' ;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
;; + `doom-big-font' -- used for `doom-big-font-mode'; use this for ;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
;; presentations or streaming. ;; presentations or streaming.
(setq doom-font (font-spec :family "JetBrainsMono Nerd Font" :size 18) ;; - `doom-unicode-font' -- for unicode glyphs
doom-big-font (font-spec :family "JetBrainsMono Nerd Font" :size 26) ;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
doom-variable-pitch-font (font-spec :family "Overpass" :size 16) ;;
doom-unicode-font (font-spec :family "JuliaMono") ;; See 'C-h v doom-font' for documentation and more examples of what they
doom-serif-font (font-spec :family "IBM Plex Mono" :weight 'light)) ;; accept. For example:
;;
;;(setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light)
;; doom-variable-pitch-font (font-spec :family "Fira Sans" :size 13))
;;
;; If you or Emacs can't find your font, use 'M-x describe-font' to look them
;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to
;; refresh your font settings. If Emacs still can't find your font, it likely
;; wasn't installed correctly. Font issues are rarely Doom issues!
(setq doom-emoji-fallback-font-families nil) ;; There are two ways to load a theme. Both assume the theme is installed and
(setq doom-symbol-fallback-font-families nil) ;; 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-one)
(setq fancy-splash-image "/home/minhradz/.doom.d/marivector.png") ;; 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'.
(defun synchronize-theme () (setq display-line-numbers-type t)
(let* ((light-theme 'doom-gruvbox-light)
(dark-theme 'doom-gruvbox)
(start-time-light-theme 6)
(end-time-light-theme 16)
(hour (string-to-number (substring (current-time-string) 11 13)))
(next-theme (if (member hour (number-sequence start-time-light-theme end-time-light-theme))
light-theme dark-theme)))
(when (not (equal doom-theme next-theme))
(setq doom-theme next-theme)
(load-theme next-theme t))))
(setq doom-nord-light-region-highlight 't)
(run-with-timer 0 900 'synchronize-theme)
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
doom-themes-enable-italic t) ; if nil, italics is universally disabled
(with-eval-after-load 'doom-themes
(doom-themes-treemacs-config))
(setq doom-themes-treemacs-theme "doom-colors")
;; 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!
(setq org-directory "~/org/") (setq org-directory "~/org/")
(setq display-line-numbers-type 'relative)
(add-hook 'spell-fu-mode-hook ;; Whenever you reconfigure a package, make sure to wrap your config in an
(lambda () ;; `after!' block, otherwise Doom's defaults may override your settings. E.g.
(spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en")) ;;
(spell-fu-dictionary-add ;; (after! PACKAGE
(spell-fu-get-personal-dictionary "en-personal" "/home/minhradz/.aspell.en.pws")))) ;; (setq x y))
;;
;; Clangd lsp for C/C++ dev ;; The exceptions to this rule:
(setq lsp-clients-clangd-args '("-j=3" ;;
"--background-index" ;; - Setting file/directory variables (like `org-directory')
"--clang-tidy" ;; - Setting variables which explicitly tell you to set them before their
"--completion-style=detailed" ;; package is loaded (see 'C-h v VARIABLE' to look up their documentation).
"--header-insertion=never" ;; - Setting doom variables (which start with 'doom-' or '+').
"--header-insertion-decorators=0")) ;;
(after! lsp-clangd (set-lsp-priority! 'clangd 2)) ;; Here are some additional functions/macros that will help you configure Doom.
;;
;; I mindlessly press ESC, so stop me from wreaking havoc ;; - `load!' for loading external *.el files relative to this one
(global-set-key (kbd "<escape>") 'keyboard-escape-quit) ;; - `use-package!' for configuring packages
;; - `after!' for running code after a package has loaded
;; update the git gutter ;; - `add-load-path!' for adding directories to the `load-path', relative to
(custom-set-variables ;; this file. Emacs searches the `load-path' when you load packages with
'(git-gutter:update-interval 0.02)) ;; `require' or `use-package'.
;; - `map!' for binding new keys
;; ;; tree-sitter syntax highlighting ;;
;; (use-package! tree-sitter ;; To get information about any of these functions/macros, move the cursor over
;; :config ;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
;; (require 'tree-sitter-langs) ;; This will open documentation for it, including demos of how they are used.
;; (global-tree-sitter-mode) ;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces,
;; (add-hook 'tree-sitter-after-on-hook #'tree-sitter-hl-mode)) ;; etc).
;;
;; gpg ;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
(setq epg-pinentry-mode 'loopback) ;; they are implemented.
;; both jk and kj now works
(setq evil-escape-unordered-key-sequence 't)
;; org org
(setq +latex-viewers '(zathura))
;; fish fish
(setq vterm-shell 'fish)
(defun doom-modeline-conditional-buffer-encoding ()
"We expect the encoding to be LF UTF-8, so only show the modeline when this is not the case"
(setq-local doom-modeline-buffer-encoding
(unless (and (memq (plist-get (coding-system-plist buffer-file-coding-system) :category)
'(coding-category-undecided coding-category-utf-8))
(not (memq (coding-system-eol-type buffer-file-coding-system) '(1 2))))
t)))
(add-hook 'after-change-major-mode-hook #'doom-modeline-conditional-buffer-encoding)
(after! company
(setq company-idle-delay 1)
(add-hook 'evil-normal-state-entry-hook #'company-abort)) ;; make aborting less annoying.
(use-package all-the-icons-ivy-rich
:init (all-the-icons-ivy-rich-mode 1))
(use-package ivy-rich
:init (ivy-rich-mode 1))
(setq-default history-length 1000)
(setq-default prescient-history-length 1000)
;; Whether display the icon for `major-mode'. It respects `doom-modeline-icon'.
(setq doom-modeline-major-mode-icon t)
;; Whether display the colorful icon for `major-mode'.
;; It respects `all-the-icons-color-icons'.
(setq doom-modeline-major-mode-color-icon t)
;; Whether display the icon for the buffer state. It respects `doom-modeline-icon'.
(setq doom-modeline-buffer-state-icon t)
;; Whether display the modification icon for the buffer.
;; It respects `doom-modeline-icon' and `doom-modeline-buffer-state-icon'.
(setq doom-modeline-buffer-modification-icon t)
;; Whether to use unicode as a fallback (instead of ASCII) when not using icons.
(setq doom-modeline-unicode-fallback nil)
;; Whether display the minor modes in the mode-line.
(setq doom-modeline-minor-modes nil)
(use-package! websocket
:after org-roam)
(use-package! org-roam-ui
:after org-roam
:config
(setq org-roam-ui-sync-theme t
org-roam-ui-follow t
org-roam-ui-update-on-save t
org-roam-ui-open-on-start t))
(setq org-roam-dailies-directory "daily/")
(setq org-roam-dailies-capture-templates
'(("d" "default" entry
"* %?"
:target (file+head "%<%Y-%m-%d>.org"
"#+title: %<%Y-%m-%d>\n* What I did today\n* What was on my mind"))))
(defun org-roam-rg-search ()
"Search org-roam directory using consult-ripgrep. With live-preview."
(interactive)
(let ((consult-ripgrep-command "rg --null --ignore-case --type org --line-buffered --color=always --max-columns=500 --no-heading --line-number . -e ARG OPTS"))
(consult-ripgrep org-roam-directory)))
(map! :leader
:desc "Search org-roam with consult-ripgrep"
"n r F" #'org-roam-rg-search)
;; Function for inserting node into Org Roam
(defun org-roam-node-insert-immediate (arg &rest args)
(interactive "P")
(let ((args (cons arg args))
(org-roam-capture-templates (list (append (car org-roam-capture-templates)
'(:immediate-finish t)))))
(apply #'org-roam-node-insert args)))
(map! :leader
:desc "Insert node immediately"
"n r I" #'org-roam-node-insert-immediate)
(setq avy-all-windows 't)
;; Disables lsp-signature-auto-activate
;; Looking at you, rustic mode
(after! lsp-mode
(setq lsp-signature-auto-activate nil))
;; this never worked lol
(lsp-treemacs-sync-mode 1)
;; bitmap very funni
(setq highlight-indent-guides-method 'bitmap)
;; magit delta looks so good
(add-hook 'magit-mode-hook (lambda () (magit-delta-mode +1)))
;; keybind to disable search highlighting (like :set noh)
(map! :leader
:desc "Clear search highlight"
"s c"
#'evil-ex-nohighlight)
;; We do a little bit of finger pointing
(use-package blamer
:bind (("s-i" . blamer-show-commit-info))
:defer 20
:custom
(blamer-idle-time 0.3)
(blamer-min-offset 40)
:custom-face
(blamer-face ((t :foreground "#7a88cf"
:background nil
:height 110
:italic t)))
:config
(global-blamer-mode 1))

View File

@ -1,29 +0,0 @@
(put 'customize-group 'disabled nil)
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(TeX-command-BibTeX "Biber")
'(custom-safe-themes
'("7eea50883f10e5c6ad6f81e153c640b3a288cd8dc1d26e4696f7d40f754cc703" "5784d048e5a985627520beb8a101561b502a191b52fa401139f4dd20acb07607" "e3b2bad7b781a968692759ad12cb6552bc39d7057762eefaf168dbe604ce3a4b" "1704976a1797342a1b4ea7a75bdbb3be1569f4619134341bd5a4c1cfb16abad4" "d268b67e0935b9ebc427cad88ded41e875abfcc27abd409726a92e55459e0d01" default))
'(git-gutter:update-interval 1)
'(smtpmail-smtp-server "smtp.gmail.com")
'(smtpmail-smtp-service 25)
'(warning-suppress-log-types '((iedit) (iedit) (iedit) (iedit) (iedit) (iedit) (iedit)))
'(warning-suppress-types
'((org-element-cache)
(org-load-hook)
(org-load-hook)
(iedit)
(iedit)
(iedit)
(iedit)
(iedit)
(iedit))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)

View File

@ -1,9 +1,11 @@
;;; init.el -*- lexical-binding: t; -*- ;;; init.el -*- lexical-binding: t; -*-
;; This file controls what Doom modules are enabled and what order they load ;; This file controls what Doom modules are enabled and what order they load
;; in. Remember to run 'doom sync' after modifying it! ;; in. Remember to run 'doom sync' after modifying it!
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's ;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
;; documentation. There you'll find a "Module Index" link where you'll find ;; documentation. There you'll find a link to Doom's Module Index where all
;; a comprehensive list of Doom's modules and what flags they support. ;; of our modules are listed, including what flags they support.
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or ;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
;; 'C-c c k' for non-vim users) to view its documentation. This works on ;; 'C-c c k' for non-vim users) to view its documentation. This works on
@ -21,42 +23,42 @@
company ; the ultimate code completion backend company ; the ultimate code completion backend
;;helm ; the *other* search engine for love and life ;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine... ;;ido ; the other *other* search engine...
ivy ; a search engine for love and life ;;ivy ; a search engine for love and life
;;vertico ; the search engine of the future vertico ; the search engine of the future
:ui :ui
;;deft ; notational velocity for Emacs ;;deft ; notational velocity for Emacs
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
doom-quit ; DOOM quit-message prompts when you quit Emacs doom-quit ; DOOM quit-message prompts when you quit Emacs
(emoji +unicode) ; 🙂 ;;(emoji +unicode) ; 🙂
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
;;hydra ;;hydra
indent-guides ; highlighted indent columns ;;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 ;;minimap ; show a map of the code on the side
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
;;neotree ; a project drawer, like NERDTree for vim ;;neotree ; a project drawer, like NERDTree for vim
ophints ; highlight the region an operation acts on ophints ; highlight the region an operation acts on
(popup +defaults) ; tame sudden yet inevitable temporary windows (popup +defaults) ; tame sudden yet inevitable temporary windows
;;tabs ; a tab bar for Emacs ;;tabs ; a tab bar for Emacs
(treemacs +lsp) ; a project drawer, like neotree but cooler ;;treemacs ; a project drawer, like neotree but cooler
unicode ; extended unicode support for various languages ;;unicode ; extended unicode support for various languages
vc-gutter ; vcs diff in the fringe vc-gutter ; vcs diff in the fringe
vi-tilde-fringe ; fringe tildes to mark beyond EOB vi-tilde-fringe ; fringe tildes to mark beyond EOB
(window-select +numbers) ; 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
(evil +everywhere); come to the dark side, we have cookies (evil +everywhere); come to the dark side, we have cookies
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
;;god ; run Emacs commands without modifier keys ;;god ; run Emacs commands without modifier keys
;;lispy ; vim for lisp, for people who don't like vim ;;lispy ; vim for lisp, for people who don't like vim
multiple-cursors ; editing in many places at once ;;multiple-cursors ; editing in many places at once
;;objed ; text object editing for the innocent ;;objed ; text object editing for the innocent
;;parinfer ; turn lisp into python, sort of ;;parinfer ; turn lisp into python, sort of
;;rotate-text ; cycle region at point between text candidates ;;rotate-text ; cycle region at point between text candidates
@ -64,114 +66,115 @@
;;word-wrap ; soft wrapping with language-aware indent ;;word-wrap ; soft wrapping with language-aware indent
:emacs :emacs
(dired +icons +ranger) ; making dired pretty [functional] dired ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent electric ; smarter, keyword-based electric-indent
ibuffer ; interactive buffer management ;;ibuffer ; 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
eshell ; the elisp shell that works everywhere ;;eshell ; the elisp shell that works everywhere
;;shell ; simple shell REPL for Emacs ;;shell ; simple shell REPL for Emacs
;;term ; basic terminal emulator for Emacs ;;term ; basic terminal emulator for Emacs
vterm ; the best terminal emulation in Emacs ;;vterm ; the best terminal emulation in Emacs
:checkers :checkers
syntax ; tasing you for every semicolon you forget syntax ; tasing you for every semicolon you forget
(spell +everywhere +aspell); tasing you for misspelling mispelling ;;(spell +flyspell) ; tasing you for misspelling mispelling
;;grammar ; tasing grammar mistake every you make ;;grammar ; tasing grammar mistake every you make
:tools :tools
;;ansible ;;ansible
;;biblio ; Writes a PhD for you (citation needed)
;;debugger ; FIXME stepping through code, to help you add bugs ;;debugger ; FIXME stepping through code, to help you add bugs
direnv ;;direnv
(docker +lsp) ;;docker
;;editorconfig ; let someone else argue about tabs vs spaces ;;editorconfig ; let someone else argue about tabs vs spaces
ein ; tame Jupyter notebooks with emacs ;;ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls) (eval +overlay) ; run code, run (also, repls)
gist ; interacting with github gists ;;gist ; interacting with github gists
(lookup +dictionary + docsets +offline) ; 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 ; a git porcelain for Emacs
make ; run make tasks from Emacs ;;make ; run make tasks from Emacs
(pass +auth) ; password manager for nerds ;;pass ; password manager for nerds
pdf ; pdf enhancements ;;pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders ;;prodigy ; FIXME managing external services & code builders
;;rgb ; creating color strings ;;rgb ; creating color strings
taskrunner ; taskrunner for all your projects ;;taskrunner ; taskrunner for all your projects
;;terraform ; infrastructure as code ;;terraform ; infrastructure as code
tmux ; an API for interacting with tmux ;;tmux ; an API for interacting with tmux
;;upload ; map local to remote projects via ssh/ftp ;;upload ; map local to remote projects via ssh/ftp
:os :os
;;(:if IS-MAC macos) ; improve compatibility with macOS (:if IS-MAC macos) ; improve compatibility with macOS
tty ; improve the terminal Emacs experience ;;tty ; improve the terminal Emacs experience
:lang :lang
;;agda ; types of types of types of types... ;;agda ; types of types of types of types...
;;beancount ; mind the GAAP ;;beancount ; mind the GAAP
(cc +lsp) ; C > C++ == 1 ;;(cc +lsp) ; C > C++ == 1
clojure ; java with a lisp ;;clojure ; java with a lisp
common-lisp ; if you've seen one lisp, you've seen them all ;;common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs ;;coq ; proofs-as-programs
;;crystal ; ruby at the speed of c ;;crystal ; ruby at the speed of c
csharp ; unity, .NET, and mono shenanigans ;;csharp ; unity, .NET, and mono shenanigans
;;data ; config/data formats ;;data ; config/data formats
;;(dart +flutter) ; paint ui and not much else ;;(dart +flutter) ; paint ui and not much else
;;dhall ;;dhall
elixir ; erlang done right ;;elixir ; erlang done right
;;elm ; care for a cup of TEA? ;;elm ; care for a cup of TEA?
emacs-lisp ; drown in parentheses emacs-lisp ; drown in parentheses
(erlang +lsp) ; an elegant language for a more civilized age ;;erlang ; an elegant language for a more civilized age
;;ess ; emacs speaks statistics ;;ess ; emacs speaks statistics
;;factor ;;factor
;;faust ; dsp, but you get to keep your soul ;;faust ; dsp, but you get to keep your soul
;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
;;fsharp ; ML stands for Microsoft's Language ;;fsharp ; ML stands for Microsoft's Language
;;fstar ; (dependent) types and (monadic) effects and Z3 ;;fstar ; (dependent) types and (monadic) effects and Z3
;;gdscript ; the language you waited for ;;gdscript ; the language you waited for
(go +lsp) ; the hipster dialect ;;(go +lsp) ; the hipster dialect
(haskell +lsp) ; a language that's lazier than I am ;;(haskell +lsp) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python ;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on ;;idris ; a language you can depend on
(json +lsp) ; At least it ain't XML ;;json ; At least it ain't XML
(java +lsp) ; the poster child for carpal tunnel syndrome ;;(java +lsp) ; the poster child for carpal tunnel syndrome
javascript ; all(hope(abandon(ye(who(enter(here)))))) ;;javascript ; all(hope(abandon(ye(who(enter(here))))))
(julia +lsp) ; a better, faster MATLAB ;;julia ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script) ;;kotlin ; a better, slicker Java(Script)
latex ; writing papers in Emacs has never been so fun ;;latex ; writing papers in Emacs has never been so fun
;;lean ; for folks with too much to prove ;;lean ; for folks with too much to prove
;;ledger ; be audit you can be ;;ledger ; be audit you can be
lua ; one-based indices? one-based indices ;;lua ; one-based indices? one-based indices
markdown ; writing docs for people to ignore markdown ; writing docs for people to ignore
;;nim ; python + lisp at the speed of c ;;nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!" ;;nix ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel ;;ocaml ; an objective camel
;;(org +roam2 +pretty) ; organize your plain life in plain text org ; organize your plain life in plain text
(org +roam2) ; organize your plain life in plain text
;;php ; perl's insecure younger brother ;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more ;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional ;;purescript ; javascript, but functional
(python +lsp +pyright +pyenv +poetry) ;;python ; beautiful is better than ugly
;;qt ; the 'cutest' gui framework ever ;;qt ; the 'cutest' gui framework ever
;;racket ; a DSL for DSLs ;;racket ; a DSL for DSLs
;;raku ; the artist formerly known as perl6 ;;raku ; the artist formerly known as perl6
rest ; Emacs as a REST client ;;rest ; Emacs as a REST client
;;rst ; ReST in peace ;;rst ; ReST in peace
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() ;;rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
scala ; java, but good ;;scala ; java, but good
(scheme +guile +mit +racket) ; a fully conniving family of lisps ;;(scheme +guile) ; a fully conniving family of lisps
sh ; she sells {ba,z,fi}sh shells on the C xor sh ; she sells {ba,z,fi}sh shells on the C xor
;;sml ;;sml
;;solidity ; do you need a blockchain? No. ;;solidity ; do you need a blockchain? No.
;;swift ; who asked for emoji variables? ;;swift ; who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance. ;;terra ; Earth and Moon in alignment for performance.
(web +lsp) ; the tubes ;;web ; the tubes
yaml ; JSON, but readable ;;yaml ; JSON, but readable
;;zig ; C, but simpler ;;zig ; C, but simpler
:email :email
;;(mu4e +gmail +org) ;;(mu4e +org +gmail)
;;notmuch ;;notmuch
;;(wanderlust +gmail) ;;(wanderlust +gmail)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

View File

@ -48,13 +48,3 @@
;(unpin! pinned-package another-pinned-package) ;(unpin! pinned-package another-pinned-package)
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things) ;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
;(unpin! t) ;(unpin! t)
;;(package! elcord)
(package! tree-sitter)
(package! tree-sitter-langs)
(unpin! org-roam)
(package! websocket)
(package! org-roam-ui :recipe (:host github :repo "org-roam/org-roam-ui" :files ("*.el" "out")))
(package! magit-delta)
(package! blamer :recipe (:host github :repo "artawower/blamer.el"))
(package! all-the-icons-ivy-rich)
(package! ivy-rich)

View File

@ -1,7 +0,0 @@
complete --command fisher --exclusive --long help --description "Print help"
complete --command fisher --exclusive --long version --description "Print version"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments install --description "Install plugins"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments update --description "Update installed plugins"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments remove --description "Remove installed plugins"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments list --description "List installed plugins matching regex"
complete --command fisher --exclusive --condition "__fish_seen_subcommand_from update remove" --arguments "(fisher list)"

View File

@ -1,5 +1,8 @@
set fish_greeting set fish_greeting
theme_gruvbox dark medium fish_vi_key_bindings
set fish_bind_mode insert
theme_gruvbox dark hard
alias rm 'rm -i' alias rm 'rm -i'
alias nnn 'nnn -e' alias nnn 'nnn -e'
@ -24,8 +27,6 @@ set -gx XDG_CURRENT_DESKTOP sway
set -gx MOZ_ENABLE_WAYLAND 1 set -gx MOZ_ENABLE_WAYLAND 1
set -gx QT_AUTO_SCREEN_SCALE_FACTOR 1 set -gx QT_AUTO_SCREEN_SCALE_FACTOR 1
set -gx VDPAU_DRIVER va_gl
set -Ux GTK_IM_MODULE ibus set -Ux GTK_IM_MODULE ibus
set -Ux QT_IM_MODULE ibus set -Ux QT_IM_MODULE ibus
set -Ux XMODIFIERS @im=ibus set -Ux XMODIFIERS @im=ibus

View File

@ -1,2 +0,0 @@
jorgebucaran/fisher
jomik/fish-gruvbox

View File

@ -2,37 +2,35 @@
# VERSION: 3.0 # VERSION: 3.0
SETUVAR --export GTK_IM_MODULE:ibus SETUVAR --export GTK_IM_MODULE:ibus
SETUVAR --export QT_IM_MODULE:ibus SETUVAR --export QT_IM_MODULE:ibus
SETUVAR --export SSH_AGENT_PID:946 SETUVAR --export SSH_AGENT_PID:1235
SETUVAR --export SSH_AUTH_SOCK:/tmp/ssh\x2dXXXXXX6HJbdl/agent\x2e945 SETUVAR --export SSH_AUTH_SOCK:/tmp/ssh\x2dXXXXXXRu0Qxq/agent\x2e1234
SETUVAR --export XMODIFIERS:\x40im\x3dibus SETUVAR --export XMODIFIERS:\x40im\x3dibus
SETUVAR __fish_initialized:3100 SETUVAR __fish_initialized:3100
SETUVAR _fisher_jomik_2F_fish_2D_gruvbox_files:/home/minhradz/\x2econfig/fish/functions/theme_gruvbox\x2efish SETUVAR fish_color_autosuggestion:93a1a1
SETUVAR _fisher_jorgebucaran_2F_fisher_files:/home/minhradz/\x2econfig/fish/functions/fisher\x2efish\x1e/home/minhradz/\x2econfig/fish/completions/fisher\x2efish
SETUVAR _fisher_plugins:jorgebucaran/fisher\x1ejomik/fish\x2dgruvbox
SETUVAR fish_color_autosuggestion:555\x1ebrblack
SETUVAR fish_color_cancel:\x2dr SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:005fd7 SETUVAR fish_color_command:586e75
SETUVAR fish_color_comment:990000 SETUVAR fish_color_comment:93a1a1
SETUVAR fish_color_cwd:green SETUVAR fish_color_cwd:green
SETUVAR fish_color_cwd_root:red SETUVAR fish_color_cwd_root:red
SETUVAR fish_color_end:009900 SETUVAR fish_color_end:268bd2
SETUVAR fish_color_error:ff0000 SETUVAR fish_color_error:dc322f
SETUVAR fish_color_escape:00a6b2 SETUVAR fish_color_escape:00a6b2
SETUVAR fish_color_history_current:\x2d\x2dbold SETUVAR fish_color_history_current:\x2d\x2dbold
SETUVAR fish_color_host:normal SETUVAR fish_color_host:normal
SETUVAR fish_color_host_remote:yellow SETUVAR fish_color_host_remote:yellow
SETUVAR fish_color_match:\x2d\x2dbackground\x3dbrblue
SETUVAR fish_color_normal:normal SETUVAR fish_color_normal:normal
SETUVAR fish_color_operator:00a6b2 SETUVAR fish_color_operator:00a6b2
SETUVAR fish_color_param:00afff SETUVAR fish_color_param:657b83
SETUVAR fish_color_quote:999900 SETUVAR fish_color_quote:839496
SETUVAR fish_color_redirection:00afff SETUVAR fish_color_redirection:6c71c4
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dwhite
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_status:red SETUVAR fish_color_status:red
SETUVAR fish_color_user:brgreen SETUVAR fish_color_user:brgreen
SETUVAR fish_color_valid_path:\x2d\x2dunderline SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_key_bindings:fish_default_key_bindings SETUVAR fish_key_bindings:fish_vi_key_bindings
SETUVAR fish_pager_color_completion:\x1d SETUVAR fish_pager_color_completion:green
SETUVAR fish_pager_color_description:B3A06D\x1eyellow SETUVAR fish_pager_color_description:B3A06D
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline SETUVAR fish_pager_color_prefix:cyan\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan

View File

@ -1,211 +0,0 @@
function fisher --argument-names cmd --description "A plugin manager for Fish"
set --query fisher_path || set --local fisher_path $__fish_config_dir
set --local fisher_version 4.3.1
set --local fish_plugins $__fish_config_dir/fish_plugins
switch "$cmd"
case -v --version
echo "fisher, version $fisher_version"
case "" -h --help
echo "Usage: fisher install <plugins...> Install plugins"
echo " fisher remove <plugins...> Remove installed plugins"
echo " fisher update <plugins...> Update installed plugins"
echo " fisher update Update all installed plugins"
echo " fisher list [<regex>] List installed plugins matching regex"
echo "Options:"
echo " -v or --version Print version"
echo " -h or --help Print this help message"
echo "Variables:"
echo " \$fisher_path Plugin installation path. Default: ~/.config/fish"
case ls list
string match --entire --regex -- "$argv[2]" $_fisher_plugins
case install update remove
isatty || read --local --null --array stdin && set --append argv $stdin
set --local install_plugins
set --local update_plugins
set --local remove_plugins
set --local arg_plugins $argv[2..-1]
set --local old_plugins $_fisher_plugins
set --local new_plugins
if ! set --query argv[2]
if test "$cmd" != update
echo "fisher: Not enough arguments for command: \"$cmd\"" >&2 && return 1
else if test ! -e $fish_plugins
echo "fisher: \"$fish_plugins\" file not found: \"$cmd\"" >&2 && return 1
end
set arg_plugins (string match --regex -- '^[^\s]+$' <$fish_plugins)
end
for plugin in $arg_plugins
test -e "$plugin" && set plugin (realpath $plugin)
contains -- "$plugin" $new_plugins || set --append new_plugins $plugin
end
if set --query argv[2]
for plugin in $new_plugins
if contains -- "$plugin" $old_plugins
test "$cmd" = remove &&
set --append remove_plugins $plugin ||
set --append update_plugins $plugin
else if test "$cmd" = install
set --append install_plugins $plugin
else
echo "fisher: Plugin not installed: \"$plugin\"" >&2 && return 1
end
end
else
for plugin in $new_plugins
contains -- "$plugin" $old_plugins &&
set --append update_plugins $plugin ||
set --append install_plugins $plugin
end
for plugin in $old_plugins
contains -- "$plugin" $new_plugins || set --append remove_plugins $plugin
end
end
set --local pid_list
set --local source_plugins
set --local fetch_plugins $update_plugins $install_plugins
echo (set_color --bold)fisher $cmd version $fisher_version(set_color normal)
for plugin in $fetch_plugins
set --local source (command mktemp -d)
set --append source_plugins $source
command mkdir -p $source/{completions,conf.d,functions}
fish --command "
if test -e $plugin
command cp -Rf $plugin/* $source
else
set temp (command mktemp -d)
set name (string split \@ $plugin) || set name[2] HEAD
set url https://codeload.github.com/\$name[1]/tar.gz/\$name[2]
echo Fetching (set_color --underline)\$url(set_color normal)
if curl --silent \$url | tar -xzC \$temp -f - 2>/dev/null
command cp -Rf \$temp/*/* $source
else
echo fisher: Invalid plugin name or host unavailable: \\\"$plugin\\\" >&2
command rm -rf $source
end
command rm -rf \$temp
end
set files $source/* && string match --quiet --regex -- .+\.fish\\\$ \$files
" &
set --append pid_list (jobs --last --pid)
end
wait $pid_list 2>/dev/null
for plugin in $fetch_plugins
if set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)] && test ! -e $source
if set --local index (contains --index -- "$plugin" $install_plugins)
set --erase install_plugins[$index]
else
set --erase update_plugins[(contains --index -- "$plugin" $update_plugins)]
end
end
end
for plugin in $update_plugins $remove_plugins
if set --local index (contains --index -- "$plugin" $_fisher_plugins)
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
if contains -- "$plugin" $remove_plugins
for name in (string replace --filter --regex -- '.+/conf\.d/([^/]+)\.fish$' '$1' $$plugin_files_var)
emit {$name}_uninstall
end
printf "%s\n" Removing\ (set_color red --bold)$plugin(set_color normal) " "$$plugin_files_var
end
command rm -rf $$plugin_files_var
functions --erase (string replace --filter --regex -- '.+/functions/([^/]+)\.fish$' '$1' $$plugin_files_var)
for name in (string replace --filter --regex -- '.+/completions/([^/]+)\.fish$' '$1' $$plugin_files_var)
complete --erase --command $name
end
set --erase _fisher_plugins[$index]
set --erase $plugin_files_var
end
end
if set --query update_plugins[1] || set --query install_plugins[1]
command mkdir -p $fisher_path/{functions,conf.d,completions}
end
for plugin in $update_plugins $install_plugins
set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)]
set --local files $source/{functions,conf.d,completions}/*
if set --local index (contains --index -- $plugin $install_plugins)
set --local user_files $fisher_path/{functions,conf.d,completions}/*
set --local conflict_files
for file in (string replace -- $source/ $fisher_path/ $files)
contains -- $file $user_files && set --append conflict_files $file
end
if set --query conflict_files[1] && set --erase install_plugins[$index]
echo -s "fisher: Cannot install \"$plugin\": please remove or move conflicting files first:" \n" "$conflict_files >&2
continue
end
end
for file in (string replace -- $source/ "" $files)
command cp -Rf $source/$file $fisher_path/$file
end
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
set --query files[1] && set --universal $plugin_files_var (string replace -- $source $fisher_path $files)
contains -- $plugin $_fisher_plugins || set --universal --append _fisher_plugins $plugin
contains -- $plugin $install_plugins && set --local event install || set --local event update
printf "%s\n" Installing\ (set_color --bold)$plugin(set_color normal) " "$$plugin_files_var
for file in (string match --regex -- '.+/[^/]+\.fish$' $$plugin_files_var)
source $file
if set --local name (string replace --regex -- '.+conf\.d/([^/]+)\.fish$' '$1' $file)
emit {$name}_$event
end
end
end
command rm -rf $source_plugins
set --query _fisher_plugins[1] || set --erase _fisher_plugins
set --query _fisher_plugins &&
printf "%s\n" $_fisher_plugins >$fish_plugins ||
command rm -f $fish_plugins
set --local total (count $install_plugins) (count $update_plugins) (count $remove_plugins)
test "$total" != "0 0 0" && echo (string join ", " (
test $total[1] = 0 || echo "Installed $total[1]") (
test $total[2] = 0 || echo "Updated $total[2]") (
test $total[3] = 0 || echo "Removed $total[3]")
) plugin/s
case \*
echo "fisher: Unknown command: \"$cmd\"" >&2 && return 1
end
end
## Migrations ##
function _fisher_fish_postexec --on-event fish_postexec
if functions --query _fisher_list
fisher update >/dev/null 2>/dev/null
set --query XDG_DATA_HOME || set --local XDG_DATA_HOME ~/.local/share
test -e $XDG_DATA_HOME/fisher && command rm -rf $XDG_DATA_HOME/fisher
functions --erase _fisher_list _fisher_plugin_parse
set --erase fisher_data
end
functions --erase _fisher_fish_postexec
end

View File

@ -19,8 +19,6 @@
[delta] [delta]
side-by-side = true side-by-side = true
line-numbers = true line-numbers = true
plus-style = "syntax #012800"
minus-style = "syntax #340001"
syntax-theme = gruvbox-dark syntax-theme = gruvbox-dark
navigate = true navigate = true

View File

@ -1,55 +0,0 @@
# Based on https://github.com/morhetz/gruvbox by morhetz <morhetz@gmail.com>
# Adapted to kitty by wdomitrz <witekdomitrz@gmail.com>
cursor #928374
cursor_text_color background
url_color #83a598
visual_bell_color #8ec07c
bell_border_color #8ec07c
active_border_color #d3869b
inactive_border_color #665c54
background #282828
foreground #fbf1c7
selection_foreground #928374
selection_background #ebdbb2
active_tab_foreground #fbf1c7
active_tab_background #665c54
inactive_tab_foreground #a89984
inactive_tab_background #3c3836
# black
color0 #282828
color8 #7c6f64
# red
color1 #cc241d
color9 #fb4934
#: green
color2 #98971a
color10 #b8bb26
# yellow
color3 #d79921
color11 #fabd2f
# blue
color4 #458588
color12 #83a598
# purple
color5 #b16286
color13 #d3869b
# aqua
color6 #689d6a
color14 #8ec07c
# white
color7 #a89984
color15 #fbf1c7

View File

@ -0,0 +1,55 @@
# Based on https://github.com/morhetz/gruvbox by morhetz <morhetz@gmail.com>
# Adapted to kitty by wdomitrz <witekdomitrz@gmail.com>
cursor #928374
cursor_text_color background
url_color #458588
visual_bell_color #689d6a
bell_border_color #689d6a
active_border_color #b16286
inactive_border_color #1d2021
background #fbf1c7
foreground #282828
selection_foreground #928374
selection_background #3c3836
active_tab_foreground #282828
active_tab_background #928374
inactive_tab_foreground #7c6f64
inactive_tab_background #ebdbb2
# white
color0 #fbf1c7
color8 #282828
# red
color1 #cc241d
color9 #9d0006
# green
color2 #98971a
color10 #79740e
# yellow
color3 #d79921
color11 #b57614
# blue
color4 #458588
color12 #076678
# purple
color5 #b16286
color13 #8f3f71
# aqua
color6 #689d6a
color14 #427b58
# black
color7 #7c6f64
color15 #282828

View File

@ -2,7 +2,7 @@ term xterm-kitty
shell fish shell fish
font_family JetBrainsMono Nerd Font Mono font_family JetBrainsMono Nerd Font
bold_font auto bold_font auto
italic_font auto italic_font auto
bold_italic_font auto bold_italic_font auto
@ -46,4 +46,4 @@ map ctrl+right neighboring_window right
map ctrl+up neighboring_window up map ctrl+up neighboring_window up
map ctrl+down neighboring_window down map ctrl+down neighboring_window down
include gruvbox_dark.conf include gruvbox_light.conf

View File

@ -3,18 +3,20 @@ lvim.format_on_save = true
lvim.lint_on_save = true lvim.lint_on_save = true
lvim.shell = "/bin/fish" lvim.shell = "/bin/fish"
lvim.leader = "space" lvim.leader = "space"
lvim.builtin.dashboard.active = true vim.opt.relativenumber = true
lvim.builtin.alpha.active = true
lvim.builtin.terminal.active = true lvim.builtin.terminal.active = true
lvim.builtin.autopairs.active = true lvim.builtin.autopairs.active = true
lvim.builtin.gitsigns.active = true lvim.builtin.gitsigns.active = true
lvim.builtin.dap.active = true lvim.builtin.dap.active = true
vim.opt.relativenumber = true
lvim.builtin.nvimtree.side = "left" lvim.builtin.nvimtree.side = "left"
lvim.builtin.nvimtree.show_icons.git = 1 lvim.builtin.nvimtree.show_icons.git = 1
lvim.builtin.terminal.shell = "/bin/fish" lvim.builtin.terminal.shell = "/bin/fish"
vim.termguicolors = true vim.termguicolors = true
vim.background = "dark" vim.background = "light"
lvim.colorscheme = "gruvbox" lvim.colorscheme = "gruvbox"
lvim.builtin.treesitter.ensure_installed = {} lvim.builtin.treesitter.ensure_installed = {}
@ -68,6 +70,7 @@ lvim.plugins = {
end, end,
}, },
{ "ggandor/lightspeed.nvim", requires = { "tpope/vim-repeat" }, event = "InsertEnter" }, { "ggandor/lightspeed.nvim", requires = { "tpope/vim-repeat" }, event = "InsertEnter" },
{ "ellisonleao/glow.nvim" },
} }
-- Changes to clangd -- Changes to clangd

View File

@ -0,0 +1 @@
114070

View File

@ -1,6 +1,7 @@
http://lukesmith.xyz/rss.xml "Technology" http://lukesmith.xyz/rss.xml "Technology"
http://www.vox.com/rss/policy-and-politics/index.xml "Politics" http://www.vox.com/rss/policy-and-politics/index.xml "Politics"
https://based.cooking/rss.xml "Cooking" https://based.cooking/rss.xml "Cooking"
http://cyberciti.biz/feed "Technology"
https://medium.com/feed/better-programming "Technology" https://medium.com/feed/better-programming "Technology"
https://protesilaos.com/codelog.xml "Technology" https://protesilaos.com/codelog.xml "Technology"
https:///notrelated.xyz/rss.xml "Politics"
https://hnrss.org/frontpage "Technology"

View File

@ -0,0 +1,22 @@
[
{
"name": "Lock screen",
"exec": "swaylock -f -c 000000",
"icon": "system-lock-screen"
},
{
"name": "Logout",
"exec": "swaymsg exit",
"icon": "system-log-out"
},
{
"name": "Reboot",
"exec": "systemctl reboot",
"icon": "system-reboot"
},
{
"name": "Shutdown",
"exec": "systemctl -i poweroff",
"icon": "system-shutdown"
}
]

View File

@ -0,0 +1,28 @@
#bar {
margin: 30px /* affects top/bottom & left/right alignment */
}
button, image {
background: none;
border-style: none;
box-shadow: none;
color: #999
}
button {
padding-left: 10px;
padding-right: 10px;
margin: 5px
}
button:hover {
background-color: rgba (255, 255, 255, 0.1)
}
button:focus {
box-shadow: 0 0 2px;
}
grid {
/* e.g. for common background to all buttons */
}

View File

@ -85,9 +85,6 @@ for_window [app_id="soffice.bin"] inhibit_idle visible; border none; max_render_
for_window [class="firefox"] inhibit_idle fullscreen; max_render_time off for_window [class="firefox"] inhibit_idle fullscreen; max_render_time off
for_window [app_id="firefox"] inhibit_idle fullscreen; max_render_time off for_window [app_id="firefox"] inhibit_idle fullscreen; max_render_time off
for_window [app_id="jellyfinmediaplayer"] inhibit_idle fullscreen; max_render_time off for_window [app_id="jellyfinmediaplayer"] inhibit_idle fullscreen; max_render_time off
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.
### Input configuration ### Input configuration
# #
@ -122,10 +119,12 @@ for_window [app_id="jellyfinmediaplayer"] inhibit_idle fullscreen; max_render_ti
bindsym $mod+Shift+c reload bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session) # Exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+e exec exec nwgbar bindsym $mod+Shift+e exec exec wlogout
# clipboard manager # clipboard manager
bindsym $mod+p exec clipman pick -t wofi bindsym $mod+p exec clipman pick -t wofi
bindsym $mod+t exec firefox
# #
# Moving around: # Moving around:
# #
@ -186,7 +185,6 @@ for_window [app_id="jellyfinmediaplayer"] inhibit_idle fullscreen; max_render_ti
# Switch the current container between different layout styles # Switch the current container between different layout styles
bindsym $mod+s layout stacking bindsym $mod+s layout stacking
bindsym $mod+t layout toggle split
bindsym $mod+Shift+space floating toggle bindsym $mod+Shift+space floating toggle
# Make the current focus fullscreen # Make the current focus fullscreen

View File

@ -1,23 +1,24 @@
{ {
"label" : "lock", "label" : "lock",
"action" : "swaylock -i ~/Downloads/william-moreland-W61Rp5RouCA-unsplash.png .s fill", "action" : "swaylock -c ~/.config/swaylock/config",
"text" : "Lock", "text" : "Lock",
"keybind" : "l" "keybind" : "l"
} }
{ {
"label" : "hibernate", "label" : "hibernate",
"action" : "systemctl suspend", "action" : "systemctl hibernate",
"text" : "Hibernate", "text" : "Hibernate",
"keybind" : "h"
} }
{ {
"label" : "logout", "label" : "logout",
"action" : "swaymsg exit", "action" : "loginctl terminate-user $USER",
"text" : "Logout", "text" : "Logout",
"keybind" : "e" "keybind" : "e"
} }
{ {
"label" : "shutdown", "label" : "shutdown",
"action" : "shutdown now", "action" : "systemctl poweroff",
"text" : "Shutdown", "text" : "Shutdown",
"keybind" : "s" "keybind" : "s"
} }

View File

@ -1,52 +1,51 @@
* { * {
background-image: none; background-image: none;
}
@keyframes fadeIn {
from {opacity: 0;}
to {opacity: 1;}
} }
window { window {
background-color: rgba(46,52,64, 0.9); background-image: image(url("/home/minhradz/Downloads/lantern.jpg"), url("/home/minhradz/Downloads/lantern.jpg"));
font-size: 26px;
font-family: Product Sans;
animation: fadeIn;
animation-duration: 0.5s;
} }
button { button {
color: #eceff4; background-color: #2e3440;
background-color: #4c566a; border-width: 0px;
border-style: solid; border-radius: 0;
margin: 20px; background-repeat: no-repeat;
border: 3px solid #3b4252; background-position: center;
background-repeat: no-repeat; background-size: 25%;
background-position: center; color: #5e81ac;
} }
button:focus, button:active, button:hover { button:active, button:hover {
background-color: #5e81ac; background-color: #4c566a;
outline-style: none; color: #81a1c1;
outline-style: none;
} }
#lock { #lock {
background-image: image(url("/home/minhradz/.config/wlogout/icons/lock.png"), url("/usr/local/share/wlogout/icons/lock.png")); opacity: 0.9;
background-image: image(url("/usr/share/wlogout/icons/logout.png"), url("/usr/share/wlogout/icons/logout.png"));
} }
#logout { #logout {
background-image: image(url("/home/minhradz/.config/wlogout/icons/logout.png"), url("/usr/local/share/wlogout/icons/logout.png")); opacity: 0.9;
background-image: image(url("/usr/share/wlogout/icons/logout.png"), url("/usr/local/share/wlogout/icons/logout.png"));
} }
#suspend { #suspend {
background-image: image(url("/home/minhradz/.config/wlogout/icons/suspend.png"), url("/usr/local/share/wlogout/icons/suspend.png")); opacity: 0.9;
background-image: image(url("/usr/share/wlogout/icons/suspend.png"), url("/usr/local/share/wlogout/icons/suspend.png"));
} }
#hibernate { #hibernate {
background-image: image(url("/home/minhradz/.config/wlogout/icons/hibernate.png"), url("/usr/local/share/wlogout/icons/hibernate.png")); opacity: 0.9;
background-image: image(url("/usr/share/wlogout/icons/hibernate.png"), url("/usr/local/share/wlogout/icons/hibernate.png"));
} }
#shutdown { #shutdown {
background-image: image(url("/home/minhradz/.config/wlogout/icons/shutdown.png"), url("/usr/local/share/wlogout/icons/shutdown.png")); opacity: 0.9;
background-image: image(url("/usr/share/wlogout/icons/shutdown.png"), url("/usr/local/share/wlogout/icons/shutdown.png"));
} }
#reboot { #reboot {
background-image: image(url("/home/minhradz/.config/wlogout/icons/reboot.png"), url("/usr/local/share/wlogout/icons/reboot.png")); opacity: 0.9;
background-image: image(url("/usr/share/wlogout/icons/reboot.png"), url("/usr/local/share/wlogout/icons/reboot.png"));
} }