Remove outdated, unused, or accounted for configs

Wow that's a lot of cruft
This commit is contained in:
Ian Keane 2024-09-18 21:01:41 -04:00
parent 3da36c362e
commit 1da599e8ab
90 changed files with 0 additions and 8659 deletions

View file

@ -1 +0,0 @@
--target=~

View file

@ -1,6 +0,0 @@
# ~/.bash_profile
#
# Get the aliases and functions
[ -f $HOME/.bashrc ] && . $HOME/.bashrc
[[ -f ~/.bashrc ]] && . ~/.bashrc

View file

@ -1,23 +0,0 @@
# .bashrc
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
alias ls='ls --color=auto'
alias vlime='sbcl --load ~/.vim/plugins/vlime/lisp/start-vlime.lisp'
PS1='[\u@\h \W]\$ '
alias screenfetch='clear && screenfetch -t'
export DISPLAY=:0
export LIBGL_ALWAYS_INDIRECT=1
export FZF_DEFAULT_COMMAD="find -L"
export PATH="$PATH:/opt/mssql-tools/bin:/home/green/.local/bin"
stty -ixon # disable ctrl-s terminal freeze
# Enable GPG ssh auth
#export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
#gpgconf --launch gpg-agent
[ -f ~/.fzf.bash ] && source ~/.fzf.bash

View file

@ -1 +0,0 @@
#/usr/bin/fish

View file

@ -1,12 +0,0 @@
#!/usr/bin/fish
while true
catgirl \
-h dump.town \
-t client.pem \
-u "bl0rt/"$argv \
-w (pass znc) \
-H 8,15 \
-N notify-send \
-s $argv
end

View file

@ -1,4 +0,0 @@
#!/usr/local/bin/fish
#
kill -9 (ps -a | grep chalice | grep -v tmux | grep -v killchalice | cut -c1-5) &> /dev/null
kill -9 (ps -a | grep chalice | grep -v tmux | cut -c1-5)

View file

@ -1,9 +0,0 @@
#!/usr/bin/fish
if ps -a | grep lemonbar
pkill lemonbar
end
sleep .1 &&
~/.config/lemonbar/lemonbar.fish | lemonbar -pb -f "BitstreamVeraSansMono:size=12" -B "#343D46" -F "#CDD3DE" &
sleep .1 &&
xdo above -t (xdo id -n root) (xdo id -n lemonbar)

View file

@ -1,35 +0,0 @@
#! /bin/sh
sxhkd &
bspc monitor -d I II III IV V VI VII VIII IX X
bspc rule -a Gimp desktop='^8' state=floating follow=on
bspc rule -a Chromium desktop='^2'
bspc rule -a mplayer2 state=floating
bspc rule -a Kupfer.py focus=on
bspc rule -a Screenkey manage=off
# start flavours
bspc config normal_border_color "#343D46"
bspc config active_border_color "#99C794"
bspc config focused_border_color "#99C794"
bspc config presel_feedback_color "#5FB3B3"
# end flavours
bspc config border_width 2
bspc config window_gap 12
bspc config split_ratio 0.52
bspc config borderless_monocle true
bspc config gapless_monocle true
sudo xrandr --newmode "2560x1080_60.00" 230.00 2560 2720 2992 3424 1080 1083 1093 1120 -hsync +vsync
sudo xrandr --addmode DisplayPort-0 "2560x1080_60.00"
xrandr -s "2560x1080_60.00"
lemonlaunch &
xsetroot -cursor_name left_ptr &
notify-send "thots" "$(fortune)" -c 15

View file

@ -1,4 +0,0 @@
host = dump.town
trust = client.pem
user = blort/tilde
hash = 0,15

View file

