Merge branch 'main' of codeberg.org:acscott/dotfiles

This commit is contained in:
Andrew Scott 2022-04-13 12:06:09 -04:00
commit baa807c445
Signed by: a
GPG key ID: 3EB62D0BBB8DB381
8 changed files with 249 additions and 78 deletions

View file

@ -22,11 +22,12 @@ in ~/dotfiles_backup. The script is simple enough that it should be
easily editable, but obviously feel free to copy or symlink the easily editable, but obviously feel free to copy or symlink the
files how you see fit. files how you see fit.
The below screenshots are using a dark gruvbox theme, however I'm currently experimenting with zenburn. The gruvbox configs are still available, but they are not the default on all branches.
### laptop-hidpi configuration ### laptop-hidpi configuration
#### Zenburn
![Desktop screenshot of the laptop-hidpi configuration](info/screenshots/screenshot.png) ![Desktop screenshot of the laptop-hidpi configuration](info/screenshots/screenshot.png)
#### Gruvbox
![Desktop screenshot of the laptop-hidpi configuration](info/screenshots/screenshot2.png) ![Desktop screenshot of the laptop-hidpi configuration](info/screenshots/screenshot2.png)
[Wallpaper](https://www.reddit.com/r/wallpaper/comments/ll1gov/arch_gruvbox_wallpaper_v2_dark_light_3840x2160/ "Wallpaper") [Wallpaper](https://www.reddit.com/r/wallpaper/comments/ll1gov/arch_gruvbox_wallpaper_v2_dark_light_3840x2160/ "Wallpaper")

View file

@ -0,0 +1,41 @@
# https://github.com/sainnhe/everforest
# https://gist.github.com/sophiabrandt/f013c5980b5f89cd068d8f7f47da2e1c
foreground #d8cacc
background #323d43
selection_foreground #3c474d
selection_background #525c62
url_color #415c6d
cursor #7fbbb3
# black
color0 #4a555b
color8 #525c62
# red
color1 #e68183
color9 #e68183
# green
color2 #a7c080
color10 #a7c080
# yellow
color3 #dbbc7f
color11 #dbbc7f
# blue
color4 #7fbbb3
color12 #7fbbb3
# magenta
color5 #d699b6
color13 #d699b6
# cyan
color6 #83c092
color14 #83c092
# white
color7 #d8caac
color15 #d8caac

View file

@ -1,8 +1,15 @@
" set leader key " set leader key
let g:mapleader = "\<Space>" let g:mapleader = "\<Space>"
" vim hardcodes background color erase even if the terminfo file does
" not contain bce (not to mention that libvte based terminals
" incorrectly contain bce in their terminfo files). This causes
" incorrect background rendering when using a color theme with a
" background color.
let &t_ut=''
syntax enable " Enables syntax highlighing syntax enable " Enables syntax highlighing
set hidden " Required to keep multiple buffers open multiple buffers set hidden " Required to keep multiple buffers open
set nowrap " Display long lines as just one line set nowrap " Display long lines as just one line
set encoding=utf-8 " The encoding displayed set encoding=utf-8 " The encoding displayed
set pumheight=10 " Makes popup menu smaller set pumheight=10 " Makes popup menu smaller
@ -40,18 +47,49 @@ au! BufWritePost $MYVIMRC source % " auto source when writing to init.vim a
" You can't stop me " You can't stop me
cmap w!! w !sudo tee % cmap w!! w !sudo tee %
" neovim-plug-git "" Plugins
" Install neovim-plug-git from AUR
call plug#begin() call plug#begin()
Plug 'preservim/nerdtree', { 'on': 'NERDTreeToggle' } " A fuzzy file finder
Plug 'Raimondi/delimitMate' Plug 'kien/ctrlp.vim'
"Plug 'morhetz/gruvbox' " Comment/Uncomment tool
"Plug 'ryanoasis/vim-devicons' Plug 'scrooloose/nerdcommenter'
"Plug 'neovim/nvim-lsp' " Switch to the begining and the end of a block by pressing %
"Plug 'jackguo380/vim-lsp-cxx-highlight' Plug 'tmhedberg/matchit'
" A Tree-like side bar for better navigation
Plug 'scrooloose/nerdtree'
" A cool status bar
Plug 'vim-airline/vim-airline'
" Airline themes
Plug 'vim-airline/vim-airline-themes'
" Better syntax-highlighting for filetypes in vim
Plug 'sheerun/vim-polyglot'
" Intellisense engine
Plug 'neoclide/coc.nvim', {'branch': 'release'}
" Git integration
Plug 'tpope/vim-fugitive'
" Auto-close braces and scopes
Plug 'jiangmiao/auto-pairs'
""Themes
" Everforest theme
Plug 'sainnhe/everforest'
" Nord
"Plug 'arcticicestudio/nord-vim'
call plug#end() call plug#end()
" Theme " Important!!
"colorscheme gruvbox if has('termguicolors')
set termguicolors
endif
" Set contrast.
" This configuration option should be placed before `colorscheme everforest`.
" Available values: 'hard', 'medium'(default), 'soft'
let g:everforest_background = 'medium'
" For better performance
let g:everforest_better_performance = 1
colorscheme everforest
" plug-in autostart " plug-in autostart
"augroup nerdtree_open "augroup nerdtree_open

View file

@ -1,3 +1,6 @@
;; Disable package.el early so it won't start loading packages before init is loaded
(setq package-enable-at-startup nil)
;; No thanks ;; No thanks
(setq inhibit-startup-message t) ; Disable startup message (setq inhibit-startup-message t) ; Disable startup message
(scroll-bar-mode -1) ; Disable visible scrollbar (scroll-bar-mode -1) ; Disable visible scrollbar
@ -37,11 +40,11 @@
;; No annoying Windows errors ;; No annoying Windows errors
(set-default-coding-systems 'utf-8) (set-default-coding-systems 'utf-8)
;; Improved scrolling ;; Improve scrolling
(setq mouse-wheel-scroll-amount '(1 ((shift) . 1))) ;; one line at a time (setq mouse-wheel-scroll-amount '(1 ((shift) . 1))) ; one line at a time
(setq mouse-wheel-progressive-speed nil) ;; don't accelerate scrolling (setq mouse-wheel-progressive-speed nil) ; don't accelerate scrolling
(setq mouse-wheel-follow-mouse 't) ;; scroll window under mouse (setq mouse-wheel-follow-mouse 't) ; scroll window under mouse
(setq scroll-step 1) ;; keyboard scroll one line at a time (setq scroll-step 1) ; keyboard scroll one line at a time
;; Tabs ;; Tabs
(setq-default indent-tabs-mode nil) (setq-default indent-tabs-mode nil)
@ -63,49 +66,65 @@
(dolist (mode '(org-mode-hook)) (dolist (mode '(org-mode-hook))
(add-hook mode (lambda () (display-line-numbers-mode 0)))) (add-hook mode (lambda () (display-line-numbers-mode 0))))
;; Install and load straight.el
(defvar bootstrap-version)
(let ((bootstrap-file
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
(bootstrap-version 5))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.githubusercontent.com/raxod502/straight.el/develop/install.el"
'silent 'inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))
;;;;;;;;;;;;;; Not needed when using straight.el ;;;;;;;;;;;;;;
;; Initialize package sources ;; Initialize package sources
(require 'package) ;(require 'package)
(setq package-archives '(("melpa" . "https://melpa.org/packages/") ;(setq package-archives '(("melpa" . "https://melpa.org/packages/")
("org" . "https://orgmode.org/elpa/") ; ("org" . "https://orgmode.org/elpa/")
("elpa" . "https://elpa.gnu.org/packages/"))) ; ("elpa" . "https://elpa.gnu.org/packages/")))
(package-initialize) ;(package-initialize)
(unless package-archive-contents ;(unless package-archive-contents
(package-refresh-contents)) ; (package-refresh-contents))
;; Initialize use-package on non-Linux platforms ;; Initialize use-package on non-Linux platforms
(unless (package-installed-p 'use-package) ;(unless (package-installed-p 'use-package)
(package-install 'use-package)) ; (package-install 'use-package))
(require 'use-package) ;(require 'use-package)
(setq use-package-always-ensure t) ;(setq use-package-always-ensure t)
;;;;;;;;;;;;;;
;;; Packages ;; Install use-package
(straight-use-package 'use-package)
;; Make use-package use straight.el
(use-package straight
:custom (straight-use-package-by-default t))
;; Theme ;; Theme
(setq custom-safe-themes t) (setq custom-safe-themes t)
;(use-package darktooth-theme ;(use-package zenburn-theme
; :config ; :config
; (load-theme `darktooth t)) ; (load-theme `zenburn t))
(use-package zenburn-theme (use-package everforest-hard-dark-theme
:straight (everforest-hard-dark-theme :type git :repo "https://git.sr.ht/~theorytoe/everforest-hard-dark-theme")
:config :config
(load-theme `zenburn t)) (load-theme 'everforest-hard-dark t))
;; (use-package ample-theme
;; :config
;; (load-theme `ample-flat t))
;; (use-package base16-theme ;; (use-package base16-theme
;; :ensure t
;; :config ;; :config
;; (load-theme 'gruvbox-dark-soft t)) ;; (load-theme 'gruvbox-dark-soft t))
;; Help distinguish between work from others like sidebars and terminal ;; Help distinguish work buffers from others like sidebars and terminal
(use-package solaire-mode (use-package solaire-mode
:diminish
:init :init
(solaire-global-mode t)) (solaire-global-mode t))
@ -114,9 +133,6 @@
;; Modeline ;; Modeline
;; (use-package simple-modeline
;; :hook (after-init . simple-modeline-mode))
(use-package minions (use-package minions
:hook (doom-modeline-mode . minions-mode) :hook (doom-modeline-mode . minions-mode)
(simple-modeline-mode . minions-mode)) (simple-modeline-mode . minions-mode))
@ -145,7 +161,6 @@
;; Automatically clean whitespace ;; Automatically clean whitespace
(use-package ws-butler (use-package ws-butler
:diminish
:hook ((text-mode . ws-butler-mode) :hook ((text-mode . ws-butler-mode)
(prog-mode . ws-butler-mode))) (prog-mode . ws-butler-mode)))
@ -182,7 +197,6 @@
:bind (("C-s" . swiper))) :bind (("C-s" . swiper)))
(use-package treemacs (use-package treemacs
:defer t
:bind :bind
(:map global-map (:map global-map
("M-0" . treemacs-select-window) ("M-0" . treemacs-select-window)
@ -193,17 +207,28 @@
("C-x t M-t" . treemacs-find-tag))) ("C-x t M-t" . treemacs-find-tag)))
(use-package lsp-treemacs (use-package lsp-treemacs
:defer t
:config :config
(lsp-treemacs-sync-mode 1)) (lsp-treemacs-sync-mode 1))
;; Git ;; Git
(use-package magit (use-package magit
:bind ("C-M-;" . magit-status) :bind ("C-M-;" . magit-status)
:commands (magit-status magit-get-current-branch) :commands (magit-status magit-get-current-branch)
:custom :custom
(magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)) (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1))
;; Project management
(use-package projectile
:init
(projectile-mode +1)
:bind-keymap
(("C-M-p" . projectile-find-file)
("C-c p" . projectile-command-map))
:bind (:map projectile-mode-map
("C-c p" . projectile-command-map)))
;; LSP & debugging ;; LSP & debugging
(use-package lsp-mode (use-package lsp-mode
@ -214,10 +239,13 @@
((c-mode . lsp) ((c-mode . lsp)
(c++-mode . lsp) (c++-mode . lsp)
(java-mode . lsp) (java-mode . lsp)
(js-mode . lsp)
(latex-mode . lsp)
(python-mode . lsp) (python-mode . lsp)
(rust-mode . lsp) (rust-mode . lsp)
(tex-mode . lsp) (tex-mode . lsp)
(latex-mode . lsp) (typescript-mode . lsp)
(web-mode . lsp)
(zig-mode . lsp) (zig-mode . lsp)
(lsp-mode . lsp-enable-which-key-integration)) (lsp-mode . lsp-enable-which-key-integration))
:config :config
@ -246,9 +274,15 @@
(lsp-ui-doc-show)) (lsp-ui-doc-show))
(use-package dap-mode (use-package dap-mode
:after lsp-mode
:commands dap-debug
:config :config
(dap-ui-mode 1) (dap-ui-mode 1)
(dap-tooltip-mode 1)) (dap-tooltip-mode 1)
(eval-when-compile
(require 'cl-lib))
(require 'dap-python)
(require 'dap-node))
(use-package company (use-package company
:config :config
@ -266,17 +300,16 @@
("C-n" . company-select-next) ("C-n" . company-select-next)
("C-p" . company-select-previous))) ("C-p" . company-select-previous)))
;; Full terminal applications within Emacs
(use-package vterm
:commands vterm
:config
(setq vterm-max-scrollback 10000))
;;; Languages ;;; Languages
(use-package apheleia
:init
(apheleia-global-mode +1))
;; C/C++ ;; C/C++
(setq-default c-default-style "k&r")
(setq-default c-basic-offset 2) ;(setq-default c-default-style "k&r")
;(setq-default c-basic-offset 2)
;(use-package ccls ;(use-package ccls
; :hook ((c-mode c++-mode objc-mode cuda-mode) . ; :hook ((c-mode c++-mode objc-mode cuda-mode) .
@ -290,6 +323,62 @@
;(use-package lsp-java) ;(use-package lsp-java)
;; JavaScript/TypeScript, HTML, CSS
(setq css-indent-level 2)
(setq css-indent-offset 2)
(setq js-indent-level 2)
(use-package js2-mode
:config
(add-to-list 'interpreter-mode-alist '("#!/usr/bin/env node" . js2-mode))
(setq js2-mode-show-strict-warnings nil)
:hook ('js-mode-hook 'js2-minor-mode))
(use-package typescript-mode
:config
(setq typescript-indent-level 2)
:mode ("\\.ts\\'" . typescript-mode))
(use-package restclient
:init
(use-package company-restclient))
(use-package rainbow-mode
:hook
((js-mode . rainbow-mode)
(typescript-mode . rainbow-mode)
(web-mode . rainbow-mode)))
(use-package skewer-mode
:init
(setq httpd-port 8123)
:hook
(('js-mode-hook 'skewer-mode)
('css-mode-hook 'skewer-css-mode)
('html-mode-hook 'skewer-html-mode)))
(use-package skewer-reload-stylesheets
:hook
(('css-mode-hook 'skewer-reload-stylesheets-start-editing)
('scss-mode-hook 'skewer-reload-stylesheets-start-editing)))
(use-package web-mode
:config
(setq web-mode-code-indent-offset 2)
(setq web-mode-markup-indent-offset 2)
(setq web-mode-attribute-indent-offset 2)
:mode
(("\\.phtml\\'" . web-mode)
("\\.tpl\\.php\\'" . web-mode)
("\\.jsp\\'" . web-mode)
("\\.as[cp]x\\'" . web-mode)
("\\.erb\\'" . web-mode)
("\\.mustache\\'" . web-mode)
("\\.djhtml\\'" . web-mode)
("\\.jst.ejs\\'" . web-mode)
("\\.html?\\'" . web-mode)))
;; LaTeX ;; LaTeX
(use-package lsp-latex) (use-package lsp-latex)
@ -297,15 +386,20 @@
(setq lsp-tex-server 'digestif) (setq lsp-tex-server 'digestif)
;; Python ;; Python
(setq dap-python-debugger 'debugpy)
(use-package lsp-pyright (use-package lsp-pyright
:hook (python-mode . (lambda () :hook (python-mode . (lambda ()
(require 'lsp-pyright) (require 'lsp-pyright)
(lsp)))) ; or lsp-deferred (lsp)))) ; or lsp-deferred
(use-package sphinx-doc (use-package numpydoc
:hook (python-mode . sphinx-doc-mode) :after python
:bind (:map python-mode-map
("C-c C-n" . numpydoc-generate))
:config :config
(setq sphinx-doc-include-types t)) (setq numpydoc-insert-examples-block nil))
;; Rust ;; Rust

View file

@ -46,6 +46,7 @@ spotify-adblock-git
polybar-spotify polybar-spotify
rofi-power-menu rofi-power-menu
st st
vimix-gtk-themes-git
# Laptop/Thinkpads (for xbacklight etc., your needs may vary) # Laptop/Thinkpads (for xbacklight etc., your needs may vary)
acpi_call acpi_call

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

After

Width:  |  Height:  |  Size: 241 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 299 KiB

After

Width:  |  Height:  |  Size: 238 KiB

View file

@ -1,4 +0,0 @@
# make Java behave when not using a DE
export _JAVA_AWT_WM_NONREPARENTING=1
# add .local/bin to $PATH
export PATH="$HOME/.local/bin:$PATH"