@ -1,170 +0,0 @@
#+TITLE: Ian's Emacs Config
* Appearance
** Misc
#+begin_src emacs-lisp
(setq fancy-splash-image
(concat doom-private-dir "sink.png")) ;; the best emacs logo
(load-theme 'doom-oceanic-next t)
(setq lsp-lens-enable nil) ;; gets rid of the little '0 references' note from lsp
#+end_src
** Font
#+begin_src emacs-lisp
(setq
doom-font (font-spec
:family "Fira Mono for Powerline"
:size=28
:weight=medium)
;; default-font-size 28
doom-font-increment 1
;; TODO doom-unicode-font, check out fira-code-symbol?
)
#+end_src
* Window Management and Navigation
** TODO General Concepts and Rationale
** Tab Behavior
#+begin_src emacs-lisp
(setq tab-bar-show nil)
(doom-modeline-mode -1)
(define-key evil-normal-state-map (kbd "s-t") 'tab-next)
(define-key evil-normal-state-map (kbd "s-z") 'toggle-maximize-buffer)
#+end_src
** Window Movement
#+begin_src emacs-lisp
(defun split-and-follow-horizontally ()
(interactive)
(split-window-below)
(balance-windows)
(other-window 1))
(defun split-and-follow-vertically ()
(interactive)
(split-window-right)
(balance-windows)
(other-window 1))
#+end_src
#+begin_src emacs-lisp
(global-set-key (kbd "s-c") 'delete-window)
(global-set-key (kbd "s-h") 'windmove-left)
(global-set-key (kbd "s-j") 'windmove-down)
(global-set-key (kbd "s-k") 'windmove-up)
(global-set-key (kbd "s-l") 'windmove-right)
(define-key evil-normal-state-map (kbd "s-d") 'kill-this-buffer)
(define-key evil-normal-state-map (kbd "s-n") 'projectile-next-project-buffer)
(define-key evil-normal-state-map (kbd "s-p") 'projectile-previous-project-buffer)
(define-key evil-normal-state-map (kbd "s-J") 'split-and-follow-horizontally)
(define-key evil-normal-state-map (kbd "s-L") 'split-and-follow-vertically)
(define-key evil-normal-state-map (kbd "s-b") 'buffer-menu)
(define-key evil-normal-state-map (kbd "s-x") 'execute-extended-command)
(global-set-key (kbd "s-SPC") 'tab-next)
#+end_src
#+begin_src emacs-lisp
;; disable mac default bindings
(when IS-MAC
(setq mac-pass-command-to-system nil))
#+end_src
** TODO Toggle Maximize Buffer
This was meant to replace the functionality of =ctrl b z= in tmux. It's not really good enough though, I'd like it to be independent of workspaces and tabs, for example, so that I can zoom one window, move to another context and zoom the others and be able to undo the zoom on the buffer I'm on specifically
#+begin_src emacs-lisp
(defun toggle-maximize-buffer ()
"Maximize buffer"
(interactive)
(if (= 1 (length (window-list)))
(jump-to-register '_)
(progn
(window-configuration-to-register '_)
(delete-other-windows))))
#+end_src
* IRC
#+begin_src emacs-lisp
(setq circe-network-options
'(("Libera"
:host "dump.town"
:port (6667 . 6697)
:tls t
:user "bl0rt/libera"
:pass (password-store-get "self/irc/znc"))))
#+end_src
* Org Mode
#+begin_src emacs-lisp
(setq deft-directory "~/notes/deft"
deft-extensions '("org" "txt")
deft-recursive t)
(setq org-roam-directory "~/notes/roam")
(map! :leader
(:prefix ("e" . "export")
:desc "Export Org to HTML"
"e" #'org-html-export-to-html))
#+end_src
* Ejira
#+begin_src emacs-lisp
(use-package! ejira
:init
(setq jiralib2-url "https://everblue.atlassian.net"
jiralib2-auth 'basic
jiralib2-user-login-name "ian@fs.tech"
jiralib2-token (password-store-get "work/api-keys/jira")
;; NOTE, this directory needs to be in `org-agenda-files'`
ejira-org-directory "~/notes/jira"
ejira-projects '("FP" "RWA")
ejira-priorities-alist '(("Highest" . ?A)
("High" . ?B)
("Medium" . ?C)
("Low" . ?D)
("Lowest" . ?E))
ejira-todo-states-alist '(("To Do" . 1)
("Development In Progress" . 2)
("QA" . 3)))
:config
;; Tries to auto-set custom fields by looking into /editmeta
;; of an issue and an epic.
(add-hook 'jiralib2-post-login-hook #'ejira-guess-epic-sprint-fields)
;; They can also be set manually if autoconfigure is not used.
;; (setq ejira-sprint-field 'customfield_10001
;; ejira-epic-field 'customfield_10002
;; ejira-epic-summary-field 'customfield_10004)
(require 'ejira-agenda)
;; Make the issues visisble in your agenda by adding `ejira-org-directory'
;; into your `org-agenda-files'.
(add-to-list 'org-agenda-files ejira-org-directory)
;; Add an agenda view to browse the issues that
(org-add-agenda-custom-command
'("j" "My JIRA issues"
((ejira-jql "resolution = unresolved and assignee = currentUser()"
((org-agenda-overriding-header "Assigned to me")))))))
#+end_src
* One-Off Behavior Tweaks
** Projectile search path
#+begin_src emacs-lisp
(setq projectile-project-search-path '("~/code/"))
#+end_src
** Speed up flycheck for TS/JS file opening
[[https://github.com/flycheck/flycheck/issues/1129#issuecomment-319600923][source]]
#+begin_src emacs-lisp
(with-eval-after-load 'flycheck
(advice-add 'flycheck-eslint-config-exists-p :override (lambda() t)))
#+end_src
** Company mode manual activation
Keep auto-complete from constantly suggesting things.
#+begin_src emacs-lisp
(setq company-minimum-prefix-length 100)
(map! :i "S-o" #'company-complete)
#+end_src
* Todo
** Bind 'Kill buffer and window' to spc b w
** Make c-spc change tabs, make sure tabs are invisible
** Word wrap on org mode
** Highlight matching paren

View file

@ -1,14 +0,0 @@
(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.
'(custom-safe-themes
'("2721b06afaf1769ef63f942bf3e977f208f517b187f2526f0e57c1bd4a000350" "991ca4dbb23cab4f45c1463c187ac80de9e6a718edc8640003892a2523cb6259" "02f57ef0a20b7f61adce51445b68b2a7e832648ce2e7efb19d217b6454c1b644" "6945dadc749ac5cbd47012cad836f92aea9ebec9f504d32fe89a956260773ca4" "e3daa8f18440301f3e54f2093fe15f4fe951986a8628e98dcd781efbec7a46f2" "00cec71d41047ebabeb310a325c365d5bc4b7fab0a681a2a108d32fb161b4006" "aec7b55f2a13307a55517fdf08438863d694550565dee23181d2ebd973ebd6b8" "443e2c3c4dd44510f0ea8247b438e834188dc1c6fb80785d83ad3628eadf9294" "ddffe74bc4bf2c332c2c3f67f1b8141ee1de8fd6b7be103ade50abb97fe70f0c" default))
'(package-selected-packages '(ox-hugo)))
(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,198 +0,0 @@
;;; init.el -*- lexical-binding: t; -*-
;; This file controls what Doom modules are enabled and what order they load
;; 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
;; documentation. There you'll find a link to Doom's Module Index where all
;; 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
;; 'C-c c k' for non-vim users) to view its documentation. This works on
;; flags as well (those symbols that start with a plus).
;;
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
;; directory (for easy access to its source code).
(doom! :input ;;bidi ; (tfel ot) thgir etirw uoy gnipleh
;;chinese
;;japanese
;;layout ; auie,ctsrnm is the superior home row
:completion
company ; the ultimate code completion backend
;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
(ivy +fuzzy +prescient) ; a search engine for love and life
;;vertico ; the search engine of the future
:ui
deft ; notational velocity for Emacs
doom ; what makes DOOM look the way it does
doom-dashboard ; a nifty splash screen for Emacs
;;doom-quit ; DOOM quit-message prompts when you quit Emacs
(emoji +unicode) ; 🙂
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
;;hydra
;;indent-guides ; highlighted indent columns
ligatures ; ligatures and symbols to make your code pretty again
;;minimap ; show a map of the code on the side
modeline ; snazzy, Atom-inspired modeline, plus API
;;nav-flash ; blink cursor line after big motions
neotree ; a project drawer, like NERDTree for vim
ophints ; highlight the region an operation acts on
(popup +defaults) ; tame sudden yet inevitable temporary windows
;;tabs ; a tab bar for Emacs
;; treemacs ; a project drawer, like neotree but cooler
unicode ; extended unicode support for various languages
(vc-gutter +pretty) ; vcs diff in the fringe
vi-tilde-fringe ; fringe tildes to mark beyond EOB
;;window-select ; visually switch windows
workspaces ; tab emulation, persistence & separate workspaces
zen ; distraction-free coding or writing
:editor
(evil +everywhere); come to the dark side, we have cookies
file-templates ; auto-snippets for empty files
;;fold ; (nigh) universal code folding
;;(format +onsave) ; automated prettiness
;;god ; run Emacs commands without modifier keys
;;lispy ; vim for lisp, for people who don't like vim
multiple-cursors ; editing in many places at once
;;objed ; text object editing for the innocent
;;parinfer ; turn lisp into python, sort of
;;rotate-text ; cycle region at point between text candidates
snippets ; my elves. They type so I don't have to
word-wrap ; soft wrapping with language-aware indent
:emacs
dired ; making dired pretty [functional]
electric ; smarter, keyword-based electric-indent
;;ibuffer ; interactive buffer management
undo ; persistent, smarter undo for your inevitable mistakes
vc ; version-control and Emacs, sitting in a tree
:term
eshell ; the elisp shell that works everywhere
shell ; simple shell REPL for Emacs
term ; basic terminal emulator for Emacs
vterm ; the best terminal emulation in Emacs
:checkers
syntax ; tasing you for every semicolon you forget
;;(spell +flyspell) ; tasing you for misspelling mispelling
;;grammar ; tasing grammar mistake every you make
:tools
;;ansible
;;biblio ; Writes a PhD for you (citation needed)
;;debugger ; FIXME stepping through code, to help you add bugs
;;direnv
docker
;;editorconfig ; let someone else argue about tabs vs spaces
;;ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists
lookup ; navigate your code and its documentation
lsp ; M-x vscode
magit ; a git porcelain for Emacs
make ; run make tasks from Emacs
pass ; password manager for nerds
pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders
;;rgb ; creating color strings
taskrunner ; taskrunner for all your projects
terraform ; infrastructure as code
;; tmux ; an API for interacting with tmux
;;tree-sitter ; syntax and parsing, sitting in a tree...
;;upload ; map local to remote projects via ssh/ftp
:os
(:if IS-MAC macos) ; improve compatibility with macOS
;;tty ; improve the terminal Emacs experience
:lang
;;agda ; types of types of types of types...
;;beancount ; mind the GAAP
;;(cc +lsp) ; C > C++ == 1
clojure ; java with a lisp
common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs
;;crystal ; ruby at the speed of c
;;csharp ; unity, .NET, and mono shenanigans
;;data ; config/data formats
;;(dart +flutter) ; paint ui and not much else
;;dhall
;;elixir ; erlang done right
;;elm ; care for a cup of TEA?
emacs-lisp ; drown in parentheses
;;erlang ; an elegant language for a more civilized age
;;ess ; emacs speaks statistics
;;factor
;;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
;;fstar ; (dependent) types and (monadic) effects and Z3
;;gdscript ; the language you waited for
;;(go +lsp) ; the hipster dialect
;;(graphql +lsp) ; Give queries a REST
;;(haskell +lsp) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on
json ; At least it ain't XML
;;(java +lsp) ; the poster child for carpal tunnel syndrome
(javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
;;julia ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script)
;;latex ; writing papers in Emacs has never been so fun
;;lean ; for folks with too much to prove
;;ledger ; be audit you can be
;;lua ; one-based indices? one-based indices
markdown ; writing docs for people to ignore
nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel
(org ; organize your plain life in plain text
+pretty
+roam2 ; put your brain in emacs
+dragndrop ; export org to whatever format
+hugo
+present) ; org for presentations
;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional
(python +lsp) ; beautiful is better than ugly
;;qt ; the 'cutest' gui framework ever
;;racket ; a DSL for DSLs
;;raku ; the artist formerly known as perl6
;;rest ; Emacs as a REST client
;;rst ; ReST in peace
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
;;(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good
(scheme +guile) ; a fully conniving family of lisps
sh ; she sells {ba,z,fi}sh shells on the C xor
;;sml
;;solidity ; do you need a blockchain? No.
;;swift ; who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance.
;;web ; the tubes
yaml ; JSON, but readable
;;zig ; C, but simpler
:email
(mu4e +org +gmail)
;;notmuch
;;(wanderlust +gmail)
:app
calendar
;;emms
;;everywhere ; *leave* Emacs!? You must be joking
irc ; how neckbeards socialize
(rss +org) ; emacs as an RSS reader
;;twitter ; twitter client https://twitter.com/vnought
:config
literate
(default +bindings +smartparens))

View file

@ -1,56 +0,0 @@
;; -*- no-byte-compile: t; -*-
;;; $DOOMDIR/packages.el
;; To install a package with Doom you must declare them here and run 'doom sync'
;; on the command line, then restart Emacs for the changes to take effect -- or
;; use 'M-x doom/reload'.
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
;(package! some-package)
;; To install a package directly from a remote git repo, you must specify a
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
;; https://github.com/radian-software/straight.el#the-recipe-format
;(package! another-package
; :recipe (:host github :repo "username/repo"))
;; If the package you are trying to install does not contain a PACKAGENAME.el
;; file, or is located in a subdirectory of the repo, you'll need to specify
;; `:files' in the `:recipe':
;(package! this-package
; :recipe (:host github :repo "username/repo"
; :files ("some-file.el" "src/lisp/*.el")))
;; If you'd like to disable a package included with Doom, you can do so here
;; with the `:disable' property:
;(package! builtin-package :disable t)
;; You can override the recipe of a built in package without having to specify
;; all the properties for `:recipe'. These will inherit the rest of its recipe
;; from Doom or MELPA/ELPA/Emacsmirror:
;(package! builtin-package :recipe (:nonrecursive t))
;(package! builtin-package-2 :recipe (:repo "myfork/package"))
;; Specify a `:branch' to install a package from a particular branch or tag.
;; This is required for some packages whose default branch isn't 'master' (which
;; our package manager can't deal with; see radian-software/straight.el#279)
;(package! builtin-package :recipe (:branch "develop"))
;; Use `:pin' to specify a particular commit to install.
;(package! builtin-package :pin "1a2b3c4d5e")
;; Doom's packages are pinned to a specific commit and updated from release to
;; release. The `unpin!' macro allows you to unpin single packages...
;(unpin! pinned-package)
;; ...or multiple packages
;(unpin! pinned-package another-pinned-package)
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
;(unpin! t)
;; (package! org-super-agenda)
(package! ejira
:recipe (:host github :repo "nyyManni/ejira"))
(package! ox-hugo)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View file

@ -1,466 +0,0 @@
# See dunst(5) for all configuration options
[global]
### Display ###
# start flavours
[global]
frame_color = "#C0C5CE"
separator_color = "#C0C5CE"
[base16_low]
msg_urgency = low
background = "#343D46"
foreground = "#65737E"
[base16_normal]
msg_urgency = normal
background = "#4F5B66"
foreground = "#C0C5CE"
[base16_critical]
msg_urgency = critical
background = "#EC5f67"
foreground = "#CDD3DE"
# end flavours
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a window manager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern window managers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = none
### Geometry ###
# dynamic width from 0 to 300
# width = (0, 300)
# constant width of 300
width = 300
# The maximum height of a single notification, excluding the frame.
height = 300
# Position the notification in the top right corner
origin = top-right
# Offset from the origin
offset = 10x50
# Scale factor. It is auto-detected if value is 0.
scale = 0
# Maximum number of notification (0 means no limit)
notification_limit = 0
### Progress bar ###
# Turn on the progess bar. It appears when a progress hint is passed with
# for example dunstify -h int:value:12
progress_bar = true
# Set the progress bar height. This includes the frame, so make sure
# it's at least twice as big as the frame width.
progress_bar_height = 10
# Set the frame width of the progress bar
progress_bar_frame_width = 1
# Set the minimum width for the progress bar
progress_bar_min_width = 150
# Set the maximum width for the progress bar
progress_bar_max_width = 300
# Show how many messages are currently hidden (because of
# notification_limit).
indicate_hidden = yes
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
transparency = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
# If gap_size is greater than 0, this setting will be ignored.
separator_height = 2
# Padding between text and separator.
padding = 8
# Horizontal padding.
horizontal_padding = 8
# Padding between text and icon.
text_icon_padding = 0
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 3
# Defines color of the frame around the notification window.
# frame_color = "#aaaaaa"
# Size of gap to display between notifications - requires a compositor.
# If value is greater than 0, separator_height will be ignored and a border
# of size frame_width will be drawn around each notification instead.
# Click events on gaps do not currently propagate to applications below.
gap_size = 0
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
# separator_color = frame
# Sort messages by urgency.
sort = yes
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
# idle_threshold = 120
### Text ###
font = Monospace 8
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
line_height = 0
# Possible values are:
# full: Allow a small subset of html markup in notifications:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <https://docs.gtk.org/Pango/pango_markup.html>.
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
# server. Dunst will try to strip the markup but the parsing is
# simplistic so using this option outside of matching rules for
# specific applications *IS GREATLY DISCOURAGED*.
#
# no: Disable markup parsing, incoming notifications will be treated as
# plain text. Dunst will not advertise that it has the body-markup
# capability if this is set as a global setting.
#
# It's important to note that markup inside the format option will be parsed
# regardless of what this is set to.
markup = full
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed
format = "<b>%s</b>\n%b"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
vertical_alignment = center
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Stack together notifications with the same content
stack_duplicates = true
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Align icons left/right/top/off
icon_position = left
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
min_icon_size = 32
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 128
# Paths to default icons.
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
### History ###
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
### Misc/Advanced ###
# dmenu path.
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /usr/bin/xdg-open
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true
# Define the title of the windows spawned by dunst
title = Dunst
# Define the class of the windows spawned by dunst
class = Dunst
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
# The radius will be automatically lowered if it exceeds half of the
# notification height to avoid clipping text and/or icons.
corner_radius = 0
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
# parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
### Wayland ###
# These settings are Wayland-specific. They have no effect when using X11
# Uncomment this if you want to let notications appear under fullscreen
# applications (default: overlay)
# layer = top
# Set this to true to use X11 output on Wayland.
force_xwayland = false
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
### mouse
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: Invoke the action determined by the action_name rule. If there is no
# such action, open the context menu.
# * open_url: If the notification has exactly one url, open it. If there are multiple
# ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
# * context: Open context menu for the notification.
# * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = close_current
mouse_middle_click = do_action, close_current
mouse_right_click = close_all
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
#[urgency_low]
# # IMPORTANT: colors have to be defined in quotation marks.
# # Otherwise the "#" and following would be interpreted as a comment.
# background = "#222222"
# foreground = "#888888"
# timeout = 10
# # Icon for notifications with low urgency, uncomment to enable
# #default_icon = /path/to/icon
#[urgency_normal]
# background = "#285577"
# foreground = "#ffffff"
# timeout = 10
# # Icon for notifications with normal urgency, uncomment to enable
# #default_icon = /path/to/icon
#[urgency_critical]
# background = "#900000"
# foreground = "#ffffff"
# frame_color = "#ff0000"
# timeout = 0
# # Icon for notifications with critical urgency, uncomment to enable
# #default_icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
#
# Messages can be matched by
# appname (discouraged, see desktop_entry)
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# set_category
# timeout
# urgency
# icon_position
# skip_display
# history_ignore
# action_name
# word_wrap
# ellipsize
# alignment
# hide_text
#
# Shell-like globbing will get expanded.
#
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# skip_display = true
#[history-ignore]
# # This notification will not be saved in history
# summary = "foobar"
# history_ignore = yes
#[skip-display]
# # This notification will not be displayed, but will be included in the history
# summary = "foobar"
# skip_display = yes
#[signed_on]
# appname = Pidgin
# summary = "*signed on*"
# urgency = low
#
#[signed_off]
# appname = Pidgin
# summary = *signed off*
# urgency = low
#
#[says]
# appname = Pidgin
# summary = *says*
# urgency = critical
#
#[twitter]
# appname = Pidgin
# summary = *twitter.com*
# urgency = normal
#
#[stack-volumes]
# appname = "some_volume_notifiers"
# set_stack_tag = "volume"
#
# vim: ft=cfg

View file

@ -1,3 +0,0 @@
#Auto-Complete function for AWSume
complete --command awsume --arguments '(awsume-autocomplete)'

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,19 +0,0 @@
complete --command nvm --exclusive --long version --description "Print version"
complete --command nvm --exclusive --long help --description "Print help"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments install --description "Download and activate the specified Node version"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments use --description "Activate a version in the current shell"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list --description "List installed versions"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list-remote --description "List versions available to install matching optional regex"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments current --description "Print the currently-active version"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from install" --arguments "(
test -e $nvm_data && string split ' ' <$nvm_data/.index
)"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use" --arguments "(_nvm_list | string split ' ')"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments uninstall --description "Uninstall a version"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from uninstall" --arguments "(
_nvm_list | string split ' ' | string replace system ''
)"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use uninstall" --arguments "(
set --query nvm_default_version && echo default
)"

View file

@ -1,189 +0,0 @@
# copy this into ~/.config/fish/completions/ to enable autocomplete for the watson time tracker
#
function __fish_watson_needs_sub -d "provides a list of sub commands"
set cmd (commandline -opc)
if [ (count $cmd) -eq 1 -a $cmd[1] = 'watson' ]
return 0
end
return 1
end
function __fish_watson_using_command -d "determine if watson is using the passed command"
set cmd (commandline -opc)
if [ (count $cmd) -ge 2 -a $cmd[1] = 'watson' ]
if [ $argv[1] = $cmd[2] ]
return 0
end
return 1
end
return 1
end
function __fish_watson_get_projects -d "return a list of projects"
command watson projects
end
function __fish_watson_get_tags -d "return a list of tags"
command watson tags
end
function __fish_watson_has_project -d "determine if watson is using a passed command and if it has a project"
set cmd (commandline -opc)
if [ (count $cmd) -gt 2 -a $cmd[1] = 'watson' ]
if [ $argv[1] = $cmd[2] ]
if contains "$cmd[3]" (__fish_watson_get_projects)
return 0
end
end
end
return 1
end
function __fish_watson_has_from -d "determine if watson is using a passed command and if it is using from"
set cmd (commandline -opc)
if [ (count $cmd) -gt 2 -a $cmd[1] = 'watson' ]
if [ $argv[1] = $cmd[2] ]
if contains -- "$cmd[3]" -f --from
return 0
end
end
end
return 1
end
function __fish_watson_get_frames -d "return a list of frames" #TODO, use watson logs to get more info
command watson frames
end
function __fish_watson_needs_project -d "check if we need a project"
set cmd (commandline -opc)
if [ (count $cmd) -ge 2 -a $cmd[1] = 'watson' ]
if [ $argv[1] = $cmd[2] ]
for i in $cmd
if contains $i (__fish_watson_get_projects)
return 1 # return 1 because we alredy have a project
end
end
return 0 # we are using $argv as our command and the command does not contain any projects
end
end
return 1
end
# if a backend.url is set, use it in the command description
if [ -e ~/.config/watson/config ]
set url_string (command watson config backend.url 2> /dev/null)
if test -n "$url_string"
set url $url_string
end
else
set url "a remote Crick server"
end
# ungrouped
complete -f -c watson -n '__fish_watson_needs_sub' -a cancel -d "Cancel the last start command"
complete -f -c watson -n '__fish_watson_needs_sub' -a frames -d "Display the list of all frame IDs"
complete -f -c watson -n '__fish_watson_needs_sub' -a help -d "Display help information"
complete -f -c watson -n '__fish_watson_needs_sub' -a projects -d "Display the list of projects"
complete -f -c watson -n '__fish_watson_needs_sub' -a sync -d "sync your work with $url"
complete -f -c watson -n '__fish_watson_needs_sub' -a tags -d "Display the list of tags"
# add
complete -f -c watson -n '__fish_watson_needs_sub' -a add -d "Add time for project with tag(s) that was not tracked live"
complete -f -c watson -n '__fish_watson_using_command add' -s f -l from -d "Start date for add"
complete -f -c watson -n '__fish_watson_has_from add' -s t -l to -d "end date for add"
complete -f -c watson -n '__fish_watson_using_command add' -s c -l confirm-new-project -d "Confirm addition of new project"
complete -f -c watson -n '__fish_watson_using_command add' -s b -l confirm-new-tag -d "Confirm addition of new tag"
# aggregate
complete -f -c watson -n '__fish_watson_needs_sub' -a aggregate -d "Display a report of the time spent on each project aggregated by day"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s c -l current -d "include the running frame"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s C -l no-current -d "exclude the running frame (default)"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s f -l from -d "Start date for aggregate"
complete -f -c watson -n '__fish_watson_has_from aggregate' -s t -l to -d "end date for aggregate"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s p -l project -d "restrict to project" -a "(__fish_watson_get_projects)"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s T -l tag -d "restrict to tag" -a "(__fish_watson_get_tags)"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s j -l json -d "output json"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s s -l csv -d "output csv"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s g -l pager -d "view through pager"
complete -f -c watson -n '__fish_watson_using_command aggregate' -s G -l no-pager -d "don't vew through pager"
# config
complete -f -c watson -n '__fish_watson_needs_sub' -a config -d "Get and set configuration options"
complete -f -c watson -n '__fish_watson_using_command config' -s e -l edit -d "Edit the config with an editor"
# edit
complete -f -c watson -n '__fish_watson_needs_sub' -a edit -d "Edit a frame"
complete -f -c watson -n '__fish_watson_using_command edit' -a "(__fish_watson_get_frames)"
# log
complete -f -c watson -n '__fish_watson_needs_sub' -a log -d "Display sessions during the given timespan"
complete -f -c watson -n '__fish_watson_using_command log' -s c -l current -d "include the running frame"
complete -f -c watson -n '__fish_watson_using_command log' -s C -l no-current -d "exclude the running frame (default)"
complete -f -c watson -n '__fish_watson_using_command log' -s f -l from -d "Start date for log"
complete -f -c watson -n '__fish_watson_has_from log' -s t -l to -d "end date for log"
complete -f -c watson -n '__fish_watson_using_command log' -s y -l year -d "show the last year"
complete -f -c watson -n '__fish_watson_using_command log' -s m -l month -d "show the last month"
complete -f -c watson -n '__fish_watson_using_command log' -s l -l luna -d "show the last lunar cycle"
complete -f -c watson -n '__fish_watson_using_command log' -s w -l week -d "show week-to-day"
complete -f -c watson -n '__fish_watson_using_command log' -s d -l day -d "show today"
complete -f -c watson -n '__fish_watson_using_command log' -s a -l all -d "show all"
complete -f -c watson -n '__fish_watson_using_command log' -s p -l project -d "restrict to project" -a "(__fish_watson_get_projects)"
complete -f -c watson -n '__fish_watson_using_command log' -s T -l tag -d "restrict to tag" -a "(__fish_watson_get_tags)"
complete -f -c watson -n '__fish_watson_using_command log' -s j -l json -d "output json"
complete -f -c watson -n '__fish_watson_using_command log' -s s -l csv -d "output csv"
complete -f -c watson -n '__fish_watson_using_command log' -s g -l pager -d "view through pager"
complete -f -c watson -n '__fish_watson_using_command log' -s G -l no-pager -d "don't vew through pager"
# merge
complete -f -c watson -n '__fish_watson_needs_sub' -a merge -d "merge existing frames with conflicting ones"
complete -f -c watson -n '__fish_watson_using_command merge' -s f -l force -d "silently merge"
# remove
complete -f -c watson -n '__fish_watson_needs_sub' -a remove -d "Remove a frame"
complete -f -c watson -n '__fish_watson_using_command remove' -a "(__fish_watson_get_frames)"
complete -f -c watson -n '__fish_watson_using_command remove' -s f -l force -d "silently remove"
# rename
complete -f -c watson -n '__fish_watson_needs_sub' -a rename -d "Rename a project or tag"
complete -f -c watson -n '__fish_watson_using_command rename' -a "(__fish_watson_get_projects) (__fish_watson_get_tags)"
# report
complete -f -c watson -n '__fish_watson_needs_sub' -a report -d "Display a report of time spent"
complete -f -c watson -n '__fish_watson_using_command report' -s c -l current -d "include the running frame"
complete -f -c watson -n '__fish_watson_using_command report' -s C -l no-current -d "exclude the running frame (default)"
complete -f -c watson -n '__fish_watson_using_command report' -s f -l from -d "Start date for report"
complete -f -c watson -n '__fish_watson_has_from report' -s t -l to -d "end date for report"
complete -f -c watson -n '__fish_watson_using_command report' -s y -l year -d "show the last year"
complete -f -c watson -n '__fish_watson_using_command report' -s m -l month -d "show the last month"
complete -f -c watson -n '__fish_watson_using_command report' -s l -l luna -d "show the last lunar cycle"
complete -f -c watson -n '__fish_watson_using_command report' -s w -l week -d "show week-to-day"
complete -f -c watson -n '__fish_watson_using_command report' -s d -l day -d "show today"
complete -f -c watson -n '__fish_watson_using_command report' -s a -l all -d "show all"
complete -f -c watson -n '__fish_watson_using_command report' -s p -l project -d "restrict to project" -a "(__fish_watson_get_projects)"
complete -f -c watson -n '__fish_watson_using_command report' -s T -l tag -d "restrict to tag" -a "(__fish_watson_get_tags)"
complete -f -c watson -n '__fish_watson_using_command report' -s j -l json -d "output json"
complete -f -c watson -n '__fish_watson_using_command report' -s s -l csv -d "output csv"
complete -f -c watson -n '__fish_watson_using_command report' -s g -l pager -d "view through pager"
complete -f -c watson -n '__fish_watson_using_command report' -s G -l no-pager -d "don't vew through pager"
# restart
complete -f -c watson -n '__fish_watson_needs_sub' -a restart -d "Restart monitoring time for a stopped project"
complete -f -c watson -n '__fish_watson_using_command restart' -s s -l stop -d "stop running project"
complete -f -c watson -n '__fish_watson_using_command restart' -s S -l no-stop -d "do not stop running project"
complete -f -c watson -n '__fish_watson_using_command restart' -a "(__fish_watson_get_frames)"
# start
complete -f -c watson -n '__fish_watson_needs_sub' -a start -d "Start monitoring time for a project"
complete -f -c watson -n '__fish_watson_needs_project start' -a "(__fish_watson_get_projects)"
complete -f -c watson -n '__fish_watson_has_project start' -a "+(__fish_watson_get_tags)"
# status
complete -f -c watson -n '__fish_watson_needs_sub' -a status -d "Display when the current project was started and time spent"
complete -f -c watson -n '__fish_watson_using_command status' -s p -l project -d "only show project"
complete -f -c watson -n '__fish_watson_using_command status' -s t -l tags -d "only show tags"
complete -f -c watson -n '__fish_watson_using_command status' -s e -l elapsed -d "only show elapsed time"
# stop
complete -f -c watson -n '__fish_watson_needs_sub' -a stop -d "Stop monitoring time for the current project"
complete -f -c watson -n '__fish_watson_using_command stop' -l at -d "Stop frame at this time (YYYY-MM-DDT)?HH:MM(:SS)?"

View file

@ -1,28 +0,0 @@
function _nvm_install --on-event nvm_install
set --query XDG_DATA_HOME || set --local XDG_DATA_HOME ~/.local/share
set --universal nvm_data $XDG_DATA_HOME/nvm
set --query nvm_mirror || set --universal nvm_mirror https://nodejs.org/dist
test ! -d $nvm_data && command mkdir -p $nvm_data
echo "Downloading the Node distribution index..." 2>/dev/null
_nvm_index_update $nvm_mirror $nvm_data/.index
end
function _nvm_update --on-event nvm_update
set --query XDG_DATA_HOME || set --local XDG_DATA_HOME ~/.local/share
set --universal nvm_data $XDG_DATA_HOME/nvm
set --query nvm_mirror || set --universal nvm_mirror https://nodejs.org/dist
end
function _nvm_uninstall --on-event nvm_uninstall
command rm -rf $nvm_data
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
set --names | string replace --filter --regex -- "^nvm" "set --erase nvm" | source
functions --erase (functions --all | string match --entire --regex -- "^_nvm_")
end
if status is-interactive && set --query nvm_default_version && ! set --query nvm_current_version
nvm use $nvm_default_version >/dev/null
end

View file

@ -1,7 +0,0 @@
# Path to Oh My Fish install.
set -q XDG_DATA_HOME
and set -gx OMF_PATH "$XDG_DATA_HOME/omf"
or set -gx OMF_PATH "$HOME/.local/share/omf"
# Load Oh My Fish configuration.
source $OMF_PATH/init.fish

View file

@ -1,15 +0,0 @@
set EDITOR vim
set PAGER bat
set BROWSER firefox
# if status --is-interactive
# set BASE16_SHELL "$HOME/.config/base16-shell/"
# source "$BASE16_SHELL/profile_helper.fish"
# end
begin
set --local AUTOJUMP_PATH $HOME/.config/fish/functions/autojump.fish
if test -e $AUTOJUMP_PATH
source $AUTOJUMP_PATH
end
end

View file

@ -1,2 +0,0 @@
jorgebucaran/fisher
jorgebucaran/nvm.fish

View file

@ -1,39 +0,0 @@
# This file contains fish universal variable definitions.
# VERSION: 3.0
SETUVAR --export SBCL_HOME:/usr/lib64/sbcl
SETUVAR __fish_initialized:3400
SETUVAR _fish_abbr_mux:tmuxinator
SETUVAR _fisher_jorgebucaran_2F_fisher_files:/Users/iankeane/\x2econfig/fish/functions/fisher\x2efish\x1e/Users/iankeane/\x2econfig/fish/completions/fisher\x2efish
SETUVAR _fisher_jorgebucaran_2F_nvm_2E_fish_files:/Users/iankeane/\x2econfig/fish/functions/_nvm_index_update\x2efish\x1e/Users/iankeane/\x2econfig/fish/functions/_nvm_list\x2efish\x1e/Users/iankeane/\x2econfig/fish/functions/_nvm_version_activate\x2efish\x1e/Users/iankeane/\x2econfig/fish/functions/_nvm_version_deactivate\x2efish\x1e/Users/iankeane/\x2econfig/fish/functions/nvm\x2efish\x1e/Users/iankeane/\x2econfig/fish/conf\x2ed/nvm\x2efish\x1e/Users/iankeane/\x2econfig/fish/completions/nvm\x2efish
SETUVAR _fisher_plugins:jorgebucaran/fisher\x1ejorgebucaran/nvm\x2efish
SETUVAR fish_color_autosuggestion:555\x1ebrblack
SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:005fd7
SETUVAR fish_color_comment:990000
SETUVAR fish_color_cwd:green
SETUVAR fish_color_cwd_root:red
SETUVAR fish_color_end:009900
SETUVAR fish_color_error:ff0000
SETUVAR fish_color_escape:00a6b2
SETUVAR fish_color_history_current:\x2d\x2dbold
SETUVAR fish_color_host:normal
SETUVAR fish_color_host_remote:yellow
SETUVAR fish_color_normal:normal
SETUVAR fish_color_operator:00a6b2
SETUVAR fish_color_param:00afff
SETUVAR fish_color_quote:999900
SETUVAR fish_color_redirection:00afff
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_status:red
SETUVAR fish_color_user:brgreen
SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_key_bindings:fish_vi_key_bindings
SETUVAR fish_pager_color_completion:\x1d
SETUVAR fish_pager_color_description:B3A06D\x1eyellow
SETUVAR fish_pager_color_prefix:white\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
SETUVAR fish_pager_color_selected_background:\x2dr
SETUVAR fish_user_paths:/home/green/scripts\x1e/home/green/\x2elocal/bin\x1e/home/green/\x2ecargo/bin\x1e/usr/games\x1e/Users/iankeane/\x2elocal/bin\x1e/Users/iankeane/\x2egem/ruby/3\x2e1\x2e0/bin\x1e/usr/local/Cellar/ruby/3\x2e1\x2e2/bin
SETUVAR nvm_data:/Users/iankeane/\x2elocal/share/nvm
SETUVAR nvm_mirror:https\x3a//nodejs\x2eorg/dist

View file

@ -1,16 +0,0 @@
function _nvm_index_update --argument-names mirror index
if not command curl --location --silent $mirror/index.tab >$index.temp
command rm -f $index.temp
echo "nvm: Can't update index, host unavailable: \"$mirror\"" >&2
return 1
end
command awk -v OFS=\t '
/v0.9.12/ { exit } # Unsupported
NR > 1 {
print $1 (NR == 2 ? " latest" : $10 != "-" ? " lts/" tolower($10) : "")
}
' $index.temp >$index
command rm -f $index.temp
end

View file

@ -1,11 +0,0 @@
function _nvm_list
set --local versions $nvm_data/*
set --query versions[1] &&
string match --entire --regex -- (string match --regex -- "v\d.+" $versions |
string escape --style=regex |
string join "|"
) <$nvm_data/.index
command --all node |
string match --quiet --invert --regex -- "^$nvm_data" && echo system
end

View file

@ -1,4 +0,0 @@
function _nvm_version_activate --argument-names v
set --global --export nvm_current_version $v
set --prepend PATH $nvm_data/$v/bin
end

View file

@ -1,5 +0,0 @@
function _nvm_version_deactivate --argument-names v
test "$nvm_current_version" = "$v" && set --erase nvm_current_version
set --local index (contains --index -- $nvm_data/$v/bin $PATH) &&
set --erase PATH[$index]
end

View file

@ -1,112 +0,0 @@
set -gx AUTOJUMP_SOURCED 1
# set user installation path
if test -d ~/.autojump
set -x PATH ~/.autojump/bin $PATH
end
# Set ostype, if not set
if not set -q OSTYPE
set -gx OSTYPE (bash -c 'echo ${OSTYPE}')
end
# enable tab completion
complete -x -c j -a '(autojump --complete (commandline -t))'
# set error file location
if test (uname) = "Darwin"
set -gx AUTOJUMP_ERROR_PATH ~/Library/autojump/errors.log
else if test -d "$XDG_DATA_HOME"
set -gx AUTOJUMP_ERROR_PATH $XDG_DATA_HOME/autojump/errors.log
else
set -gx AUTOJUMP_ERROR_PATH ~/.local/share/autojump/errors.log
end
if test ! -d (dirname $AUTOJUMP_ERROR_PATH)
mkdir -p (dirname $AUTOJUMP_ERROR_PATH)
end
# change pwd hook
function __aj_add --on-variable PWD
status --is-command-substitution; and return
autojump --add (pwd) >/dev/null 2>>$AUTOJUMP_ERROR_PATH &
end
# misc helper functions
function __aj_err
# TODO(ting|#247): set error file location
echo -e $argv 1>&2; false
end
# default autojump command
function j
switch "$argv"
case '-*' '--*'
autojump $argv
case '*'
set -l output (autojump $argv)
# Check for . and attempt a regular cd
if [ $output = "." ]
cd $argv
else
if test -d "$output"
set_color red
echo $output
set_color normal
cd $output
else
__aj_err "autojump: directory '"$argv"' not found"
__aj_err "\n$output\n"
__aj_err "Try `autojump --help` for more information."
end
end
end
end
# jump to child directory (subdirectory of current path)
function jc
switch "$argv"
case '-*'
j $argv
case '*'
j (pwd) $argv
end
end
# open autojump results in file browser
function jo
set -l output (autojump $argv)
if test -d "$output"
switch $OSTYPE
case 'linux*'
xdg-open (autojump $argv)
case 'darwin*'
open (autojump $argv)
case cygwin
cygstart "" (cygpath -w -a (pwd))
case '*'
__aj_err "Unknown operating system: \"$OSTYPE\""
end
else
__aj_err "autojump: directory '"$argv"' not found"
__aj_err "\n$output\n"
__aj_err "Try `autojump --help` for more information."
end
end
# open autojump results (child directory) in file browser
function jco
switch "$argv"
case '-*'
j $argv
case '*'
jo (pwd) $argv
end
end

View file

@ -1,3 +0,0 @@
#AWSume alias to source the AWSume script
alias awsume="source (which awsume.fish)"

View file

@ -1,19 +0,0 @@
# This script was automatically generated by the broot program
# More information can be found in https://github.com/Canop/broot
# This function starts broot and executes the command
# it produces, if any.
# It's needed because some shell commands, like `cd`,
# have no useful effect if executed in a subshell.
function br --wraps=broot
set -l cmd_file (mktemp)
if broot --outcmd $cmd_file $argv
read --local --null cmd < $cmd_file
rm -f $cmd_file
eval $cmd
else
set -l code $status
rm -f $cmd_file
return $code
end
end

View file

@ -1,3 +0,0 @@
function dunsttest --wraps='notify-send -u low "test" && notify-send -u normal "test" && notify-send -u critical "test"' --description 'alias dunsttest notify-send -u low "test" && notify-send -u normal "test" && notify-send -u critical "test"'
notify-send -u low "test" && notify-send -u normal "test" && notify-send -u critical "test" $argv;
end

View file

@ -1,3 +0,0 @@
function fish_mode_prompt
# NOOP - Disable vim mode indicator
end

View file

@ -1,48 +0,0 @@
function fish_prompt
set -l last_command_status $status
set -l symbol 'π'
set -l normal_color (set_color normal)
set -l branch_color (set_color yellow)
set -l meta_color (set_color red)
set -l symbol_color (set_color blue -o)
set -l error_color (set_color red -o)
if git_is_repo
echo -n -s $branch_color (git_branch_name) $normal_color
set -l git_meta ""
if test (command git ls-files --others --exclude-standard | wc -w 2> /dev/null) -gt 0
set git_meta "$git_meta?"
end
if test (command git rev-list --walk-reflogs --count refs/stash 2> /dev/null)
set git_meta "$git_meta\$"
end
if git_is_touched
git_is_dirty && set git_meta "$git_meta"
git_is_staged && set git_meta "$git_meta"
end
set -l commit_count (command git rev-list --count --left-right (git remote)/(git_branch_name)"...HEAD" 2> /dev/null)
if test $commit_count
set -l behind (echo $commit_count | cut -f 1)
set -l ahead (echo $commit_count | cut -f 2)
if test $behind -gt 0
set git_meta "$git_meta🠋"
end
if test $ahead -gt 0
set git_meta "$git_meta🠉"
end
end
if test $git_meta
echo -n -s $meta_color " " $git_meta " " $normal_color
else
echo -n -s " "
end
end
if test $last_command_status -eq 0
echo -n -s $symbol_color $symbol " " $normal_color
else
echo -n -s $error_color $symbol " " $normal_color
end
end

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

@ -1,3 +0,0 @@
function mediamount --wraps='mount_smbfs //wizard:Dexter706@tower/media mnt/media' --description 'alias mediamount=mount_smbfs //wizard:Dexter706@tower/media mnt/media'
mount_smbfs //wizard:Dexter706@tower/media mnt/media $argv;
end

View file

@ -1,3 +0,0 @@
function now --wraps='date +%a%l:%M%p' --wraps=date\ \'+\%a\ \%l:\%M\%p\' --description alias\ now\ date\ \'+\%a\ \%l:\%M\%p\'
date '+%a %l:%M%p' $argv;
end

View file

@ -1,206 +0,0 @@
function nvm --argument-names cmd v --description "Node version manager"
if test -z "$v" && contains -- "$cmd" install use
for file in .nvmrc .node-version
set file (_nvm_find_up $PWD $file) && read v <$file && break
end
if test -z "$v"
echo "nvm: Invalid version or missing \".nvmrc\" file" >&2
return 1
end
end
switch "$cmd"
case -v --version
echo "nvm, version 2.2.6"
case "" -h --help
echo "Usage: nvm install <version> Download and activate the specified Node version"
echo " nvm install Install version from nearest .nvmrc file"
echo " nvm use <version> Activate a version in the current shell"
echo " nvm use Activate version from nearest .nvmrc file"
echo " nvm list List installed versions"
echo " nvm list-remote List versions available to install"
echo " nvm list-remote <regex> List versions matching a given regular expression"
echo " nvm current Print the currently-active version"
echo " nvm uninstall <version> Uninstall a version"
echo "Options:"
echo " -v or --version Print version"
echo " -h or --help Print this help message"
echo "Variables:"
echo " nvm_arch Override architecture, e.g. x64-musl"
echo " nvm_mirror Set the Node download mirror"
echo " nvm_default_version Set the default version for new shells"
case install
_nvm_index_update $nvm_mirror $nvm_data/.index || return
string match --entire --regex -- (_nvm_version_match $v) <$nvm_data/.index | read v alias
if ! set --query v[1]
echo "nvm: Invalid version number or alias: \"$argv[2..-1]\"" >&2
return 1
end
if test ! -e $nvm_data/$v
set --local os (command uname -s | string lower)
set --local ext tar.gz
set --local arch (command uname -m)
switch $os
case aix
set arch ppc64
case sunos
case linux
case darwin
case {MSYS_NT,MINGW\*_NT}\*
set os win
set ext zip
case \*
echo "nvm: Unsupported operating system: \"$os\"" >&2
return 1
end
switch $arch
case i\*86
set arch x86
case x86_64
set arch x64
case arm64
string match --regex --quiet "v(?<major>\d+)" $v
if test "$os" = darwin -a $major -lt 16
set arch x64
end
case armv6 armv6l
set arch armv6l
case armv7 armv7l
set arch armv7l
case armv8 armv8l aarch64
set arch arm64
end
set --query nvm_arch && set arch $nvm_arch
set --local dir "node-$v-$os-$arch"
set --local url $nvm_mirror/$v/$dir.$ext
command mkdir -p $nvm_data/$v
echo -e "Installing Node \x1b[1m$v\x1b[22m $alias"
echo -e "Fetching \x1b[4m$url\x1b[24m\x1b[7m"
if ! command curl --progress-bar --location $url \
| command tar --extract --gzip --directory $nvm_data/$v 2>/dev/null
command rm -rf $nvm_data/$v
echo -e "\033[F\33[2K\x1b[0mnvm: Invalid mirror or host unavailable: \"$url\"" >&2
return 1
end
echo -en "\033[F\33[2K\x1b[0m"
if test "$os" = win
command mv $nvm_data/$v/$dir $nvm_data/$v/bin
else
command mv $nvm_data/$v/$dir/* $nvm_data/$v
command rm -rf $nvm_data/$v/$dir
end
end
if test $v != "$nvm_current_version"
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
_nvm_version_activate $v
end
printf "Now using Node %s (npm %s) %s\n" (_nvm_node_info)
case use
test $v = default && set v $nvm_default_version
_nvm_list | string match --entire --regex -- (_nvm_version_match $v) | read v __
if ! set --query v[1]
echo "nvm: Can't use Node \"$argv[2..-1]\", version must be installed first" >&2
return 1
end
if test $v != "$nvm_current_version"
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
test $v != system && _nvm_version_activate $v
end
printf "Now using Node %s (npm %s) %s\n" (_nvm_node_info)
case uninstall
if test -z "$v"
echo "nvm: Not enough arguments for command: \"$cmd\"" >&2
return 1
end
test $v = default && test ! -z "$nvm_default_version" && set v $nvm_default_version
_nvm_list | string match --entire --regex -- (_nvm_version_match $v) | read v __
if ! set -q v[1]
echo "nvm: Node version not installed or invalid: \"$argv[2..-1]\"" >&2
return 1
end
printf "Uninstalling Node %s %s\n" $v (string replace ~ \~ "$nvm_data/$v/bin/node")
_nvm_version_deactivate $v
command rm -rf $nvm_data/$v
case current
_nvm_current
case ls list
_nvm_list | _nvm_list_format (_nvm_current) $argv[2]
case lsr {ls,list}-remote
_nvm_index_update $nvm_mirror $nvm_data/.index || return
_nvm_list | command awk '
FILENAME == "-" && (is_local[$1] = FNR == NR) { next } {
print $0 (is_local[$1] ? " ✓" : "")
}
' - $nvm_data/.index | _nvm_list_format (_nvm_current) $argv[2]
case \*
echo "nvm: Unknown command or option: \"$cmd\" (see nvm -h)" >&2
return 1
end
end
function _nvm_find_up --argument-names path file
test -e "$path/$file" && echo $path/$file || begin
test "$path" != / || return
_nvm_find_up (command dirname $path) $file
end
end
function _nvm_version_match --argument-names v
string replace --regex -- '^v?(\d+|\d+\.\d+)$' 'v$1.' $v |
string replace --filter --regex -- '^v?(\d+)' 'v$1' |
string escape --style=regex ||
string lower '\b'$v'(?:/\w+)?$'
end
function _nvm_list_format --argument-names current regex
command awk -v current="$current" -v regex="$regex" '
$0 ~ regex {
aliases[versions[i++] = $1] = $2 " " $3
pad = (n = length($1)) > pad ? n : pad
}
END {
if (!i) exit 1
while (i--)
printf((current == versions[i] ? " ▶ " : " ") "%"pad"s %s\n",
versions[i], aliases[versions[i]])
}
'
end
function _nvm_current
command --search --quiet node || return
set --query nvm_current_version && echo $nvm_current_version || echo system
end
function _nvm_node_info
set --local npm_path (string replace bin/npm-cli.js "" (realpath (command --search npm)))
test -f $npm_path/package.json || set --local npm_version_default (command npm --version)
command node --eval "
console.log(process.version)
console.log('$npm_version_default' ? '$npm_version_default': require('$npm_path/package.json').version)
console.log(process.execPath.replace(require('os').homedir(), '~'))
"
end

View file

@ -1,3 +0,0 @@
function w --wraps=watson --description 'alias w=watson'
watson $argv;
end

View file

@ -1,23 +0,0 @@
#!/usr/bin/fish
while true
set batt_str (acpi | cut -d ':' -f2 | cut -d ',' -f1 | tr -d ' ')
set batt_emoji = ""
switch $batt_str
case "Full*"
set batt_emoji "✔️"
case 'Discharging*'
set batt_emoji "🔋"
case 'Not*'
set batt_emoji "X"
case 'Charging*'
set batt_emoji "⚡"
end
set batt (acpi | cut -d ':' -f2 | cut -d ',' -f2 | tr -d ' ')
echo -e "%{c}$(now) %{r}$(sugar --lb) $batt_emoji $batt "
sleep 1
end

View file

@ -1,122 +0,0 @@
# interpreter for shell commands
set shell /usr/bin/fish
# set '-eu' options for shell commands
# These options are used to have safer shell commands. Option '-e' is used to
# exit on error and option '-u' is used to give error for unset variables.
# Option '-f' disables pathname expansion which can be useful when $f, $fs, and
# $fx variables contain names with '*' or '?' characters. However, this option
# is used selectively within individual commands as it can be limiting at
# times.
# set shellopts '-eu'
# set internal field separator (IFS) to "\n" for shell commands
# This is useful to automatically split file names in $fs and $fx properly
# since default file separator used in these variables (i.e. 'filesep' option)
# is newline. You need to consider the values of these options and create your
# commands accordingly.
# set ifs "\n"
# leave some space at the top and the bottom of the screen
set scrolloff 10
# use enter for shell commands
map <enter> shell
# execute current file (must be executable)
map x $$f
map X !$f
# dedicated keys for file opener actions
# map o &mimeopen $f
# map O $mimeopen --ask $f
# define a custom 'open' command
# This command is called when current file is not a directory. You may want to
# use either file extensions and/or mime types here. Below uses an editor for
# text files and a file opener for the rest.
cmd open ${{
test -L $f && set f (readlink -f $f)
switch (file --mime-type $f -b)
case "text/*"
$EDITOR $f
case "video/*"
mpv $f
end
}}
map o open
# extra open for alternative action on file, e.g. add to playlist in mpv, open
# in new windwo
# cmd altOpen ${{
# test -L $f && f=$(readlink -f $f)
# case $(file --mime-type $f -b) in
# text/*) $EDITOR $fx;;
# video/*) mpv $fx;;
# *) for f in $fx; do setsid $OPENER $f > /dev/null 2> /dev/null & done;;
# esac
# }}
# define a custom 'rename' command without prompt for overwrite
# cmd rename %[ -e $1 ] && printf "file exists" || mv $f $1
# map r push :rename<space>
# make sure trash folder exists
# %mkdir -p ~/.trash
# move current file or selected files to trash folder
# (also see 'man mv' for backup/overwrite options)
cmd trash %set -f; mv $fx ~/.trash
# define a custom 'delete' command
# cmd delete ${{
# set -f
# printf "$fx\n"
# printf "delete?[y/n]"
# read ans
# [ "$ans" = "y" ] && rm -rf $fx
# }}
# use '<delete>' key for either 'trash' or 'delete' command
# map <delete> trash
# map <delete> delete
# extract the current file with the right command
# (xkcd link: https://xkcd.com/1168/)
cmd extract ${{
set -f
case $f in
*.tar.bz|*.tar.bz2|*.tbz|*.tbz2) tar xjvf $f;;
*.tar.gz|*.tgz) tar xzvf $f;;
*.tar.xz|*.txz) tar xJvf $f;;
*.zip) unzip $f;;
*.rar) unrar x $f;;
*.7z) 7z x $f;;
esac
}}
# compress current file or selected files with tar and gunzip
cmd tar ${{
set -f
mkdir $1
cp -r $fx $1
tar czf $1.tar.gz $1
rm -rf $1
}}
# compress current file or selected files with zip
cmd zip ${{
set -f
mkdir $1
cp -r $fx $1
zip -r $1.zip $1
rm -rf $1
}}
# extract
# zip
# moveto fzf with bat
set previewer '~/.config/lf/scope'

View file

@ -1,480 +0,0 @@
##############################################################
## This is the example bindings file. Copy it to ##
## ~/.ncmpcpp/bindings or $XDG_CONFIG_HOME/ncmpcpp/bindings ##
## and set up your preferences ##
##############################################################
#
#def_key "mouse"
# mouse_event
#
#def_key "up"
# scroll_up
#
#def_key "shift-up"
# select_item
# scroll_up
#
#def_key "down"
# scroll_down
#
#def_key "shift-down"
# select_item
# scroll_down
#
#def_key "["
# scroll_up_album
#
#def_key "]"
# scroll_down_album
#
#def_key "{"
# scroll_up_artist
#
#def_key "}"
# scroll_down_artist
#
#def_key "page_up"
# page_up
#
#def_key "page_down"
# page_down
#
#def_key "home"
# move_home
#
#def_key "end"
# move_end
#
#def_key "insert"
# select_item
#
#def_key "enter"
# enter_directory
#
#def_key "enter"
# toggle_output
#
#def_key "enter"
# run_action
#
def_key "enter"
play_item
#
#def_key "space"
# add_item_to_playlist
#
#def_key "space"
# toggle_lyrics_update_on_song_change
#
#def_key "space"
# toggle_visualization_type
#
#def_key "delete"
# delete_playlist_items
#
#def_key "delete"
# delete_browser_items
#
#def_key "delete"
# delete_stored_playlist
#
#def_key "right"
# next_column
#
#def_key "right"
# slave_screen
#
#def_key "right"
# volume_up
#
#def_key "+"
# volume_up
#
#def_key "left"
# previous_column
#
#def_key "left"
# master_screen
#
#def_key "left"
# volume_down
#
#def_key "-"
# volume_down
#
#def_key ":"
# execute_command
#
#def_key "tab"
# next_screen
#
#def_key "shift-tab"
# previous_screen
#
#def_key "f1"
# show_help
#
#def_key "1"
# show_playlist
#
#def_key "2"
# show_browser
#
#def_key "2"
# change_browse_mode
#
#def_key "3"
# show_search_engine
#
#def_key "3"
# reset_search_engine
#
#def_key "4"
# show_media_library
#
#def_key "4"
# toggle_media_library_columns_mode
#
#def_key "5"
# show_playlist_editor
#
#def_key "6"
# show_tag_editor
#
#def_key "7"
# show_outputs
#
#def_key "8"
# show_visualizer
#
#def_key "="
# show_clock
#
#def_key "@"
# show_server_info
#
#def_key "s"
# stop
#
#def_key "p"
# pause
#
#def_key ">"
# next
#
#def_key "<"
# previous
#
#def_key "ctrl-h"
# jump_to_parent_directory
#
#def_key "ctrl-h"
# replay_song
#
#def_key "backspace"
# jump_to_parent_directory
#
#def_key "backspace"
# replay_song
#
#def_key "f"
# seek_forward
#
#def_key "b"
# seek_backward
#
#def_key "r"
# toggle_repeat
#
#def_key "z"
# toggle_random
#
#def_key "y"
# save_tag_changes
#
#def_key "y"
# start_searching
#
#def_key "y"
# toggle_single
#
#def_key "R"
# toggle_consume
#
#def_key "Y"
# toggle_replay_gain_mode
#
#def_key "T"
# toggle_add_mode
#
#def_key "|"
# toggle_mouse
#
#def_key "#"
# toggle_bitrate_visibility
#
#def_key "Z"
# shuffle
#
#def_key "x"
# toggle_crossfade
#
#def_key "X"
# set_crossfade
#
#def_key "u"
# update_database
#
#def_key "ctrl-s"
# sort_playlist
#
#def_key "ctrl-s"
# toggle_browser_sort_mode
#
#def_key "ctrl-s"
# toggle_media_library_sort_mode
#
#def_key "ctrl-r"
# reverse_playlist
#
#def_key "ctrl-f"
# apply_filter
#
#def_key "ctrl-_"
# select_found_items
#
#def_key "/"
# find
#
#def_key "/"
# find_item_forward
#
#def_key "?"
# find
#
#def_key "?"
# find_item_backward
#
#def_key "."
# next_found_item
#
#def_key ","
# previous_found_item
#
#def_key "w"
# toggle_find_mode
#
#def_key "e"
# edit_song
#
#def_key "e"
# edit_library_tag
#
#def_key "e"
# edit_library_album
#
#def_key "e"
# edit_directory_name
#
#def_key "e"
# edit_playlist_name
#
#def_key "e"
# edit_lyrics
#
#def_key "i"
# show_song_info
#
#def_key "I"
# show_artist_info
#
#def_key "g"
# jump_to_position_in_song
#
#def_key "l"
# show_lyrics
#
#def_key "ctrl-v"
# select_range
#
#def_key "v"
# reverse_selection
#
#def_key "V"
# remove_selection
#
#def_key "B"
# select_album
#
#def_key "a"
# add_selected_items
#
#def_key "c"
# clear_playlist
#
#def_key "c"
# clear_main_playlist
#
#def_key "C"
# crop_playlist
#
#def_key "C"
# crop_main_playlist
#
#def_key "m"
# move_sort_order_up
#
#def_key "m"
# move_selected_items_up
#
#def_key "n"
# move_sort_order_down
#
#def_key "n"
# move_selected_items_down
#
#def_key "M"
# move_selected_items_to
#
#def_key "A"
# add
#
#def_key "S"
# save_playlist
#
#def_key "o"
# jump_to_playing_song
#
#def_key "G"
# jump_to_browser
#
#def_key "G"
# jump_to_playlist_editor
#
#def_key "~"
# jump_to_media_library
#
#def_key "E"
# jump_to_tag_editor
#
#def_key "U"
# toggle_playing_song_centering
#
#def_key "P"
# toggle_display_mode
#
#def_key "\\"
# toggle_interface
#
#def_key "!"
# toggle_separators_between_albums
#
#def_key "L"
# toggle_lyrics_fetcher
#
#def_key "F"
# fetch_lyrics_in_background
#
#def_key "alt-l"
# toggle_fetching_lyrics_in_background
#
#def_key "ctrl-l"
# toggle_screen_lock
#
#def_key "`"
# toggle_library_tag_type
#
#def_key "`"
# refetch_lyrics
#
#def_key "`"
# add_random_items
#
#def_key "ctrl-p"
# set_selected_items_priority
#
#def_key "q"
# quit
#
#
#def_key "f"
# find
#def_key "f"
# find_item_forward
def_key "+"
show_clock
def_key "="
volume_up
def_key "j"
scroll_down
def_key "k"
scroll_up
def_key "ctrl-u"
page_up
#push_characters "kkkkkkkkkkkkkkk"
def_key "ctrl-d"
page_down
#push_characters "jjjjjjjjjjjjjjj"
def_key "u"
page_up
#push_characters "kkkkkkkkkkkkkkk"
def_key "d"
page_down
#push_characters "jjjjjjjjjjjjjjj"
def_key "h"
previous_column
def_key "l"
next_column
def_key "."
show_lyrics
def_key "n"
next_found_item
def_key "N"
previous_found_item
# not used but bound
def_key "J"
move_sort_order_down
def_key "K"
move_sort_order_up
def_key "h"
jump_to_parent_directory
def_key "l"
enter_directory
def_key "l"
run_action
def_key "l"
play_item
def_key "m"
show_media_library
def_key "m"
toggle_media_library_columns_mode
def_key "t"
show_tag_editor
def_key "v"
show_visualizer
def_key "G"
move_end
def_key "g"
move_home
#jump_to_position_in_song
def_key "U"
update_database
def_key "s"
reset_search_engine
def_key "s"
show_search_engine
def_key "f"
show_browser
def_key "f"
change_browse_mode
def_key "x"
delete_playlist_items
def_key "P"
show_playlist

View file

@ -1,40 +0,0 @@
browser qutebrowser
#show-read-feeds no
auto-reload yes
external-url-viewer "urlscan -dc -r 'linkhandler {}'"
bind-key j down
bind-key k up
bind-key j next articlelist
bind-key k prev articlelist
bind-key J next-feed articlelist
bind-key K prev-feed articlelist
bind-key G end
bind-key g home
bind-key d pagedown
bind-key u pageup
bind-key l open
bind-key h quit
bind-key a toggle-article-read
bind-key n next-unread
bind-key N prev-unread
bind-key D pb-download
bind-key U show-urls
bind-key x pb-delete
color listnormal cyan default
color listfocus black yellow standout bold
color listnormal_unread blue default
color listfocus_unread yellow default bold
color info red black bold
color article cyan default
# browser linkhandler
macro , open-in-browser
macro t set browser "tsp youtube-dl --add-metadata -ic"; open-in-browser ; set browser linkhandler
macro a set browser "tsp youtube-dl --add-metadata -xic -f bestaudio/best"; open-in-browser ; set browser linkhandler
macro v set browser "setsid nohup mpv"; open-in-browser ; set browser linkhandler
macro w set browser "w3m"; open-in-browser ; set browser linkhandler
macro p set browser "dmenuhandler"; open-in-browser ; set browser linkhandler
macro c set browser "xsel -b <<<" ; open-in-browser ; set browser linkhandler

View file

@ -1,342 +0,0 @@
" vim-plug {{{
" Automatic installation
if empty(glob('~/.vim/autoload/plug.vim'))
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
endif
call plug#begin('~/.nvim/plugins')
packloadall
Plug 'chriskempson/base16-vim'
Plug 'junegunn/vim-easy-align'
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --bin --all' }
" Plug 'https://gitlab.com/lstwn/broot.vim'
Plug 'tpope/vim-surround'
Plug 'tpope/vim-commentary'
" Plug 'dense-analysis/ale'
Plug 'airblade/vim-gitgutter'
" Plug 'itchyny/lightline.vim'
Plug 'tpope/vim-repeat'
" Plug 'haya14busa/incsearch.vim'
Plug 'sheerun/vim-polyglot'
" Plug 'nvie/vim-flake8'
" Plug 'wolf-dog/lightline-sceaduhelm.vim'
Plug 'tpope/vim-fugitive'
Plug 'justinmk/vim-sneak'
Plug 'jgdavey/tslime.vim'
Plug 'vimwiki/vimwiki'
Plug 'simnalamburt/vim-mundo'
Plug 'tpope/vim-dadbod'
Plug 'junegunn/gv.vim'
Plug 'rbong/vim-flog'
Plug 'tpope/vim-unimpaired'
Plug 'guns/vim-clojure-static' " syntax
Plug 'tpope/vim-fireplace'
Plug 'guns/vim-sexp'
Plug 'tpope/vim-sexp-mappings-for-regular-people'
Plug 'alvan/vim-closetag'
Plug 'mattn/emmet-vim'
Plug 'chrisbra/colorizer'
Plug 'christoomey/vim-tmux-navigator'
Plug 'tpope/vim-rhubarb'
Plug 'zhaozg/vim-diagram'
Plug 'fatih/vim-go'
Plug 'diepm/vim-rest-console'
Plug 'pangloss/vim-javascript'
Plug 'leafgarland/typescript-vim'
Plug 'MaxMEllon/vim-jsx-pretty'
Plug 'peitalin/vim-jsx-typescript'
Plug 'jremmen/vim-ripgrep'
Plug 'francoiscabrol/ranger.vim'
" Plug 'https://github.com/moll/vim-bbye'
Plug 'jlanzarotta/bufexplorer'
Plug 'dbeniamine/cheat.sh-vim'
Plug 'skyuplam/broot.nvim'
Plug 'rbgrouleff/bclose.vim'
call plug#end()
"}}}
" unmaps {{{
let g:bclose_no_plugin_maps=1
" }}}
" appearance {{{
syntax on " Enable syntax
set encoding=utf-8 " Keep utf-8 encoding
set scrolloff=2 " Keep at least 3 lines above and below cursor
set showmode " Something something buffers
set showcmd " Show command in bottom bar
set wildmenu " Visual autocomplete for command menu
set wildmode=list:longest " Show all completions on tab
set laststatus=2 " Last window will always have statusline
set showmatch " Highlight matching [{()}]
set cursorline " Highlight current line
highlight GitGutterAdd ctermbg=black guibg=black
highlight SignColumn guibg=black ctermbg=black
let g:ctrlsf_default_root="project"
" remove underline on current line number
hi CursorLineNr cterm=bold
hi StatusLine ctermbg=Black
hi WinSeparator guibg=None
" " Lightline
" let g:lightline = { 'colorscheme': 'sceaduhelm' }
" set fillchars+=vert:│
" command! LightlineReload call LightlineReload()
" function! LightlineReload()
" call lightline#init()
" call lightline#colorscheme()
" call lightline#update()
" endfunction
" Invisible characters
set list
set listchars=tab:▸\ ,eol
set laststatus=3
" }}}
" Folding {{{
set foldenable " Enable folding
set foldmethod=marker " Fold sections by marker
set foldlevel=0 " Fold by default
set modelines=1 " Check final line of file for modeline
" }}}
" behavior {{{
set nocompatible " Turn off vi compatability nonsense
set hidden " Hide buffer when opening new file
set visualbell " Use visual bell instead of beeping
set ttyfast " Improves smoothness and drawing
set backspace=indent,eol,start " Always allow backspacing
set undofile " Make .un file for persistent undo
set number
set lazyredraw " Redraw only when necessary
set updatetime=100 " Make updates happen faster (gitgutter)
set splitright " Make split to right by default
set splitbelow
set winheight=30 " Soft minimum window height (active)
set winminheight=6 " Hard minimum window height (inactive)
set winwidth=90 " Window width for current window
set winminwidth=30 " Hard minimum for window width
set t_vb= " No visual bell ever
let g:sneak#use_ic_scs=1
set virtualedit=block
set noswapfile
set undodir=~/.nvim/undo
let g:markdown_folding=1
au FileType markdown setlocal foldlevel=99
let g:bufExplorerSplitHorzSize=8 " New split window is n rows high.
let g:bufExplorerDefaultHelp=0 " Do not show default help.
"}}}
" searching {{{
set gdefault " Remove default g flag on search
set ignorecase " Ignore case for searches
set smartcase " Case-specific only when uppercase
set hlsearch " Don't continue to highlight searched phrases.
set incsearch " But do search as characters are entered
"}}}
" tab settings {{{
set tabstop=4 " Number of visual spaces per tab
set softtabstop=4 " Should always = tabstop
set shiftwidth=4 " Indent/outdent by 4 columns
set expandtab " Tabs are spaces
set shiftround " Always indent/outdent to the nearest tabstop
" Make search terms more visible
highlight Visual ctermbg=DarkGreen ctermfg=Black
set autoindent " Auto indentation
"}}}
" hjkl {{{
" Disable arrow keys in normal and visual mode
nnoremap <up> <nop>
nnoremap <down> <nop>
nnoremap <left> <nop>
nnoremap <right> <nop>
inoremap <up> <nop>
inoremap <down> <nop>
inoremap <left> <nop>
inoremap <right> <nop>
" Make j and k move by screen line, not file line
nnoremap j gj
nnoremap k gk
"}}}
" {{{ web dev
autocmd FileType html,css,javascript,typescript,typescriptreact
\ set expandtab smarttab softtabstop=2 shiftwidth=2 tabstop=2
" Emmet tab size
let g:user_emmet_settings = {
\ 'indentation' : ' '
\}
" }}}
" split pane navigation {{{
" nnoremap <C-h> <C-w>h
" nnoremap <C-j> <C-w>j
" nnoremap <C-k> <C-w>k
" nnoremap <C-l> <C-w>l
nnoremap <C-c> :close <cr>
nnoremap <C-n> :bn <cr>
nnoremap <C-p> :bp <cr>
let g:tmux_navigator_disable_when_zoomed = 1
"}}}
" git commands {{{
nmap ghv <Plug>(GitGutterPreviewHunk)
nmap ghn <Plug>(GitGutterNextHunk)
nmap ghp <Plug>(GitGutterPrevHunk)
nmap ghf <Plug>(GitGutterFold)
nmap ghs <Plug>(GitGutterStageHunk)
" Controls fugitive diff split direction
set diffopt=vertical
"}}}
" plugin modification {{{
" FZF
map <C-s> :FZF<cr>
" map <C-s> :tabNext<cr>
" This is the default extra key bindings
let g:fzf_action = {
\ 'ctrl-t': 'tab split',
\ 'ctrl-x': 'split',
\ 'ctrl-v': 'vsplit' }
" Default fzf layout
" - down / up / left / right
let g:fzf_layout = { 'down': '~30%' }
" Customize fzf colors to match your color scheme
let g:fzf_colors =
\ { 'fg': [ 'fg', 'Normal'],
\ 'bg': [ 'bg', 'Normal'],
\ 'hl': [ 'fg', 'Comment'],
\ 'fg+': [ 'fg', 'CursorLine', 'CursorColumn', 'Normal'],
\ 'bg+': [ 'bg', 'CursorLine', 'CursorColumn'],
\ 'hl+': [ 'fg', 'Statement'],
\ 'info': [ 'fg', 'PreProc'],
\ 'border': [ 'fg', 'Ignore'],
\ 'prompt': [ 'fg', 'Conditional'],
\ 'pointer': [ 'fg', 'Exception'],
\ 'marker': [ 'fg', 'Keyword'],
\ 'spinner': [ 'fg', 'Label'],
\ 'header': [ 'fg', 'Comment'] }
" EasyAlign
"" Start interactive EasyAlign in visual mode (e.g. vipga)
xmap ga <Plug>(EasyAlign)
" Start interactive EasyAlign for a motion/text object (e.g. gaip)
nmap ga <Plug>(EasyAlign)
"}}}
" vimwiki {{{
let g:vimwiki_list = [
\ {'name': 'work', 'path': '~/.vim/work'},
\ {'name': 'home', 'path': '~/.vim/home'},
\ {'name': 'blog', 'path': '~/.vim/blog'},
\ {'name': 'vim', 'path': '~/.vim/vim'},
\ ]
let g:vimwiki_syntax = 'markdown'
let g:vimwiki_ext = '.md'
let g:vimwiki_automatic_nested_syntaxes = 1
let g:vimwiki_links_space_char = '_'
"}}}
" diffs {{{
hi DiffAdd cterm=none ctermfg=DarkGray ctermbg=Green
hi DiffChange cterm=none ctermfg=DarkGray ctermbg=Yellow
hi DiffDelete cterm=bold ctermfg=DarkGray ctermbg=Red
hi DiffText cterm=none ctermfg=DarkGray ctermbg=LightBlue
" better diffs
set diffopt+=internal,algorithm:patience
" }}}
" buffers {{{
let g:bufExplorerDisableDefaultKeyMapping=1 " Disable mapping.
"}}}
" broot {{{
" let g:broot_default_conf_path=expand('~/.config/broot/conf.hjson')
" let g:broot_replace_netrw=1
" let g:loaded_netrwPlugin=1 " use broot for :E/T/V/Hexplore
"}}}
"" ALE {{{
" let g:ale_linters = {'javascript': ['tsserver'],
" \ 'typescript': ['tsserver'],
" \ 'typescriptreact': ['tsserver'],
" \ 'python': ['flake8'],
" \ 'css': ['csslint'],
" \ 'dockerfile': ['hadolint'],
" \ 'yaml': ['yamllint'] }
" let g:ale_fixers = {
" \ '*': ['remove_trailing_lines', 'trim_whitespace'] }
" " let g:ale_set_loclist = 0
" " let g:ale_set_quickfix = 1
" let g:ale_set_quickfix = 0
" let g:ale_set_loclist = 0
" let g:ale_fix_on_save = 1
""}}}
" leaders {{{
:let mapleader = ","
" Underline with line of the same length
nnoremap <leader>- yypv$r-
" Insert date on current line
nnoremap <leader>d k :r !date <cr>
nnoremap <leader>se :Explore<cr>
nnoremap <leader>st :Texplore<cr>
nnoremap <leader>sv :Vexplore<cr>
nnoremap <leader>sh :Hexplore<cr>
nmap <leader>h :map <leader><cr>
" nnoremap <leader>ad :ALEDetail<cr>
" nnoremap <leader>ag :ALEGoToDefinition<cr>
" nnoremap <leader>al :ALEPopulateQuickfix<cr>
" nnoremap <leader>an :ALENext<cr>
" nnoremap <leader>ap :ALEPrevious<cr>
" nnoremap <leader>ar :ALERename<cr>
nnoremap <leader>b :BufExplorerHorizontalSplit<cr>
"}}}
"
lua require('init')
" folding options {{{
" folding options, this must be last in file
" vim:foldmethod=marker:foldlevel=0
" }}}

View file

@ -1,11 +0,0 @@
-- require('keybindings')
-- require('package')
-- require('config')
-- Global options: vim.o
-- Local to window: vim.wo
-- Local to buffer: vim.bo
vim.opt.expandtab = true
vim.opt.shiftwidth = 2
vim.opt.softtabstop = 2

View file

@ -1,199 +0,0 @@
require('keybindings')
require('packages')
require('config')
-- Treesitter Confirg
require('nvim-treesitter.configs').setup {
ensure_installed = {
"c", "lua", "rust", "python", "typescript", "bash", "clojure",
"comment", "commonlisp", "fennel", "fish", "json", "html", "markdown",
"make", "toml", "tsx", "vim", "yaml"
},
highlight = {
enable = true,
},
indent = {
enable = true,
}
}
-- LSP Language Installer
local lsp_installer = require("nvim-lsp-installer")
-- Setup lspconfig.
local on_attach = function(client, bufnr)
-- Enable completion triggered by <c-x><c-o>
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
-- Mappings.
-- See `:help vim.lsp.*` for documentation on any of the below functions
local bufopts = { noremap=true, silent=true, buffer=bufnr }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
-- vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
vim.keymap.set('n', '<space>wl', function()
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
end, bufopts)
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, bufopts)
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, bufopts)
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, bufopts)
vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
vim.keymap.set('n', '<space>f', vim.lsp.buf.formatting, bufopts)
end
local capabilities = require('cmp_nvim_lsp').update_capabilities(vim.lsp.protocol.make_client_capabilities())
lsp_installer.on_server_ready(function(server)
local opts = {
on_attach = on_attach,
capabilities = capabilities,
}
if server.name == "sumneko_lua" then
opts.settings = {
Lua = {
diagnostics = {
globals = {'vim', 'use'}
},
}
}
end
server:setup(opts)
end)
-- Needed for LuaSnip
require("luasnip/loaders/from_vscode").lazy_load()
local has_words_before = function()
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
end
local luasnip = require("luasnip")
-- LSP Completion
local cmp = require('cmp')
cmp.setup({
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
end,
},
completion = { autocomplete = false },
mapping = cmp.mapping.preset.insert({
['<C-b>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
-- ['<C-a>'] = cmp.mapping.complete(), -- use supertab
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = true }),
['<C-n>'] = cmp.mapping(cmp.mapping.select_next_item(), {'i','c'}),
['<C-p>'] = cmp.mapping(cmp.mapping.select_prev_item(), {'i','c'}),
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif has_words_before() then
cmp.complete()
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, { "i", "s" }),
}),
sources = cmp.config.sources({
{ name = 'nvim_lsp' },
{ name = 'luasnip' }, -- For luasnip users.
},
{
{ name = 'buffer' },
})
})
-- Set configuration for specific filetype.
cmp.setup.filetype('gitcommit', {
sources = cmp.config.sources({
{ name = 'cmp_git' }, -- You can specify the `cmp_git` source if you were installed it.
}, {
{ name = 'buffer' },
})
})
-- Replace <YOUR_LSP_SERVER> with each lsp server you've enabled.
-- require('lspconfig').sumneko_lua.setup {
-- on_attach = on_attach,
-- capabilities = capabilities,
-- }
-- require('lspconfig')['tsserver'].setup {
-- capabilities = capabilities
-- }
-- require('lspconfig')['tsserver'].setup {
-- capabilities = capabilities
-- }
-- TODO figure out fold stuff later
-- vim.opt.foldmethod = "expr"
-- vim.opt.foldexpr = "nvim_treesitter#foldexpr()"
-- vim.opt.foldnestmax = 1
vim.opt.completeopt = "menu" -- keep omnicomplete from spawning new buffer
-- Autoformatting
require("formatter").setup {
logging = false,
log_level = vim.log.levels.WARN,
filetype = {
-- lua = {
-- require("formatter.filetypes.lua").stylua,
-- },
python = {
require("formatter.filetypes.python").black,
},
["*"] = {
require("formatter.filetypes.any").remove_trailing_whitespace
}
}
}
-- You will likely want to reduce updatetime which affects CursorHold
-- note: this setting is global and should be set only once
vim.o.updatetime = 250
vim.cmd [[autocmd! CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]
-- Base16 colors
-- start flavours
require('base16-colorscheme').setup({
base00 = '#e7e6df',
base01 = '#929181',
base02 = '#878573',
base03 = '#6c6b5a',
base04 = '#5f5e4e',
base05 = '#302f27',
base06 = '#22221b',
base07 = '#ba6236',
base08 = '#ae7313',
base09 = '#a5980d',
base0A = '#7d9726',
base0B = '#5b9d48',
base0C = '#36a166',
base0D = '#5f9182',
base0E = '#9d6c7c',
base0F = '#{{base0G-hex}}'
})
-- end flavours

View file

@ -1,24 +0,0 @@
-- vim.api.nvim_set_keymap({mode}, {keymap}, {mapped to}, {options})
local keymap = vim.api.nvim_set_keymap
local opts = { noremap = true } -- don't recursively remap things
keymap('n', '?', ':tabNext<CR>', opts)
-- keymap('n', 'gp', ':tabprevious<CR>', opts)
-- local function nkeymap(key, map)
-- keymap('n', key, map, opts)
-- end
-- nkeymap('gd', ':lua vim.lsp.buf.definition()<cr>')
-- nkeymap('gD', ':lua vim.lsp.buf.declaration()<cr>')
-- nkeymap('gi', ':lua vim.lsp.buf.implementation()<cr>')
-- nkeymap('gw', ':lua vim.lsp.buf.document_symbol()<cr>')
-- nkeymap('gw', ':lua vim.lsp.buf.workspace_symbol()<cr>')
-- nkeymap('gr', ':lua vim.lsp.buf.references()<cr>')
-- nkeymap('gt', ':lua vim.lsp.buf.type_definition()<cr>')
-- nkeymap('K', ':lua vim.lsp.buf.hover()<cr>')
-- nkeymap('<c-k>', ':lua vim.lsp.buf.signature_help()<cr>')
-- nkeymap('<leader>af', ':lua vim.lsp.buf.code_action()<cr>')
-- nkeymap('<leader>rn', ':lua vim.lsp.buf.rename()<cr>')

View file

@ -1,17 +0,0 @@
require('packer').startup(function()
use 'wbthomason/packer.nvim'
use 'nvim-treesitter/nvim-treesitter'
use 'williamboman/nvim-lsp-installer'
use 'neovim/nvim-lspconfig'
use 'hrsh7th/cmp-nvim-lsp'
use 'hrsh7th/cmp-buffer'
use 'hrsh7th/cmp-path'
use 'hrsh7th/cmp-cmdline'
use 'hrsh7th/nvim-cmp'
use 'L3MON4D3/LuaSnip'
use 'rafamadriz/friendly-snippets'
use 'saadparwaiz1/cmp_luasnip'
use 'onsails/lspkind-nvim'
use 'mhartington/formatter.nvim'
use 'RRethy/nvim-base16'
end)

View file

@ -1,157 +0,0 @@
-- Automatically generated packer.nvim plugin loader code
if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then
vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"')
return
end
vim.api.nvim_command('packadd packer.nvim')
local no_errors, error_msg = pcall(function()
local time
local profile_info
local should_profile = false
if should_profile then
local hrtime = vim.loop.hrtime
profile_info = {}
time = function(chunk, start)
if start then
profile_info[chunk] = hrtime()
else
profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6
end
end
else
time = function(chunk, start) end
end
local function save_profiles(threshold)
local sorted_times = {}
for chunk_name, time_taken in pairs(profile_info) do
sorted_times[#sorted_times + 1] = {chunk_name, time_taken}
end
table.sort(sorted_times, function(a, b) return a[2] > b[2] end)
local results = {}
for i, elem in ipairs(sorted_times) do
if not threshold or threshold and elem[2] > threshold then
results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms'
end
end
_G._packer = _G._packer or {}
_G._packer.profile_output = results
end
time([[Luarocks path setup]], true)
local package_path_str = "/home/green/.cache/nvim/packer_hererocks/2.0.5/share/lua/5.1/?.lua;/home/green/.cache/nvim/packer_hererocks/2.0.5/share/lua/5.1/?/init.lua;/home/green/.cache/nvim/packer_hererocks/2.0.5/lib/luarocks/rocks-5.1/?.lua;/home/green/.cache/nvim/packer_hererocks/2.0.5/lib/luarocks/rocks-5.1/?/init.lua"
local install_cpath_pattern = "/home/green/.cache/nvim/packer_hererocks/2.0.5/lib/lua/5.1/?.so"
if not string.find(package.path, package_path_str, 1, true) then
package.path = package.path .. ';' .. package_path_str
end
if not string.find(package.cpath, install_cpath_pattern, 1, true) then
package.cpath = package.cpath .. ';' .. install_cpath_pattern
end
time([[Luarocks path setup]], false)
time([[try_loadstring definition]], true)
local function try_loadstring(s, component, name)
local success, result = pcall(loadstring(s), name, _G.packer_plugins[name])
if not success then
vim.schedule(function()
vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {})
end)
end
return result
end
time([[try_loadstring definition]], false)
time([[Defining packer_plugins]], true)
_G.packer_plugins = {
LuaSnip = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/LuaSnip",
url = "https://github.com/L3MON4D3/LuaSnip"
},
["cmp-buffer"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/cmp-buffer",
url = "https://github.com/hrsh7th/cmp-buffer"
},
["cmp-cmdline"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/cmp-cmdline",
url = "https://github.com/hrsh7th/cmp-cmdline"
},
["cmp-nvim-lsp"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
},
["cmp-path"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/cmp-path",
url = "https://github.com/hrsh7th/cmp-path"
},
cmp_luasnip = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/cmp_luasnip",
url = "https://github.com/saadparwaiz1/cmp_luasnip"
},
["formatter.nvim"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/formatter.nvim",
url = "https://github.com/mhartington/formatter.nvim"
},
["friendly-snippets"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/friendly-snippets",
url = "https://github.com/rafamadriz/friendly-snippets"
},
["lspkind-nvim"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/lspkind-nvim",
url = "https://github.com/onsails/lspkind-nvim"
},
["nvim-base16"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/nvim-base16",
url = "https://github.com/RRethy/nvim-base16"
},
["nvim-cmp"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/nvim-cmp",
url = "https://github.com/hrsh7th/nvim-cmp"
},
["nvim-lsp-installer"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/nvim-lsp-installer",
url = "https://github.com/williamboman/nvim-lsp-installer"
},
["nvim-lspconfig"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
url = "https://github.com/neovim/nvim-lspconfig"
},
["nvim-treesitter"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
url = "https://github.com/nvim-treesitter/nvim-treesitter"
},
["packer.nvim"] = {
loaded = true,
path = "/home/green/.local/share/nvim/site/pack/packer/start/packer.nvim",
url = "https://github.com/wbthomason/packer.nvim"
}
}
time([[Defining packer_plugins]], false)
if should_profile then save_profiles() end
end)
if not no_errors then
error_msg = error_msg:gsub('"', '\\"')
vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None')
end

View file

@ -1,2 +0,0 @@
theme default
theme pie

View file

@ -1 +0,0 @@
stable

View file

@ -1 +0,0 @@
pie

View file

@ -1 +0,0 @@
map bw shell wal -i %s

View file

@ -1,264 +0,0 @@
# vim: ft=cfg
#
# This is the configuration file of "rifle", ranger's file executor/opener.
# Each line consists of conditions and a command. For each line the conditions
# are checked and if they are met, the respective command is run.
#
# Syntax:
# <condition1> , <condition2> , ... = command
#
# The command can contain these environment variables:
# $1-$9 | The n-th selected file
# $@ | All selected files
#
# If you use the special command "ask", rifle will ask you what program to run.
#
# Prefixing a condition with "!" will negate its result.
# These conditions are currently supported:
# match <regexp> | The regexp matches $1
# ext <regexp> | The regexp matches the extension of $1
# mime <regexp> | The regexp matches the mime type of $1
# name <regexp> | The regexp matches the basename of $1
# path <regexp> | The regexp matches the absolute path of $1
# has <program> | The program is installed (i.e. located in $PATH)
# env <variable> | The environment variable "variable" is non-empty
# file | $1 is a file
# directory | $1 is a directory
# number <n> | change the number of this command to n
# terminal | stdin, stderr and stdout are connected to a terminal
# X | $DISPLAY is not empty (i.e. Xorg runs)
#
# There are also pseudo-conditions which have a "side effect":
# flag <flags> | Change how the program is run. See below.
# label <label> | Assign a label or name to the command so it can
# | be started with :open_with <label> in ranger
# | or `rifle -p <label>` in the standalone executable.
# else | Always true.
#
# Flags are single characters which slightly transform the command:
# f | Fork the program, make it run in the background.
# | New command = setsid $command >& /dev/null &
# r | Execute the command with root permissions
# | New command = sudo $command
# t | Run the program in a new terminal. If $TERMCMD is not defined,
# | rifle will attempt to extract it from $TERM.
# | New command = $TERMCMD -e $command
# Note: The "New command" serves only as an illustration, the exact
# implementation may differ.
# Note: When using rifle in ranger, there is an additional flag "c" for
# only running the current file even if you have marked multiple files.
#-------------------------------------------
# Websites
#-------------------------------------------
# Rarely installed browsers get higher priority; It is assumed that if you
# install a rare browser, you probably use it. Firefox/konqueror/w3m on the
# other hand are often only installed as fallback browsers.
ext x?html?, has surf, X, flag f = surf -- file://"$1"
ext x?html?, has vimprobable, X, flag f = vimprobable -- "$@"
ext x?html?, has vimprobable2, X, flag f = vimprobable2 -- "$@"
ext x?html?, has qutebrowser, X, flag f = qutebrowser -- "$@"
ext x?html?, has dwb, X, flag f = dwb -- "$@"
ext x?html?, has jumanji, X, flag f = jumanji -- "$@"
ext x?html?, has luakit, X, flag f = luakit -- "$@"
ext x?html?, has uzbl, X, flag f = uzbl -- "$@"
ext x?html?, has uzbl-tabbed, X, flag f = uzbl-tabbed -- "$@"
ext x?html?, has uzbl-browser, X, flag f = uzbl-browser -- "$@"
ext x?html?, has uzbl-core, X, flag f = uzbl-core -- "$@"
ext x?html?, has midori, X, flag f = midori -- "$@"
ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@"
ext x?html?, has chromium, X, flag f = chromium -- "$@"
ext x?html?, has google-chrome, X, flag f = google-chrome -- "$@"
ext x?html?, has opera, X, flag f = opera -- "$@"
ext x?html?, has firefox, X, flag f = firefox -- "$@"
ext x?html?, has seamonkey, X, flag f = seamonkey -- "$@"
ext x?html?, has iceweasel, X, flag f = iceweasel -- "$@"
ext x?html?, has epiphany, X, flag f = epiphany -- "$@"
ext x?html?, has konqueror, X, flag f = konqueror -- "$@"
ext x?html?, has elinks, terminal = elinks "$@"
ext x?html?, has links2, terminal = links2 "$@"
ext x?html?, has links, terminal = links "$@"
ext x?html?, has lynx, terminal = lynx -- "$@"
ext x?html?, has w3m, terminal = w3m "$@"
#-------------------------------------------
# Spreadsheets
#-------------------------------------------
ext csv = sc-im "$@"
ext xls = sc-im "$@"
ext xlsx = sc-im "$1"
#-------------------------------------------
# Misc
#-------------------------------------------
# Define the "editor" for text files as first action
mime ^text, label editor = ${VISUAL:-$EDITOR} -- "$@"
mime ^text, label pager = "$PAGER" -- "$@"
!mime ^text, label editor, ext xml|json|tex|py|pl|rb|js|sh|php = ${VISUAL:-$EDITOR} -- "$@"
!mime ^text, label pager, ext xml|json|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@"
ext 1 = man "$1"
ext s[wmf]c, has zsnes, X = zsnes "$1"
ext s[wmf]c, has snes9x-gtk,X = snes9x-gtk "$1"
ext nes, has fceux, X = fceux "$1"
ext exe = wine "$1"
name ^[mM]akefile$ = make
#--------------------------------------------
# Code
#-------------------------------------------
ext py = python -- "$1"
ext pl = perl -- "$1"
ext rb = ruby -- "$1"
ext js = node -- "$1"
ext sh = sh -- "$1"
ext php = php -- "$1"
#--------------------------------------------
# Audio without X
#-------------------------------------------
mime ^audio|ogg$, terminal, has mpv = mpv -- "$@"
mime ^audio|ogg$, terminal, has mplayer2 = mplayer2 -- "$@"
mime ^audio|ogg$, terminal, has mplayer = mplayer -- "$@"
ext midi?, terminal, has wildmidi = wildmidi -- "$@"
#--------------------------------------------
# Video/Audio with a GUI
#-------------------------------------------
mime ^video|audio, has gmplayer, X, flag f = gmplayer -- "$@"
mime ^video|audio, has smplayer, X, flag f = smplayer "$@"
mime ^video, has mpv, X, flag f = mpv -- "$@"
mime ^video, has mpv, X, flag f = mpv --fs -- "$@"
mime ^video, has mplayer2, X, flag f = mplayer2 -- "$@"
mime ^video, has mplayer2, X, flag f = mplayer2 -fs -- "$@"
mime ^video, has mplayer, X, flag f = mplayer -- "$@"
mime ^video, has mplayer, X, flag f = mplayer -fs -- "$@"
mime ^video|audio, has vlc, X, flag f = vlc -- "$@"
mime ^video|audio, has totem, X, flag f = totem -- "$@"
mime ^video|audio, has totem, X, flag f = totem --fullscreen -- "$@"
#--------------------------------------------
# Video without X:
#-------------------------------------------
mime ^video, terminal, !X, has mpv = mpv -- "$@"
mime ^video, terminal, !X, has mplayer2 = mplayer2 -- "$@"
mime ^video, terminal, !X, has mplayer = mplayer -- "$@"
#-------------------------------------------
# Documents
#-------------------------------------------
ext pdf, has llpp, X, flag f = llpp "$@"
ext pdf, has zathura, X, flag f = zathura -- "$@"
ext pdf, has mupdf, X, flag f = mupdf "$@"
ext pdf, has mupdf-x11,X, flag f = mupdf-x11 "$@"
ext pdf, has apvlv, X, flag f = apvlv -- "$@"
ext pdf, has xpdf, X, flag f = xpdf -- "$@"
ext pdf, has evince, X, flag f = evince -- "$@"
ext pdf, has atril, X, flag f = atril -- "$@"
ext pdf, has okular, X, flag f = okular -- "$@"
ext pdf, has epdfview, X, flag f = epdfview -- "$@"
ext pdf, has qpdfview, X, flag f = qpdfview "$@"
ext pdf, has open, X, flag f = open "$@"
ext docx?, has catdoc, terminal = catdoc -- "$@" | "$PAGER"
ext sxc|xlsx?|xlt|xlw|gnm|gnumeric, has gnumeric, X, flag f = gnumeric -- "$@"
ext sxc|xlsx?|xlt|xlw|gnm|gnumeric, has kspread, X, flag f = kspread -- "$@"
ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has libreoffice, X, flag f = libreoffice "$@"
ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has soffice, X, flag f = soffice "$@"
ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has ooffice, X, flag f = ooffice "$@"
ext djvu, has zathura,X, flag f = zathura -- "$@"
ext djvu, has evince, X, flag f = evince -- "$@"
ext djvu, has atril, X, flag f = atril -- "$@"
ext djvu, has djview, X, flag f = djview -- "$@"
ext epub, has ebook-viewer, X, flag f = ebook-viewer -- "$@"
ext mobi, has ebook-viewer, X, flag f = ebook-viewer -- "$@"
#-------------------------------------------
# Image Viewing:
#-------------------------------------------
mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@"
mime ^image/svg, has display, X, flag f = display -- "$@"
mime ^image, has pqiv, X, flag f = pqiv -- "$@"
mime ^image, has sxiv, X, flag f = sxiv -- "$@"
mime ^image, has feh, X, flag f = feh -- "$@"
mime ^image, has mirage, X, flag f = mirage -- "$@"
mime ^image, has ristretto, X, flag f = ristretto "$@"
mime ^image, has eog, X, flag f = eog -- "$@"
mime ^image, has eom, X, flag f = eom -- "$@"
mime ^image, has nomacs, X, flag f = nomacs -- "$@"
mime ^image, has geeqie, X, flag f = geeqie -- "$@"
mime ^image, has gwenview, X, flag f = gwenview -- "$@"
mime ^image, has gimp, X, flag f = gimp -- "$@"
ext xcf, X, flag f = gimp -- "$@"
#-------------------------------------------
# Archives
#-------------------------------------------
# avoid password prompt by providing empty password
ext 7z, has 7z = 7z -p l "$@" | "$PAGER"
# This requires atool
ext ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz, has atool = atool --list --each -- "$@" | "$PAGER"
ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has atool = atool --list --each -- "$@" | "$PAGER"
ext 7z|ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz, has atool = atool --extract --each -- "$@"
ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has atool = atool --extract --each -- "$@"
# Listing and extracting archives without atool:
ext tar|gz|bz2|xz, has tar = tar vvtf "$1" | "$PAGER"
ext tar|gz|bz2|xz, has tar = for file in "$@"; do tar vvxf "$file"; done
ext bz2, has bzip2 = for file in "$@"; do bzip2 -dk "$file"; done
ext zip, has unzip = unzip -l "$1" | less
ext zip, has unzip = for file in "$@"; do unzip -d "${file%.*}" "$file"; done
ext ace, has unace = unace l "$1" | less
ext ace, has unace = for file in "$@"; do unace e "$file"; done
ext rar, has unrar = unrar l "$1" | less
ext rar, has unrar = for file in "$@"; do unrar x "$file"; done
#-------------------------------------------
# Flag t fallback terminals
#-------------------------------------------
# Rarely installed terminal emulators get higher priority; It is assumed that
# if you install a rare terminal emulator, you probably use it.
# gnome-terminal/konsole/xterm on the other hand are often installed as part of
# a desktop environment or as fallback terminal emulators.
mime ^ranger/x-terminal-emulator, has terminology = terminology -e "$@"
mime ^ranger/x-terminal-emulator, has kitty = kitty -- "$@"
mime ^ranger/x-terminal-emulator, has alacritty = alacritty -e "$@"
mime ^ranger/x-terminal-emulator, has sakura = sakura -e "$@"
mime ^ranger/x-terminal-emulator, has lilyterm = lilyterm -e "$@"
#mime ^ranger/x-terminal-emulator, has cool-retro-term = cool-retro-term -e "$@"
mime ^ranger/x-terminal-emulator, has termite = termite -x '"$@"'
#mime ^ranger/x-terminal-emulator, has yakuake = yakuake -e "$@"
mime ^ranger/x-terminal-emulator, has guake = guake -ne "$@"
mime ^ranger/x-terminal-emulator, has tilda = tilda -c "$@"
mime ^ranger/x-terminal-emulator, has st = st -e "$@"
mime ^ranger/x-terminal-emulator, has terminator = terminator -x "$@"
mime ^ranger/x-terminal-emulator, has urxvt = urxvt -e "$@"
mime ^ranger/x-terminal-emulator, has pantheon-terminal = pantheon-terminal -e "$@"
mime ^ranger/x-terminal-emulator, has lxterminal = lxterminal -e "$@"
mime ^ranger/x-terminal-emulator, has mate-terminal = mate-terminal -x "$@"
mime ^ranger/x-terminal-emulator, has xfce4-terminal = xfce4-terminal -x "$@"
mime ^ranger/x-terminal-emulator, has konsole = konsole -e "$@"
mime ^ranger/x-terminal-emulator, has gnome-terminal = gnome-terminal -- "$@"
mime ^ranger/x-terminal-emulator, has xterm = xterm -e "$@"
#-------------------------------------------
# Misc
#-------------------------------------------
label wallpaper, number 11, mime ^image, has feh, X = feh --bg-scale "$1"
label wallpaper, number 12, mime ^image, has feh, X = feh --bg-tile "$1"
label wallpaper, number 13, mime ^image, has feh, X = feh --bg-center "$1"
label wallpaper, number 14, mime ^image, has feh, X = feh --bg-fill "$1"
# Define the editor for non-text files + pager as last action
!mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php = ask
label editor, !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php = ${VISUAL:-$EDITOR} -- "$@"
label pager, !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@"
# The very last action, so that it's never triggered accidentally, is to execute a program:
mime application/x-executable = "$1"

View file

@ -1,122 +0,0 @@
#############################################################################
# A minimal rTorrent configuration that provides the basic features
# you want to have in addition to the built-in defaults.
#
# See https://github.com/rakshasa/rtorrent/wiki/CONFIG-Template
# for an up-to-date version.
#############################################################################
## Instance layout (base paths)
method.insert = cfg.basedir, private|const|string, (cat,"/home/green/rtorrent/")
method.insert = cfg.download, private|const|string, (cat,(cfg.basedir),"download/")
method.insert = cfg.logs, private|const|string, (cat,(cfg.basedir),"log/")
method.insert = cfg.logfile, private|const|string, (cat,(cfg.logs),"rtorrent-",(system.time),".log")
method.insert = cfg.session, private|const|string, (cat,(cfg.basedir),".session/")
method.insert = cfg.watch, private|const|string, (cat,(cfg.basedir),"watch/")
## Create instance directories
execute.throw = sh, -c, (cat,\
"mkdir -p \"",(cfg.download),"\" ",\
"\"",(cfg.logs),"\" ",\
"\"",(cfg.session),"\" ",\
"\"",(cfg.watch),"/load\" ",\
"\"",(cfg.watch),"/start\" ")
## Listening port for incoming peer traffic (fixed; you can also randomize it)
network.port_range.set = 50000-50000
network.port_random.set = no
## Tracker-less torrent and UDP tracker support
## (conservative settings for 'private' trackers, change for 'public')
dht.mode.set = disable
protocol.pex.set = no
trackers.use_udp.set = no
## Peer settings
throttle.max_uploads.set = 100
throttle.max_uploads.global.set = 250
throttle.min_peers.normal.set = 20
throttle.max_peers.normal.set = 60
throttle.min_peers.seed.set = 30
throttle.max_peers.seed.set = 80
trackers.numwant.set = 80
protocol.encryption.set = allow_incoming,try_outgoing,enable_retry
## Limits for file handle resources, this is optimized for
## an `ulimit` of 1024 (a common default). You MUST leave
## a ceiling of handles reserved for rTorrent's internal needs!
network.http.max_open.set = 50
network.max_open_files.set = 600
network.max_open_sockets.set = 300
## Memory resource usage (increase if you have a large number of items loaded,
## and/or the available resources to spend)
pieces.memory.max.set = 1800M
network.xmlrpc.size_limit.set = 4M
## Basic operational settings (no need to change these)
session.path.set = (cat, (cfg.session))
directory.default.set = (cat, (cfg.download))
log.execute = (cat, (cfg.logs), "execute.log")
#log.xmlrpc = (cat, (cfg.logs), "xmlrpc.log")
execute.nothrow = sh, -c, (cat, "echo >",\
(session.path), "rtorrent.pid", " ",(system.pid))
## Other operational settings (check & adapt)
encoding.add = utf8
system.umask.set = 0027
system.cwd.set = (directory.default)
network.http.dns_cache_timeout.set = 25
schedule2 = monitor_diskspace, 15, 60, ((close_low_diskspace, 1000M))
#pieces.hash.on_completion.set = no
#view.sort_current = seeding, greater=d.ratio=
#keys.layout.set = qwerty
#network.http.capath.set = "/etc/ssl/certs"
#network.http.ssl_verify_peer.set = 0
#network.http.ssl_verify_host.set = 0
## Some additional values and commands
method.insert = system.startup_time, value|const, (system.time)
method.insert = d.data_path, simple,\
"if=(d.is_multi_file),\
(cat, (d.directory), /),\
(cat, (d.directory), /, (d.name))"
method.insert = d.session_file, simple, "cat=(session.path), (d.hash), .torrent"
## Watch directories (add more as you like, but use unique schedule names)
## Add torrent
schedule2 = watch_load, 11, 10, ((load.verbose, (cat, (cfg.watch), "load/*.torrent")))
## Add & download straight away
schedule2 = watch_start, 10, 10, ((load.start_verbose, (cat, (cfg.watch), "start/*.torrent")))
## Run the rTorrent process as a daemon in the background
## (and control via XMLRPC sockets)
#system.daemon.set = true
#network.scgi.open_local = (cat,(session.path),rpc.socket)
#execute.nothrow = chmod,770,(cat,(session.path),rpc.socket)
## Logging:
## Levels = critical error warn notice info debug
## Groups = connection_* dht_* peer_* rpc_* storage_* thread_* tracker_* torrent_*
print = (cat, "Logging to ", (cfg.logfile))
log.open_file = "log", (cfg.logfile)
log.add_output = "info", "log"
#log.add_output = "tracker_debug", "log"
### END of rtorrent.rc ###

View file

@ -1,197 +0,0 @@
#
# wm independent hotkeys
#
# start flavours
set norm_bg "#343D46"
set norm_fg "#CDD3DE"
set sel_bg "#99C794"
set sel_fg "#343D46"
# end flavours
# terminal emulator
super + Return
st
# program launcher
# super + @space
# dmenu_run -l 15 -i -nf $(xrdb -query | grep '^*foreground' | cut -f2) -nb $(xrdb -query | grep '^*background' | cut -f2) -sb $(xrdb -query | grep -m 1 '*color4' | cut -f2) -sf $(xrdb -query | grep '^*foreground' | cut -f2)
super + @space
dmenu_run -l 15 -i -nf $norm_fg -nb $norm_bg -sb $sel_bg -sf $sel_fg
# make sxhkd reload its configuration files:
super + Escape
pkill -USR1 -x sxhkd
#
# bspwm hotkeys
#
# quit/restart bspwm
super + alt + {q,r}
bspc {quit,wm -r}
# close and kill
#super + {_,shift + }w
super + q
# bspc node -{c,k}
bspc node -c
# alternate between the tiled and monocle layout
# super + m
# bspc desktop -l next
# send the newest marked node to the newest preselected node
super + y
bspc node newest.marked.local -n newest.!automatic.local
# swap the current node and the biggest node
super + g
bspc node -s biggest
#
# state/flags
#
super + s
sleep .2 && scrot -s -e 'xclip -selection clipboard -t image/png -i $f'
# set the window state
super + {t,shift + t,shift + f,f}
bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
# set the node flags
super + ctrl + {m,x,y,z}
bspc node -g {marked,locked,sticky,private}
#
# focus/swap
#
# focus the node in the given direction
super + {_,shift + }{h,j,k,l}
bspc node -{f,s} {west,south,north,east}
# focus the node for the given path jump
#super + {p,b,comma,period}
# bspc node -f @{parent,brother,first,second}
# focus the next/previous node in the current desktop
#super + {_,shift + }c
# bspc node -f {next,prev}.local
# focus the next/previous desktop in the current monitor
super + bracket{left,right}
bspc desktop -f {prev,next}.local
# focus the last node/desktop
super + {grave,Tab}
bspc {node,desktop} -f last
# focus the older or newer node in the focus history
super + {o,i}
bspc wm -h off; \
bspc node {older,newer} -f; \
bspc wm -h on
# focus or send to the given desktop
super + {_,shift + }{1-9,0}
bspc {desktop -f,node -d} '^{1-9,10}'
#
# preselect
#
# preselect the direction
super + ctrl + {h,j,k,l}
bspc node -p {west,south,north,east}
# preselect the ratio
super + ctrl + {1-9}
bspc node -o 0.{1-9}
# cancel the preselection for the focused node
super + ctrl + space
bspc node -p cancel
# cancel the preselection for the focused desktop
super + ctrl + shift + space
bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
#
# move/resize
#
# # expand a window by moving one of its side outward
# super + alt + {h,j,k,l}
# bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
# # contract a window by moving one of its side inward
# super + alt + shift + {h,j,k,l}
# bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
# Resize windows
# https://old.reddit.com/r/bspwm/comments/r5stxu/resizing_windows_nicely_in_my_opinion/
super + alt + {h,j,k,l}
{bspc node @parent/second -z left -20 0; \
bspc node @parent/first -z right -20 0, \
bspc node @parent/second -z top 0 +20; \
bspc node @parent/first -z bottom 0 +20, \
bspc node @parent/first -z bottom 0 -20; \
bspc node @parent/second -z top 0 -20, \
bspc node @parent/first -z right +20 0; \
bspc node @parent/second -z left +20 0}
# move a floating window
super + {Left,Down,Up,Right}
bspc node -v {-20 0,0 20,0 -20,20 0}
# super + d
# dmenu_run -l 15 -i
# super + d
# dmenu_run -l 15 -i
super + d
dmenu_run_top
super + w
gapcycle
super + shift + w
layoutcycle && sleep .1
super + m
{bspc rule -a \* -o state=floating && st -e ncmpcpp}
# st -e bspc node -t ~floating && ncmpcpp
super + p
st -e vim $(tree -iaf -I .cache | dmenu)
super + n
{bspc rule -a \* -o state=floating && st -e newsboat}
super + shift + n
{bspc rule -a \* -o state=floating && st -e nmtui}
super + c
{bspc rule -a \* -o state=floating && st -e calcurse -D ~/.config/calcurse }
# Increase/descrease gap size
# super + z
# bspc config window_gap $(($(bspc config window_gap) - 3))
# super + shift + z
# bspc config window_gap $(($(bspc config window_gap) + 3))
super + r
{bspc rule -a \* -o state=floating && st -e ranger}
super + b
exec qutebrowser
super + x
languagecycle
# After quitting bar, reset spaces: bspc config top_padding 0 or bottom_padding

View file

@ -1,60 +0,0 @@
set-option -g default-shell /usr/bin/fish
set -g default-terminal "screen-256color"
# # set-window-option -g mode-keys vi
# set-window-option -g automatic-rename on
set-window-option -g mode-keys vi
# Blank space between status and bottom of window
set -Fg 'status-format[1]' '#{status-format[0]}'
set -g 'status-format[0]' '#[bg=black] '
set -g status 2
# bind h split-window -h -c "#{pane_current_path}"
# bind v split-window -v -c "#{pane_current_path}"
# bind w new-window
# Smart pane switching with awareness of Vim splits.
# See: https://github.com/christoomey/vim-tmux-navigator
# Adapted to avoid fzf conflicts
is_vim="ps -o state= -o comm= -t '#{pane_tty}' \
| grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
bind-key -n 'C-h' if-shell "$is_vim" 'send-keys C-h' 'select-pane -L'
bind-key -n 'C-j' if-shell "$is_vim" 'send-keys C-j' 'select-pane -D'
bind-key -n 'C-k' if-shell "$is_vim" 'send-keys C-k' 'select-pane -U'
bind-key -n 'C-l' if-shell "$is_vim" 'send-keys C-l' 'select-pane -R'
# bind-key -n C-\ if-shell "$is_vim" "send-keys C-\\" "select-pane -l"
bind a resize-pane -Z
# Shift arrow to switch windows
bind -n C-S-Space previous-window
bind -n C-Space next-window
# Remove escape delay
set -g escape-time 0
# Enable mouse scroll
set -g mouse on
set-option -g status-right-length 140
set-option -g status-right "#(curl 'wttr.in/?format=%%c%%t%%20')|#[bg=default] %a %l:%M %p#[default]#(curl 'wttr.in/?format=%%20%%m%%20(%%M)%') |#(sugar --tmux)#[bg=default]"
set-option -g status-left-length 140
set-option -g status-left " Session: #[bold,fg=green,bg=black] #S #[fg=black,bg=green] "
set-option -g status-justify centre
set-option -g window-status-current-format '#[bold,fg=green,bg=black] #{window_name} '
set-option -g window-status-format '#{window_name}'
bind t popup "tmux new-session -A -s tasks 'vit list'"
# bind J popup "tmux new-session -A -s jira 'jira issue list -a(jira me)'"
# bind j popup "tmux new-session -A -s jira 'jira issue list -P (git branch --show-current)'"
bind j popup "tmux new-session -A -s jira 'jira issue list --order-by key --reverse -P (jira issue list -t story -a (jira me) --plain --no-headers | fzf | cut -f2)'"
set-option -t jira status off
set-option -t tasks status off

View file

@ -1,19 +0,0 @@
name: irc
root: ~/
windows:
- libera:
panes:
- catloop libera
- rizon:
panes:
- catloop rizon
- tilde:
panes:
- catloop tilde
- sn:
panes:
- catloop snoonet
- hack:
panes:
- catloop hackint

View file

@ -1,23 +0,0 @@
name: rwa-api
root: ~/code/rwa/everblue-api
windows:
- editor:
layout: 1341,176x62,0,0[176x22,0,0{91x22,0,0,0,84x22,92,0,4},176x3,0,23,2,176x35,0,27,3]
panes:
- cd ./frontend/site && nvm use 14 && npm run dev
- cd ./api && awsume -a mt-dev && pipenv run chalice local --stage dev
- clear
- vim
- db:
layout: 0843,176x62,0,0[176x31,0,0,1,176x30,0,32,5]
panes:
- pgcli postgresql://(pass work/rwa/dev/rwa-db-user):(pass work/rwa/dev/rwa-db-pass)@(pass work/rwa/dev/rwa-db-host):5432
- pgcli postgresql://(pass work/rwa/dev/moodle-db-user):(pass work/rwa/dev/moodle-db-pass)@(pass work/rwa/dev/moodle-db-host):5432
- tests:
panes:
- cd everblue-e2e-testing
- cd everblue-e2e-testing && vim
- scratch:
panes:
- fish

View file

@ -1,17 +0,0 @@
# /Users/iankeane/.config/tmuxinator/tendenci-moodle-nifi.yml
name: tendenci-moodle-nifi
root: ~/code
windows:
- editor:
layout: tiled
panes:
- cd ./current/nifi-current/nifi && docker compose up
- cd ./current/tendenci-current && docker compose up
- cd ./current/moodle-current && docker compose up
- watch docker container list
- ld: lazydocker
- db: pgcli -U postgres -p 5432 -h localhost
# TODO: exec into each tendenci / moodle container

File diff suppressed because it is too large Load diff

View file

@ -1,125 +0,0 @@
ODO: asciidoc
hq6/VimFreeDrag
General Vim
c-p, c-n
dumb completion in open buffers
c-i, c-o
back/forward a jump
g;
back to last edit location
c-^
go to previous file edited (alternate file)
registers
:reg
see register contents
<C-r> reg
paste from register in normal mode
names
1-9
delete registers
0
yank register
a-z
named registers
A-Z
same as a-z but append
/
current search pattern
=
returns a math result
_
black-hole register
:
last ex command
quickfix
run :make in vim
:copen to go to line
navigation:
:cn, :cw, :cp, [c, ]c
regex copying
show only matching lines:
:g/pattern
copy only matching lines:
:g/pattern/ y A
v
inverse
delete all lines not matching a pattern:
:v/pattern/d
https://www.youtube.com/watch?v=v0W7JkzQAzA
EasyAlign
C-x in visual mode to do reg expression
Vlime
\rr
start and connect to session within vim
\cc
start connection
\cs
list connections
\cd
drop connection
\i interaction mode
enter to evalutate
\dda
show doc for function
\p
show package name
\xc
show xref
\of
compile file
GitGutter
[c and ]c
jump between hunks
<leader>hp
preview hunk
<leader>hs
stage hunk
<leader>hu
undo hunk
TODO: map to ghp, ghs, ghu, ghn, ghp?
find mapping for gitgutterfold
TODO:
nmap ghv <Plug>(GitGutterPreviewHunk)
nmap ghn <Plug>(GitGutterNextHunk)
nmap ghp <Plug>(GitGutterPrevHunk)
nmap ghf <Plug>(GitGutterFold)
TODO: make this folded notes, bind edit function
Custom Bindings
c-c
kill current window
Tmux
c-b d exit session
TODO kill session
:rename-window -n name
c-b {v, h} window split
c-b w new window
tslime: ,t
TODO YCM
<leader>gd goto definition
Help Navigation
follow link: ctrl-]
previous link: ctrl-t
or ctrl-o
LEIN project
lein-boilerplate
installs deps, runs lein, forwards lein port
lein-play-cljs
same for game development
lein-postgres
same for postgres

View file

@ -1,7 +0,0 @@
- [br](https://www.youtube.com/watch?v=Wnyl3mqydOQ&list=PLRjzjpJ02WDPwtQ9gebL3KzEAUVWzC-ib&index=32)
- `asciinema rec` starts recording
- ctrl-d ends recording
- `asciinema rec -i 2` removes any idle time longer than 2 seconds
- name file ending with `.cast` to prevent asking if upload is desired
- `$ASCIINEMA_UPLOAD_URL` can be used to set a self-hosted asciinema server

View file

@ -1 +0,0 @@
# Stow

View file

@ -1,20 +0,0 @@
# Drafts
- [Dotfiles](Dotfiles)
- [Tmux workflow](Tmux_workflow)
- Vim
- Choosing programs over plugins
- Fugitive and Tig
- Bindings and day to day use
- Migrating to lf
- Commandline utilities to keep around
- Building a simple git interface
- [Exploring folding](Exploring_folding)
- [Terminal colors](Terminal_colors)
- [RSS](RSS)
- Gemini
- [Password Manager](Password_Manager)
- [Notifications](Notifications)
- [Asciinema](Asciinema)
- [Self hosted image hosting](Self_hosted_image_hosting)
- [Blood sugar in tmux](Blood_sugar_in_tmux)
- Terminal Color Support

View file

@ -1,2 +0,0 @@
# Markdown folding
https://bitcrowd.dev/folding-sections-of-markdown-in-vim

View file

@ -1 +0,0 @@
LibNotify

View file

@ -1 +0,0 @@
[dmenu bitwarden](https://www.youtube.com/watch?v=TK6CUaFPSmQ&list=PLRjzjpJ02WDPwtQ9gebL3KzEAUVWzC-ib&index=104)

View file

@ -1,2 +0,0 @@
https://www.youtube.com/watch?v=cpw56d4rUVg&list=PLRjzjpJ02WDPwtQ9gebL3KzEAUVWzC-ib&index=177
- youtube, peertube, reddit, rss

View file

@ -1,27 +0,0 @@
# Using vit:
- a: add task
- A: annotate task
- task description project:projectname depends:id#
- e: edit task in `$EDITOR`
# colors:
- `include dark-yellow-green.theme`
```
color.project.unraid=yellow
color.project.workflow=green
color.project.home=color5 # purple
color.project.renovation=blue
```
- get colors with `task color`
# handle 'subtasks' through annotations
- see annotations using `:long`
- get old view back with :list
- `vit list` to get just the list at startup after adding annotations
# rapidly add similar tasks using history
- `Add: project:aws depends:37` + new task desc multiple times, etc
# Taskwarrior quirks
- Urgency is usually a function of blockers + priority, you might find that
high priority doesn't put a task over one that blocks many others

View file

@ -1,5 +0,0 @@
[Link1](https://www.youtube.com/watch?v=1HPo4VvI6dA)
[Link2](https://github.com/chriskempson/base16-vim)
[Link3](https://www.youtube.com/watch?v=1bwGbb4VTaU)

View file

@ -1,34 +0,0 @@
tmux popup containing how2
tmux popup and close
tmux popup containing interpreter for language being edited
tmux jira popup
tmux tig popup?
tmux choose session in a popup
[popups video](https://www.youtube.com/watch?v=2I8fB28zfB4&list=PLTRNG6WIHETB4reAxbWza3CZeP9KL6Bkr&index=1)
[floating popups](https://www.youtube.com/watch?v=2ZqFDsJywt8&list=PLTRNG6WIHETB4reAxbWza3CZeP9KL6Bkr&index=2)
bind small popup, large popup
bind popups in new session to have access across projects
```
# open a popup scratchpad
bind -n M-g display-popup -E "tmux new-session -A -s scratch"
# open my blog in a scratchpad
bind -n M-I popup -E -h 95% -w 95% -x 100% "tmux new-session -A -s waylonwalker_com 'cd ~/git/waylonwalker.com/ && nvim'"
```
use ctrl+caps (alt?) bindings for tmux
```
# Next / prev session
bind -n M-P switch-client -p
bind -n M-N switch-client -n
```
# Copy mode
- `prefix + [`
- start/end selection with space, enter to copy
# Session Selection
- `prefix + s`

View file

@ -1,3 +0,0 @@
# Blog
- Articles
- [Drafts](Drafts)

View file

@ -1,561 +0,0 @@
" Vim color file
" Maintainer: Jani Nurminen <slinky@iki.fi>
" Last Change: $Id: zenburn.vim,v 2.21 2011/04/26 12:13:41 slinky Exp slinky $
" URL: http://slinky.imukuppi.org/zenburnpage/
" License: GNU GPL <http://www.gnu.org/licenses/gpl.html>
"
" Nothing too fancy, just some alien fruit salad to keep you in the zone.
" This syntax file was designed to be used with dark environments and
" low light situations. Of course, if it works during a daybright office, go
" ahead :)
"
" Owes heavily to other Vim color files! With special mentions
" to "BlackDust", "Camo" and "Desert".
"
" To install, copy to ~/.vim/colors directory.
"
" Alternatively, you can use Vimball installation:
" vim zenburn.vba
" :so %
" :q
"
" For details, see :help vimball
"
" After installation, use it with :colorscheme zenburn.
" See also :help syntax
"
" Credits:
" - Jani Nurminen - original Zenburn, maintainer
" - Steve Hall & Cream posse - higher-contrast Visual selection
" - Kurt Maier - 256 color console coloring, low and high contrast toggle,
" bug fixing
" - Charlie - spotted too bright StatusLine in non-high contrast mode
" - Pablo Castellazzi - CursorLine fix for 256 color mode
" - Tim Smith - force dark background
" - John Gabriele - spotted bad Ignore-group handling
" - Zac Thompson - spotted invisible NonText in low contrast mode
" - Christophe-Marie Duquesne - suggested making a Vimball,
" suggested support for ctags_highlighting.vim
" - Andrew Wagner - noted the CursorColumn bug (guifg was unintentionally set),
" unify CursorColumn colour
" - Martin Langasek - clarify the license, whitespace fixes
" - Marcin Szamotulski - support autocomplete for Zenburn configuration
" parameters
" - Clayton Parker (claytron) - Convinced by Kurt Maier to use Zenburn. Point
" out issues with LineNr, fix directory styles, and their usage in MacVim.
" - Paweł Piekarski - Spotted bad FoldColumn and TabLine. Made better
" FoldColumn colors, fixed TabLine colors.
"
" CONFIGURABLE PARAMETERS:
"
" You can use the default (don't set any parameters), or you can
" set some parameters to tweak the Zenburn colours.
"
" To use them, put them into your .vimrc file before loading the color scheme,
" example:
" let g:zenburn_high_Contrast=1
" colors zenburn
"
" You can also do ":let g:zenburn" then hit Ctrl-d or Tab to scroll through the
" list of configurable parameters.
"
" * You can now set a darker background for bright environments. To activate, use:
" contrast Zenburn, use:
"
" let g:zenburn_high_Contrast = 1
"
" * For example, Vim help files uses the Ignore-group for the pipes in tags
" like "|somelink.txt|". By default, the pipes are not visible, as they
" map to Ignore group. If you wish to enable coloring of the Ignore group,
" set the following parameter to 1. Warning, it might make some syntax files
" look strange.
"
" let g:zenburn_color_also_Ignore = 1
"
" * To get more contrast to the Visual selection, use
"
" let g:zenburn_alternate_Visual = 1
"
" Note: this is enabled only if the old-style Visual
" if used, see g:zenburn_old_Visual
"
" * To use alternate colouring for Error message, use
"
" let g:zenburn_alternate_Error = 1
"
" * The new default for Include is a duller orange. To use the original
" colouring for Include, use
"
" let g:zenburn_alternate_Include = 1
"
" * Work-around to a Vim bug, it seems to misinterpret ctermfg and 234 and 237
" as light values, and sets background to light for some people. If you have
" this problem, use:
"
" let g:zenburn_force_dark_Background = 1
"
" * By default the CursorColumn is of a lighter colour. I find it more readable
" that way, but some people may want to align it with the darker CursorLine
" color, for visual uniformity. To do so, use:
"
" let g:zenburn_unified_CursorColumn = 1
"
" Note: you can ignore this unless you use
" ":set cursorline cursorcolumn", since otherwise the effect won't be
" seen.
"
" * New (dark) Visual coloring has been introduced.
" The dark Visual is more aligned with the rest of the colour scheme,
" especially if you use line numbers. If you wish to use the
" old Visual coloring, use
"
" let g:zenburn_old_Visual = 1
"
" Default is to use the new Visual.
"
" * EXPERIMENTAL FEATURE: Zenburn will automatically detect if you
" have ctags_highlighting.vim (by Al Budden,
" http://www.vim.org/scripts/script.php?script_id=2646) enabled, and
" will set sensible highlight links. Nothing will happen if you do
" not have ctags_highlighting.vim. If you do not want this feature, you can
" override the check with:
"
" let g:zenburn_disable_ctags_highlighting_support = 1
"
" NOTE:
"
" * To turn the parameter(s) back to defaults, use UNLET or set them to 0:
"
" unlet g:zenburn_alternate_Include
" or
" let g:zenburn_alternate_Include = 0
"
"
" That's it, enjoy!
"
" TODO
" - Visual alternate color is broken? Try GVim >= 7.0.66 if you have trouble
" - IME colouring (CursorIM)
" Set defaults, but keep any parameters already set by the user
if ! exists("g:zenburn_high_Contrast")
let g:zenburn_high_Contrast = 0
endif
if ! exists("g:zenburn_color_also_Ignore")
let g:zenburn_color_also_Ignore = 0
endif
if ! exists("g:zenburn_alternate_Error")
let g:zenburn_alternate_Error = 0
endif
if ! exists("g:zenburn_force_dark_Background")
let g:zenburn_force_dark_Background = 0
endif
if ! exists("g:zenburn_alternate_Visual")
let g:zenburn_alternate_Visual = 0
endif
if ! exists("g:zenburn_alternate_Include")
let g:zenburn_alternate_Include = 0
endif
if ! exists("g:zenburn_unified_CursorColumn")
let g:zenburn_unified_CursorColumn = 0
endif
if ! exists("g:zenburn_old_Visual")
let g:zenburn_old_Visual = 0
endif
if ! exists("g:zenburn_disable_ctags_highlighting_support")
" enabled by default
let g:zenburn_disable_ctags_highlighting_support = 0
endif
" -----------------------------------------------
set background=dark
hi clear
if exists("syntax_on")
syntax reset
endif
let g:colors_name="zenburn"
" check for ctags-highlighting
if exists("g:loaded_ctags_highlighting") && g:loaded_ctags_highlighting && ! g:zenburn_disable_ctags_highlighting_support
" internal
let _zenburn_ctags = 1
endif
hi Boolean guifg=#dca3a3
hi Character guifg=#dca3a3 gui=bold
hi Comment guifg=#7f9f7f gui=italic
hi Conditional guifg=#f0dfaf gui=bold
hi Constant guifg=#dca3a3 gui=bold
hi Cursor guifg=#000d18 guibg=#8faf9f gui=bold
hi Debug guifg=#bca3a3 gui=bold
hi Define guifg=#ffcfaf gui=bold
hi Delimiter guifg=#8f8f8f
hi DiffAdd guifg=#709080 guibg=#313c36 gui=bold
hi DiffChange guibg=#333333
hi DiffDelete guifg=#333333 guibg=#464646
hi DiffText guifg=#ecbcbc guibg=#41363c gui=bold
hi Directory guifg=#9fafaf gui=bold
hi ErrorMsg guifg=#80d4aa guibg=#2f2f2f gui=bold
hi Exception guifg=#c3bf9f gui=bold
hi Float guifg=#c0bed1
hi FoldColumn guifg=#93b3a3 guibg=#3f4040
hi Folded guifg=#93b3a3 guibg=#3f4040
hi Function guifg=#efef8f
hi Identifier guifg=#efdcbc
hi IncSearch guibg=#f8f893 guifg=#385f38
hi Keyword guifg=#f0dfaf gui=bold
hi Label guifg=#dfcfaf gui=underline
hi Macro guifg=#ffcfaf gui=bold
hi ModeMsg guifg=#ffcfaf gui=none
hi MoreMsg guifg=#ffffff gui=bold
hi Number guifg=#8cd0d3
hi Operator guifg=#f0efd0
hi PreCondit guifg=#dfaf8f gui=bold
hi PreProc guifg=#ffcfaf gui=bold
hi Question guifg=#ffffff gui=bold
hi Repeat guifg=#ffd7a7 gui=bold
hi Search guifg=#ffffe0 guibg=#284f28
hi SpecialChar guifg=#dca3a3 gui=bold
hi SpecialComment guifg=#82a282 gui=bold
hi Special guifg=#cfbfaf
hi SpecialKey guifg=#9ece9e
hi Statement guifg=#e3ceab gui=none
hi StatusLine guifg=#313633 guibg=#ccdc90
hi StatusLineNC guifg=#2e3330 guibg=#88b090
hi StorageClass guifg=#c3bf9f gui=bold
hi String guifg=#cc9393
hi Structure guifg=#efefaf gui=bold
hi Tag guifg=#e89393 gui=bold
hi Title guifg=#efefef gui=bold
hi Todo guifg=#dfdfdf guibg=bg gui=bold
hi Typedef guifg=#dfe4cf gui=bold
hi Type guifg=#dfdfbf gui=bold
hi Underlined guifg=#dcdccc gui=underline
hi VertSplit guifg=#2e3330 guibg=#688060
hi VisualNOS guifg=#333333 guibg=#f18c96 gui=bold,underline
hi WarningMsg guifg=#ffffff guibg=#333333 gui=bold
hi WildMenu guibg=#2c302d guifg=#cbecd0 gui=underline
hi SpellBad guisp=#bc6c4c guifg=#dc8c6c
hi SpellCap guisp=#6c6c9c guifg=#8c8cbc
hi SpellRare guisp=#bc6c9c guifg=#bc8cbc
hi SpellLocal guisp=#7cac7c guifg=#9ccc9c
" Entering Kurt zone
if &t_Co > 255
hi Boolean ctermfg=181
hi Character ctermfg=181 cterm=bold
hi Comment ctermfg=108
hi Conditional ctermfg=223 cterm=bold
hi Constant ctermfg=181 cterm=bold
hi Cursor ctermfg=233 ctermbg=109 cterm=bold
hi Debug ctermfg=181 cterm=bold
hi Define ctermfg=223 cterm=bold
hi Delimiter ctermfg=245
hi DiffAdd ctermfg=66 ctermbg=237 cterm=bold
hi DiffChange ctermbg=236
hi DiffDelete ctermfg=236 ctermbg=238
hi DiffText ctermfg=217 ctermbg=237 cterm=bold
hi Directory ctermfg=109 cterm=bold
hi ErrorMsg ctermfg=115 ctermbg=236 cterm=bold
hi Exception ctermfg=249 cterm=bold
hi Float ctermfg=251
hi Function ctermfg=228
hi Identifier ctermfg=223
hi IncSearch ctermbg=228 ctermfg=238
hi Keyword ctermfg=223 cterm=bold
hi Label ctermfg=187 cterm=underline
hi LineNr ctermfg=248 ctermbg=233
hi Macro ctermfg=223 cterm=bold
hi ModeMsg ctermfg=223 cterm=none
hi MoreMsg ctermfg=15 cterm=bold
hi Number ctermfg=116
hi Operator ctermfg=230
hi PreCondit ctermfg=180 cterm=bold
hi PreProc ctermfg=223 cterm=bold
hi Question ctermfg=15 cterm=bold
hi Repeat ctermfg=223 cterm=bold
hi Search ctermfg=230 ctermbg=236
hi SpecialChar ctermfg=181 cterm=bold
hi SpecialComment ctermfg=108 cterm=bold
hi Special ctermfg=181
hi SpecialKey ctermfg=151
hi Statement ctermfg=187 ctermbg=234 cterm=none
hi StatusLine ctermfg=236 ctermbg=186
hi StatusLineNC ctermfg=235 ctermbg=108
hi StorageClass ctermfg=249 cterm=bold
hi String ctermfg=174
hi Structure ctermfg=229 cterm=bold
hi Tag ctermfg=181 cterm=bold
hi Title ctermfg=7 ctermbg=234 cterm=bold
hi Todo ctermfg=108 ctermbg=234 cterm=bold
hi Typedef ctermfg=253 cterm=bold
hi Type ctermfg=187 cterm=bold
hi Underlined ctermfg=188 ctermbg=234 cterm=bold
hi VertSplit ctermfg=236 ctermbg=65
hi VisualNOS ctermfg=236 ctermbg=210 cterm=bold
hi WarningMsg ctermfg=15 ctermbg=236 cterm=bold
hi WildMenu ctermbg=236 ctermfg=194 cterm=bold
" spellchecking, always "bright" background
hi SpellLocal ctermfg=14 ctermbg=237
hi SpellBad ctermfg=9 ctermbg=237
hi SpellCap ctermfg=12 ctermbg=237
hi SpellRare ctermfg=13 ctermbg=237
" pmenu
hi PMenu ctermfg=248 ctermbg=0
hi PMenuSel ctermfg=223 ctermbg=235
if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast
hi Normal ctermfg=188 ctermbg=234
hi NonText ctermfg=238
if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore
hi Ignore ctermfg=238
endif
" hc mode, darker CursorLine, default 236
hi CursorLine ctermbg=233 cterm=none
if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn
hi CursorColumn ctermbg=233 cterm=none
else
hi CursorColumn ctermbg=235 cterm=none
endif
else
hi Normal ctermfg=188 ctermbg=237
hi Cursor ctermbg=109
hi diffadd ctermbg=237
hi diffdelete ctermbg=238
hi difftext ctermbg=237
hi errormsg ctermbg=237
hi incsearch ctermbg=228
hi linenr ctermbg=235
hi search ctermbg=238
hi statement ctermbg=237
hi statusline ctermbg=144
hi statuslinenc ctermbg=108
hi title ctermbg=237
hi todo ctermbg=237
hi underlined ctermbg=237
hi vertsplit ctermbg=65
hi visualnos ctermbg=210
hi warningmsg ctermbg=236
hi wildmenu ctermbg=236
hi NonText ctermfg=240
if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore
hi Ignore ctermfg=240
endif
" normal mode, lighter CursorLine
hi CursorLine ctermbg=238 cterm=none
if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn
hi CursorColumn ctermbg=238 cterm=none
else
hi CursorColumn ctermbg=239 cterm=none
endif
endif
if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error
" use more jumpy Error
hi Error ctermfg=210 ctermbg=52 gui=bold
else
" default is something more zenburn-compatible
hi Error ctermfg=228 ctermbg=95 gui=bold
endif
endif
if exists("g:zenburn_force_dark_Background") && g:zenburn_force_dark_Background
" Force dark background, because of a bug in VIM: VIM sets background
" automatically during "hi Normal ctermfg=X"; it misinterprets the high
" value (234 or 237 above) as a light color, and wrongly sets background to
" light. See ":help highlight" for details.
set background=dark
endif
if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast
" use new darker background
hi Normal guifg=#dcdccc guibg=#1f1f1f
hi CursorLine guibg=#121212 gui=bold
if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn
hi CursorColumn guibg=#121212 gui=bold
else
hi CursorColumn guibg=#2b2b2b
endif
hi Pmenu guibg=#242424 guifg=#ccccbc
hi PMenuSel guibg=#353a37 guifg=#ccdc90 gui=bold
hi PmenuSbar guibg=#2e3330 guifg=#000000
hi PMenuThumb guibg=#a0afa0 guifg=#040404
hi MatchParen guifg=#f0f0c0 guibg=#383838 gui=bold
hi SignColumn guifg=#9fafaf guibg=#181818 gui=bold
hi TabLineFill guifg=#cfcfaf guibg=#181818 gui=bold
hi TabLineSel guifg=#efefef guibg=#1c1c1b gui=bold
hi TabLine guifg=#b6bf98 guibg=#181818 gui=bold
hi NonText guifg=#404040 gui=bold
hi LineNr guifg=#9fafaf guibg=#161616
else
" Original, lighter background
hi Normal guifg=#dcdccc guibg=#3f3f3f
hi CursorLine guibg=#434443
if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn
hi CursorColumn guibg=#434343
else
hi CursorColumn guibg=#4f4f4f
endif
hi Pmenu guibg=#2c2e2e guifg=#9f9f9f
hi PMenuSel guibg=#242424 guifg=#d0d0a0 gui=bold
hi PmenuSbar guibg=#2e3330 guifg=#000000
hi PMenuThumb guibg=#a0afa0 guifg=#040404
hi MatchParen guifg=#b2b2a0 guibg=#2e2e2e gui=bold
hi SignColumn guifg=#9fafaf guibg=#343434 gui=bold
hi TabLineFill guifg=#cfcfaf guibg=#353535 gui=bold
hi TabLineSel guifg=#efefef guibg=#3a3a39 gui=bold
hi TabLine guifg=#b6bf98 guibg=#353535 gui=bold
hi NonText guifg=#5b605e gui=bold
hi LineNr guifg=#9fafaf guibg=#262626
endif
if exists("g:zenburn_old_Visual") && g:zenburn_old_Visual
if exists("g:zenburn_alternate_Visual") && g:zenburn_alternate_Visual
" Visual with more contrast, thanks to Steve Hall & Cream posse
" gui=none fixes weird highlight problem in at least GVim 7.0.66, thanks to Kurt Maier
hi Visual guifg=#000000 guibg=#71d3b4 gui=none
hi VisualNOS guifg=#000000 guibg=#71d3b4 gui=none
else
" use default visual
hi Visual guifg=#233323 guibg=#71d3b4 gui=none
hi VisualNOS guifg=#233323 guibg=#71d3b4 gui=none
endif
else
" new Visual style
if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast
" high contrast
"hi Visual guibg=#304a3d
"hi VisualNos guibg=#304a3d
"TODO no nice greenish in console, 65 is closest. use full black instead,
"although i like the green..!
hi Visual guibg=#0f0f0f
hi VisualNos guibg=#0f0f0f
if &t_Co > 255
hi Visual ctermbg=0
endif
else
" low contrast
hi Visual guibg=#2f2f2f
hi VisualNOS guibg=#2f2f2f
if &t_Co > 255
hi Visual ctermbg=235
hi VisualNOS ctermbg=235
endif
endif
endif
if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error
" use more jumpy Error
hi Error guifg=#e37170 guibg=#664040 gui=bold
else
" default is something more zenburn-compatible
hi Error guifg=#e37170 guibg=#3d3535 gui=none
endif
if exists("g:zenburn_alternate_Include") && g:zenburn_alternate_Include
" original setting
hi Include guifg=#ffcfaf gui=bold
else
" new, less contrasted one
hi Include guifg=#dfaf8f gui=bold
endif
if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore
" color the Ignore groups
" note: if you get strange coloring for your files, turn this off (unlet)
hi Ignore guifg=#545a4f
endif
" new tabline and fold column
if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast
hi FoldColumn guibg=#161616
hi Folded guibg=#161616
hi TabLine guifg=#88b090 guibg=#313633 gui=none
hi TabLineSel guifg=#ccd990 guibg=#222222
hi TabLineFill guifg=#88b090 guibg=#313633 gui=none
hi SpecialKey guibg=#242424
if &t_Co > 255
hi FoldColumn ctermbg=233 ctermfg=109
hi Folded ctermbg=233 ctermfg=109
hi TabLine ctermbg=236 ctermfg=108 cterm=none
hi TabLineSel ctermbg=235 ctermfg=186 cterm=bold
hi TabLineFill ctermbg=236 ctermfg=236
endif
else
hi FoldColumn guibg=#333333
hi Folded guibg=#333333
hi TabLine guifg=#d0d0b8 guibg=#222222 gui=none
hi TabLineSel guifg=#f0f0b0 guibg=#333333 gui=bold
hi TabLineFill guifg=#dccdcc guibg=#101010 gui=none
hi SpecialKey guibg=#444444
if &t_Co > 255
hi FoldColumn ctermbg=236 ctermfg=109
hi Folded ctermbg=236 ctermfg=109
hi TabLine ctermbg=235 ctermfg=187 cterm=none
hi TabLineSel ctermbg=236 ctermfg=229 cterm=bold
hi TabLineFill ctermbg=233 ctermfg=233
endif
endif
" EXPERIMENTAL ctags_highlighting support
" link/set sensible defaults here;
"
" For now I mostly link to subset of Zenburn colors, the linkage is based
" on appearance, not semantics. In later versions I might define more new colours.
"
" HELP NEEDED to make this work properly.
if exists("_zenburn_ctags") && _zenburn_ctags
" Highlighter seems to think a lot of things are global variables even
" though they're not. Example: python method-local variable is
" coloured as a global variable. They should not be global, since
" they're not visible outside the method.
" If this is some very bright colour group then things look bad.
hi link CTagsGlobalVariable Identifier
hi CTagsClass guifg=#acd0b3
if &t_Co > 255
hi CTagsClass ctermfg=115
endif
hi link CTagsImport Statement
hi link CTagsMember Function
hi link CTagsGlobalConstant Constant
" These do not yet have support, I can't get them to appear
hi link EnumerationValue Float
hi link EnumerationName Identifier
hi link DefinedName WarningMsg
hi link LocalVariable WarningMsg
hi link Structure WarningMsg
hi link Union WarningMsg
endif
" TODO check for more obscure syntax groups that they're ok

View file

@ -1,4 +0,0 @@
# Website stuff to do
- Implement keane.sh (maybe just use gotty)
- Build simple git interface
- Implement blog

View file

@ -1,28 +0,0 @@
Helpful Commands
----------------
:retab
replaces all tab characters with spaces
:Helptags
generates helptags for all installed plugins
:help plugin
give help pages for the plugin
gcc
comments lines
q:
history in a buffer
q?
search history in a buffer
Installed Plugins
-----------------
can be found in :help
Custom Bindings
---------------
Research
--------
https://jakobgm.com/posts/vim/git-integration/
https://thoughtbot.com/upcase/videos/git-vim-and-git

View file

@ -1,2 +0,0 @@
# API Flow
- api/courses.ts -> courseService.ts ->

View file

@ -1,32 +0,0 @@
# Work wiki
- [[ React notes ]]
- [[ DevOps Processes ]]
- [RWA notes](RWA_notes)
# General Notes
- `<leader>ws` to choose your wiki
# Newcomers
- vim-rest-console
- vim-ripgrep
- vim-ranger
- vim-bbye
# Wiki usage
- `<Leader>ww` :: Open default wiki index file.
- `<Leader>ws` :: Select and open wiki index file.
- `<Leader>wd` :: Delete wiki file you are in.
- `<Leader>wr` :: Rename wiki file you are in.
- `<Enter>` :: Follow/Create wiki link.
- `<Shift-Enter>` :: Split and follow/create wiki link.
- `<Ctrl-Enter>` :: Vertical split and follow/create wiki link.
- `<Backspace>` :: Go back to parent(previous) wiki link.
- `<Tab>` :: Find next wiki link.
- `<Shift-Tab>` :: Find previous wiki link.
# Need post on
- cheat.sh and competitors
- vim-rest-console
# AWS notes
- [SAA](SAA)

View file

@ -1,81 +0,0 @@
!! URxvt Appearance
!URxvt.font: xft:BitstreamVeraSansMono:antialias=true:pixelsize=14
/* *.font: ttf:DejaVuSansMono:pixelsize=14, xft:symbola:pixelsize=14, xft:Kochi Gothic:antialias=false, ttf:NotoColorEmoji *1/ */
/* *.font: ttf:Liberation Mono:pixelsize=14 */
*.font:BitstreamVeraSansMono:pixelsize=14:antialias=true:autohint=true;
/* URxvt.letterSpace: 0 */
/* URxvt.lineSpace: 0 */
/* URxvt.geometry: 92x24 */
/* URxvt.internalBorder:8 */
/* URxvt.cursorBlink: true */
/* URxvt.cursorUnderline: false */
/* URxvt.saveline: 2048 */
/* URxvt.scrollBar: false */
/* URxvt.scrollBar_right: false */
/* URxvt.urgentOnBell: true */
/* URxvt.depth: 24 */
/* URxvt.iso14755: false */
!! Fake Transparency
/* URxvt.transparent: true */
/* URxvt.shading: 15 */
!! Real Transparency
!URxvt.depth: 32
!URxvt.background: rgba:0000/0000/0200/c800
!! DZEN2
!
/* start flavours */
! Base16 OceanicNext
! Scheme: https://github.com/voronianski/oceanic-next-color-scheme
#define base00 #1B2B34
#define base01 #343D46
#define base02 #4F5B66
#define base03 #65737E
#define base04 #A7ADBA
#define base05 #C0C5CE
#define base06 #CDD3DE
#define base07 #D8DEE9
#define base08 #EC5f67
#define base09 #F99157
#define base0A #FAC863
#define base0B #99C794
#define base0C #5FB3B3
#define base0D #6699CC
#define base0E #C594C5
#define base0F #AB7967
*foreground: base05
#ifdef background_opacity
*background: [background_opacity]base00
#else
*background: base00
#endif
*cursorColor: base05
*color0: base00
*color1: base08
*color2: base0B
*color3: base0A
*color4: base0D
*color5: base0E
*color6: base0C
*color7: base05
*color8: base03
*color9: base09
*color10: base01
*color11: base02
*color12: base04
*color13: base06
*color14: base0F
*color15: base07
/* end flavours */

View file

@ -1,13 +0,0 @@
$include /etc/inputrc
set editing-mode vi # if you're a fan of VI-style editors
set visible-stats on
set colored-stats on
set show-all-if-ambiguous on
set completion-ignore-case on
set colored-completion-prefix on
set completion-prefix-display-length 1
set menu-complete-display-prefix on
tab: menu-complete
"\e\t": menu-complete-backward
"\e[Z": menu-complete-backward

View file

@ -1,15 +0,0 @@
#picom &
#.screenlayout/desktop_ultrawide.sh
xss-lock i3lock-fancy &
ntpdate pool.ntp.org
xrdb .Xresources &
feh --bg-fill ~/images/wallpapers/cliffface.jpg &
#base16-oceanicnext
#exec i3
#mpd &
pulseaudio &
#pipewire &
#pipewire-pulse &
setxkbmap -option caps:ctrl_modifier &
exec bspwm

View file

@ -1,98 +0,0 @@
autoload -U colors && colors
PS1="%B%{$fg[red]%}[%{$fg[yellow]%}ian%{$fg[green]%}@%{$fg[blue]%}macbook%{$fg[red]%}]%{$reset_color%}$%b "
unsetopt BEEP
# Load aliases and shortcuts if existent.
[ -f "$HOME/.config/shortcutrc" ] && source "$HOME/.config/shortcutrc"
[ -f "$HOME/.config/aliasrc" ] && source "$HOME/.config/aliasrc"
autoload -U compinit
zstyle ':completion:*' menu select
zmodload zsh/complist
compinit
# Include hidden files in autocomplete:
_comp_options+=(globdots)
# Use vim keys in tab complete menu:
bindkey -M menuselect 'h' vi-backward-char
bindkey -M menuselect 'k' vi-up-line-or-history
bindkey -M menuselect 'l' vi-forward-char
bindkey -M menuselect 'j' vi-down-line-or-history
bindkey -v '^?' backward-delete-char
export KEYTIMEOUT=1
# Change cursor shape for different vi modes.
function zle-keymap-select {
if [[ ${KEYMAP} == vicmd ]] ||
[[ $1 = 'block' ]]; then
echo -ne '\e[1 q'
elif [[ ${KEYMAP} == main ]] ||
[[ ${KEYMAP} == viins ]] ||
[[ ${KEYMAP} = '' ]] ||
[[ $1 = 'beam' ]]; then
echo -ne '\e[5 q'
fi
}
zle -N zle-keymap-select
zle-line-init() {
zle -K viins # initiate `vi insert` as keymap (can be removed if `bindkey -V` has been set elsewhere)
echo -ne "\e[5 q"
}
zle -N zle-line-init
# Use beam shape cursor on startup.
echo -ne '\e[5 q'
# Use beam shape cursor for each new prompt.
preexec() { echo -ne '\e[5 q' ;}
# Use lf to switch directories and bind it to ctrl-o
lfcd () {
tmp="$(mktemp)"
lf -last-dir-path="$tmp" "$@"
if [ -f "$tmp" ]; then
dir="$(cat "$tmp")"
rm -f "$tmp"
if [ -d "$dir" ]; then
if [ "$dir" != "$(pwd)" ]; then
cd "$dir"
fi
fi
fi
}
bindkey -s '^o' 'lfcd\n' # zsh
# bindkey '^e' edit-command-line
# Load zsh-syntax-highlighting; should be last.
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh 2>/dev/null
# man page colors
man() {
LESS_TERMCAP_md=$'\e[01;31m' \
LESS_TERMCAP_me=$'\e[0m' \
LESS_TERMCAP_se=$'\e[0m' \
LESS_TERMCAP_so=$'\e[01;44;33m' \
LESS_TERMCAP_ue=$'\e[0m' \
LESS_TERMCAP_us=$'\e[01;32m' \
command man "$@"
}
stty -ixon # remove ctrl-s terminal freeze
# AWS autocomplete
#
autoload bashcompinit && bashcompinit
autoload -Uz compinit && compinit
compinit
complete -C '/usr/local/bin/aws_completer' aws
source /Users/iankeane/.config/broot/launcher/bash/br
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh