some configs

fixed?
This commit is contained in:
Michael Chalupiak 2024-07-03 15:44:47 -04:00
parent 602a2b2df1
commit 5e13d048d6
89 changed files with 27403 additions and 0 deletions

168
.bashrc Normal file
View File

@ -0,0 +1,168 @@
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
export PATH=~/.local/bin:/snap/bin:/usr/sandbox/:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/share/games:/usr/local/sbin:/usr/sbin:/sbin:$PATH
PATH=$PATH:~/.local/share/gem/ruby/3.0.0/bin/:~/.scripts
PATH=$PATH:~/.cargo/bin
PATH=$PATH:~/go/bin/
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
#if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
# debian_chroot=$(cat /etc/debian_chroot)
#fi
#
## set a fancy prompt (non-color, unless we know we "want" color)
#case "$TERM" in
# xterm-color) color_prompt=yes;;
#esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes
#if [ -n "$force_color_prompt" ]; then
# if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# # We have color support; assume it's compliant with Ecma-48
# # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# # a case would tend to support setf rather than setaf.)
# color_prompt=yes
# else
# color_prompt=
# fi
#fi
#
if [ "$color_prompt" = yes ]; then
PS1='\[\033[0;32m\]\u\[\033[00m\]\100\[\033[00m\]\h \[\033[0;32m\]\w\[\033[01;00m\]> '; else PS1='\[\033[0;32m\]\u\[\033[00m\]\100\[\033[00m\]\h \[\033[0;32m\]\w\[\033[01;00m\]> '
#else
# PS1='\u\100\h \w> '
fi
#
## Set 'man' colors
#if [ "$color_prompt" = yes ]; then
# man() {
# env \
# LESS_TERMCAP_mb=$'\e[01;31m' \
# 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' \
# man "$@"
# }
#fi
#
#unset color_prompt force_color_prompt
#
# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
# PS1="\[\033[0;31m\]\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[0;31m\]\342\234\227\[\033[0;37m\]]\342\224\200\")[$(if [[ ${EUID} == 0 ]]; then echo '\[\033[01;31m\]root\[\033[01;33m\]@\[\033[01;96m\]\h'; else echo '\[\033[0;39m\]\u\[\033[01;33m\]@\[\033[01;96m\]\h'; fi)\[\033[0;31m\]]\342\224\200[\[\033[0;32m\]\w\[\033[0;31m\]]\n\[\033[0;31m\]\342\224\224\342\224\200\342\224\200\342\225\274 \[\033[0m\]\[\e[01;33m\]\\$\[\e[0m\]"
# ;;
#*)
# ;;
#esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias dir='dir --color=auto'
alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -lh'
alias la='ls -lha'
alias l='ls -CF'
alias emacs='emacs -nw'
alias dd='dd status=progress'
alias _='sudo'
alias _i='sudo -i'
alias please='sudo'
alias fucking='sudo'
alias hx='helix'
alias bat='bat --theme="base16-256"'
if [ -n "$(command -v 'eza')" ]; then
alias ls='eza'
fi
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
export EDITOR='kak'
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
if [ "$XDG_SESSION_DESKTOP" = "sway" ] ; then
# https://github.com/swaywm/sway/issues/595
export _JAVA_AWT_WM_NONREPARENTING=1
export STUDIO_JDK=/usr/lib/jvm/java-11-openjdk/
fi
eval "$(zoxide init bash)"
export TMUX_TMPDIR=/tmp
export TINTED_SHELL_ENABLE_BASE16_VARS=1
tinty_source_shell_theme() {
tinty $@
subcommand="$1"
if [ "$subcommand" = "apply" ] || [ "$subcommand" = "init" ]; then
tinty_data_dir="${XDG_DATA_HOME:-$HOME/.local/share}/tinted-theming/tinty"
for tinty_script_file in $(find "$tinty_data_dir" -maxdepth 1 -type f -name "*.sh"); do
. $tinty_script_file
done
unset tinty_data_dir
fi
unset subcommand
}
if [ -n "$(command -v 'tinty')" ]; then
# tinty_source_shell_theme "init"
alias theme='tinty_source_shell_theme apply "$(tinty list | fzf --cycle)"'
fi
if [ -n "$(command -v tmux)" ] && [ -z "$TMUX" ]; then
alias kak='tmux new-session kak > /dev/null'
fi
alias enter-dev='. enter-dev.sh'

248
.config/btop/btop.conf Normal file
View File

@ -0,0 +1,248 @@
#? Config file for btop v. 1.3.2
#* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes.
#* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes"
color_theme = "TTY"
#* If the theme set background should be shown, set to False if you want terminal background transparency.
theme_background = True
#* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false.
truecolor = True
#* Set to true to force tty mode regardless if a real tty has been detected or not.
#* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols.
force_tty = False
#* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets.
#* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box.
#* Use whitespace " " as separator between different presets.
#* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty"
presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty"
#* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists.
#* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift.
vim_keys = False
#* Rounded corners on boxes, is ignored if TTY mode is ON.
rounded_corners = True
#* Default symbols to use for graph creation, "braille", "block" or "tty".
#* "braille" offers the highest resolution but might not be included in all fonts.
#* "block" has half the resolution of braille but uses more common characters.
#* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY.
#* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view.
graph_symbol = "braille"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_cpu = "default"
# Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty".
graph_symbol_gpu = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_mem = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_net = "default"
# Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty".
graph_symbol_proc = "default"
#* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace.
shown_boxes = "cpu mem net proc"
#* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs.
update_ms = 2000
#* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct",
#* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly.
proc_sorting = "cpu lazy"
#* Reverse sorting order, True or False.
proc_reversed = False
#* Show processes as a tree.
proc_tree = False
#* Use the cpu graph colors in the process list.
proc_colors = True
#* Use a darkening gradient in the process list.
proc_gradient = True
#* If process cpu usage should be of the core it's running on or usage of the total available cpu power.
proc_per_core = False
#* Show process memory as bytes instead of percent.
proc_mem_bytes = True
#* Show cpu graph for each process.
proc_cpu_graphs = True
#* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate)
proc_info_smaps = False
#* Show proc box on left side of screen instead of right.
proc_left = False
#* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop).
proc_filter_kernel = False
#* In tree-view, always accumulate child process resources in the parent process.
proc_aggregate = False
#* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_upper = "Auto"
#* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available.
#* Select from a list of detected attributes from the options menu.
cpu_graph_lower = "Auto"
#* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off".
show_gpu_info = "Auto"
#* Toggles if the lower CPU graph should be inverted.
cpu_invert_lower = True
#* Set to True to completely disable the lower CPU graph.
cpu_single_graph = False
#* Show cpu box at bottom of screen instead of top.
cpu_bottom = False
#* Shows the system uptime in the CPU box.
show_uptime = True
#* Show cpu temperature.
check_temp = True
#* Which sensor to use for cpu temperature, use options menu to select from list of available sensors.
cpu_sensor = "Auto"
#* Show temperatures for cpu cores also if check_temp is True and sensors has been found.
show_coretemp = True
#* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core.
#* Use lm-sensors or similar to see which cores are reporting temperatures on your machine.
#* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries.
#* Example: "4:0 5:1 6:3"
cpu_core_map = ""
#* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine".
temp_scale = "celsius"
#* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024.
base_10_sizes = False
#* Show CPU frequency.
show_cpu_freq = True
#* Draw a clock at top of screen, formatting according to strftime, empty string to disable.
#* Special formatting: /host = hostname | /user = username | /uptime = system uptime
clock_format = "%X"
#* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort.
background_update = True
#* Custom cpu model name, empty string to disable.
custom_cpu_name = ""
#* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ".
#* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user".
disks_filter = ""
#* Show graphs instead of meters for memory values.
mem_graphs = True
#* Show mem box below net box instead of above.
mem_below_net = False
#* Count ZFS ARC in cached and available memory.
zfs_arc_cached = True
#* If swap memory should be shown in memory box.
show_swap = True
#* Show swap as a disk, ignores show_swap value above, inserts itself after first disk.
swap_disk = True
#* If mem box should be split to also show disks info.
show_disks = True
#* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar.
only_physical = True
#* Read disks list from /etc/fstab. This also disables only_physical.
use_fstab = True
#* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool)
zfs_hide_datasets = False
#* Set to true to show available disk space for privileged users.
disk_free_priv = False
#* Toggles if io activity % (disk busy time) should be shown in regular disk usage view.
show_io_stat = True
#* Toggles io mode for disks, showing big graphs for disk read/write speeds.
io_mode = False
#* Set to True to show combined read/write io graphs in io mode.
io_graph_combined = False
#* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ".
#* Example: "/mnt/media:100 /:20 /boot:1".
io_graph_speeds = ""
#* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False.
net_download = 100
net_upload = 100
#* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest.
net_auto = True
#* Sync the auto scaling for download and upload to whichever currently has the highest scale.
net_sync = True
#* Starts with the Network Interface specified here.
net_iface = ""
#* Show battery stats in top right if battery is present.
show_battery = True
#* Which battery to use if multiple are present. "Auto" for auto detection.
selected_battery = "Auto"
#* Show power stats of battery next to charge indicator.
show_battery_watts = True
#* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG".
#* The level set includes all lower levels, i.e. "DEBUG" will show all logging info.
log_level = "WARNING"
#* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards.
nvml_measure_pcie_speeds = True
#* Horizontally mirror the GPU graph.
gpu_mirror_graph = True
#* Custom gpu0 model name, empty string to disable.
custom_gpu_name0 = ""
#* Custom gpu1 model name, empty string to disable.
custom_gpu_name1 = ""
#* Custom gpu2 model name, empty string to disable.
custom_gpu_name2 = ""
#* Custom gpu3 model name, empty string to disable.
custom_gpu_name3 = ""
#* Custom gpu4 model name, empty string to disable.
custom_gpu_name4 = ""
#* Custom gpu5 model name, empty string to disable.
custom_gpu_name5 = ""

162
.config/btop/btop.log Normal file
View File

@ -0,0 +1,162 @@
2024/06/06 (14:25:17) | ===> btop++ v.1.3.2
2024/06/06 (14:25:17) | WARNING: NVML: Failed to get maximum GPU power draw, defaulting to 225W: Not Supported
2024/06/06 (14:25:19) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:19) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:21) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:21) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:23) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:23) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:25) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:25) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:27) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:27) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:29) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:29) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:31) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:31) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:33) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:33) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:35) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:35) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:39) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:39) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:43) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:43) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:45) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:45) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:47) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:47) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:49) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:49) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:51) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:51) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:53) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:53) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:55) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:55) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:57) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:57) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:25:59) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:25:59) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:01) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:01) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:03) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:03) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:05) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:05) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:07) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:07) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:09) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:09) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:11) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:11) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:13) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:13) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:17) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:17) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/06 (14:26:19) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/06 (14:26:19) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:26:43) | ===> btop++ v.1.3.2
2024/06/07 (13:26:43) | WARNING: NVML: Failed to get maximum GPU power draw, defaulting to 225W: Not Supported
2024/06/07 (13:26:45) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:26:46) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:26:47) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:26:48) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:26:52) | ===> btop++ v.1.3.2
2024/06/07 (13:26:52) | WARNING: NVML: Failed to get maximum GPU power draw, defaulting to 225W: Not Supported
2024/06/07 (13:26:54) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:26:54) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:26:56) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:26:56) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:26:58) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:26:58) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:27:00) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:27:00) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:27:02) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:27:02) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:27:04) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:27:04) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:27:06) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:27:06) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/07 (13:27:08) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/07 (13:27:08) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:06:55) | ===> btop++ v.1.3.2
2024/06/12 (15:06:55) | WARNING: NVML: Failed to get maximum GPU power draw, defaulting to 225W: Not Supported
2024/06/12 (15:06:57) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:06:58) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:06:59) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:00) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:01) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:01) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:01) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:02) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:02) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:03) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:03) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:03) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:03) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:05) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:06) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:07) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:08) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:09) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:10) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:11) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:12) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:13) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:14) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:15) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:16) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:17) | ===> btop++ v.1.3.2
2024/06/12 (15:07:17) | WARNING: NVML: Failed to get maximum GPU power draw, defaulting to 225W: Not Supported
2024/06/12 (15:07:19) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:19) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:21) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:21) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:23) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:23) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:25) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:25) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:27) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:27) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:29) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:29) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:31) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:31) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:33) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:33) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:35) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:35) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:37) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:37) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:39) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:39) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:41) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:41) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:43) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:43) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:45) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:45) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:47) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:47) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:49) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:49) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:51) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:51) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:53) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:53) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:55) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:55) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:57) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:57) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:07:59) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:07:59) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:08:01) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:08:01) | WARNING: NVML: Failed to get GPU power usage: No data
2024/06/12 (15:08:03) | WARNING: NVML: Failed to get GPU utilization: Unknown Error
2024/06/12 (15:08:03) | WARNING: NVML: Failed to get GPU power usage: No data

View File

@ -0,0 +1,315 @@
# castero configuration file
# https://github.com/xgi/castero
[client]
# Whether to limit the amount of memory used by the client (by doing more
# disk I/O). Enabling this will reduce performance -- only enable it if you
# know you need to.
# default: False
restrict_memory_usage = False
# Whether to ask for confirmation before deleting a feed.
# default: False
delete_feed_confirmation = False
# The minimum number of feeds before the client asks you for confirmation
# after pressing the reload key.
# default: 10
reload_feeds_threshold = 10
# The maximum number of episodes to retain per feed. Set to -1 for no limit.
# default: -1
max_episodes = -1
# Whether to keep episodes in the client even if they are no longer present on
# the feed (i.e. the RSS feed only shows the x most recent episodes).
# default: False
retain_absent_episodes = False
# Default window layout. This can also be changed within castero by pressing the corresponding key.
# 1 - feeds + episodes + metadata
# 2 - queue + metadata
# 3 - feeds + episodes
# 4 - downloaded episodes + metadata
# 5 - all episodes + metadata
# default: 1
default_layout = 1
# Hide vertical borders between menus.
# default: False
disable_vertical_borders = False
# Whether to remove HTML tags from feed/episode descriptions.
# default: True
clean_html_descriptions = True
# The display refresh delay, in ms. Increase to reduce idle CPU usage.
# default: 30
refresh_delay = 30
# The external player to use for media playback.
# If the given player is not valid or a dependency is not met, the client will
# instead try to use the first valid interface.
# Available players (in order of precedence):
# mpv, vlc
# default: (blank)
player =
# The command to run when you press key_execute (default e). All instances of
# the following tokens are replaced with the corresponding episode attributes:
# {file} - the episode enclosure, usually a remote mp3 file
# {title} - the episode name
# {description} - the episode description
# {link} - the link to the episode, which is often a blog post
# {pubdate} - the publish date/time of the episode
# {copyright} - the copyright of the episode
# Most of these attributes have spaces, so you will probably want to enclose
# the token with quotations.
# For example, `firefox "{file}"` would open the file in Firefox.
# The client executes the text you enter as a shell command. Use with caution!
# default: (blank)
execute_command =
# An HTTP or SOCKS proxy to use for HTTP network requests.
# example: http://user:pass@10.10.1.10:3128
# example: socks5://user:pass@host:port
# default: (blank)
proxy_http =
# An HTTP or SOCKS proxy to use for HTTPS network requests.
# example: http://user:pass@10.10.1.10:3128
# example: socks5://user:pass@host:port
# default: (blank)
proxy_https =
# Behavior when adding selected feed into queue.
# If set to true, only unplayed episodes will be added to the queue.
# default: False
add_only_unplayed_episodes = False
[feeds]
# Whether to reload/refresh your feeds when the client starts. Depending on how
# many feeds you have, this operation may take a long time.
# default: False
reload_on_start = False
[downloads]
# The (absolute) location to save episodes downloaded for offline playback. Set
# to blank or whitespaces to disable -- the client will default to either
# $XDG_DATA_DIR, if set, otherwise ~/.local/share/castero/downloaded
# default: (blank)
custom_download_dir =
# The timeout for network requests, in seconds. The same value is used for
# connection and read timeouts.
# default: 3
request_timeout = 3
[colors]
# Available colors for all fields are:
# black, blue, cyan, green, magenta, red, white, yellow, transparent (background),
# integer from -1 to 255 if terminal supports 256 colors
# NOTE: Background transparency only works on compatible terminals with compositing
# The foreground (text) color of the main interface.
# default: yellow
color_foreground = yellow
# The background color of the main interface.
# default: black
color_background = black
# The foreground (text) color of selected items.
# default: black
color_foreground_alt = black
# The background color of selected items.
# default: white
color_background_alt = white
# The foreground (text) color of marked items. Paired with color_background.
# default: green
color_foreground_dim = green
# The foreground (text) color of status lines. Paired with color_background.
# default: white
color_foreground_status = white
# The foreground (text) color of menu headings. Paired with color_background.
# default: yellow
color_foreground_heading = yellow
# The foreground (text) color of dividers. Paired with color_background.
# default: white
color_foreground_dividers = white
[playback]
# The distance to move forward when pressing seek keys, in seconds.
# default: 30
seek_distance_forward = 30
# The distance to move backward when pressing seek keys, in seconds.
# default: 10
seek_distance_backward = 10
# The default playback speed. See also the rate_increase/rate_decrease keys.
# default: 1.0
default_playback_speed = 1.0
# The default volume. Can be 0-100, inclusive.
# default: 100
default_volume = 100
# The amount to adjust the volume when pressing the volume up/down keys.
# default: 5
volume_adjust_distance = 5
# The distance to rewind when resuming from playback, in seconds.
# default: 0
resume_rewind_distance = 0
[keys]
# Keybindings for controlling the client. Entries may not be blank, but may
# overlap -- however, only one operation will be performed for each key press.
# Please see this page for a list of available key names:
# https://docs.python.org/3/library/curses.html#constants
# Show the help menu.
# default: h
key_help = h
# Exit the client
# default: q
key_exit = q
# Add a feed.
# default: a
key_add_feed = a
# Remove the selected feed.
# default: d
key_remove = d
# Reload/refresh all feeds.
# default: r
key_reload = r
# Reload/refresh the selected feed.
# default: R
key_reload_selected = R
# Save episode for offline playback.
# default: s
key_save = s
# Delete downloaded episodes.
# default: x
key_delete = x
# Navigate up.
# default: UP
key_up = UP
# Navigate right.
# default: RIGHT
key_right = RIGHT
# Navigate down.
# default: DOWN
key_down = DOWN
# Navigate left.
# default: LEFT
key_left = LEFT
# Scroll menu up.
# default: PPAGE
key_scroll_up = PPAGE
# Scroll menu down.
# default: NPAGE
key_scroll_down = NPAGE
# Play selected feed/episode.
# default: ENTER
key_play_selected = ENTER
# Add selected feed/episode to queue.
# default: SPACE
key_add_selected = SPACE
# Clear the queue.
# default: c
key_clear = c
# Clear progress from episode.
# default: z
key_clear_progress = z
# Go to the next episode in the queue.
# default: n
key_next = n
# Execute a command on the selected episode. See also execute_command.
key_execute = e
# Invert the order of the menu.
# default: i
key_invert = i
# Filter the contents of the menu. Press again to clear the filter.
# default: /
key_filter = /
# Mark the episode as played/unplayed.
# default: i
key_mark_played = m
# Pause/play the current episode.
# default: p
key_pause_play = p
# Alternate binding for key_pause_play -- make identical to disable.
# default: k
key_pause_play_alt = k
# Seek forward.
# default: f
key_seek_forward = f
# Alternate binding for key_seek_forward -- make identical to disable.
# default: l
key_seek_forward_alt = l
# Seek backward.
# default: b
key_seek_backward = b
# Alternate binding for key_seek_backward -- make identical to disable.
# default: j
key_seek_backward_alt = j
# Increase playback speed.
# default: ]
key_rate_increase = ]
# Decrease playback speed.
# default: [
key_rate_decrease = [
# Increase volume.
# default: =
key_volume_increase = =
# Decrease volume.
# default: -
key_volume_decrease = -
# Show episode URL.
# default: u
key_show_url = u

233
.config/cmus/autosave Normal file
View File

@ -0,0 +1,233 @@
set aaa_mode=all
set altformat_current= %F
set altformat_playlist= %f%= %d
set altformat_title=%f
set altformat_trackwin= %f%= %d
set auto_expand_albums_follow=true
set auto_expand_albums_search=true
set auto_expand_albums_selcur=true
set auto_hide_playlists_panel=false
set auto_reshuffle=true
set block_key_paste=true
set buffer_seconds=10
set color_cmdline_attr=default
set color_cmdline_bg=default
set color_cmdline_fg=default
set color_cur_sel_attr=default
set color_error=lightred
set color_info=lightyellow
set color_separator=blue
set color_statusline_attr=default
set color_statusline_bg=gray
set color_statusline_fg=black
set color_titleline_attr=default
set color_titleline_bg=blue
set color_titleline_fg=white
set color_trackwin_album_attr=bold
set color_trackwin_album_bg=default
set color_trackwin_album_fg=default
set color_win_attr=default
set color_win_bg=default
set color_win_cur=lightyellow
set color_win_cur_attr=default
set color_win_cur_sel_attr=default
set color_win_cur_sel_bg=blue
set color_win_cur_sel_fg=lightyellow
set color_win_dir=lightblue
set color_win_fg=default
set color_win_inactive_cur_sel_attr=default
set color_win_inactive_cur_sel_bg=gray
set color_win_inactive_cur_sel_fg=lightyellow
set color_win_inactive_sel_attr=default
set color_win_inactive_sel_bg=gray
set color_win_inactive_sel_fg=black
set color_win_sel_attr=default
set color_win_sel_bg=blue
set color_win_sel_fg=white
set color_win_title_attr=default
set color_win_title_bg=blue
set color_win_title_fg=white
set confirm_run=true
set continue=true
set continue_album=true
set device=/dev/cdrom
set display_artist_sort_name=false
set dsp.alsa.device=default
set dsp.ao.buffer_size=16384
set dsp.ao.device_interface=
set dsp.ao.driver=
set dsp.ao.wav_counter=1
set dsp.ao.wav_dir=/home/mikec
set dsp.jack.resampling_quality=2
set dsp.jack.server_name=
set dsp.oss.device=
set follow=true
set format_clipped_text=…
set format_current= %a - %l%! - %n. %t%= %y
set format_playlist= %-21%a %3n. %t%= %y %d %{?X!=0?%3X ? }
set format_playlist_va= %-21%A %3n. %t (%a)%= %y %d %{?X!=0?%3X ? }
set format_statusline= %{status} %{?show_playback_position?%{position} %{?duration?/ %{duration} }?%{?duration?%{duration} }}- %{total} %{?bpm>0?at %{bpm} BPM }%{?volume>=0?vol: %{?lvolume!=rvolume?%{lvolume},%{rvolume} ?%{volume} }}%{?stream?buf: %{buffer} }%{?show_current_bitrate & bitrate>=0? %{bitrate} kbps }%=%{?repeat_current?repeat current?%{?play_library?%{playlist_mode} from %{?play_sorted?sorted }library?playlist}} | %1{continue}%1{follow}%1{repeat}%1{shuffle}
set format_title=%a - %l - %t (%y)
set format_trackwin=%3n. %t%= %y %d
set format_trackwin_album= %l %= %{albumduration}
set format_trackwin_va=%3n. %t (%a)%= %y %d
set format_treewin= %l
set format_treewin_artist=%a
set icecast_default_charset=ISO-8859-1
set id3_default_charset=ISO-8859-1
set ignore_duplicates=false
set input.cdio.cddb_url=freedb.freedb.org:8880
set input.cdio.priority=50
set input.cue.priority=50
set input.ffmpeg.priority=30
set input.flac.priority=50
set input.mikmod.priority=40
set input.modplug.priority=50
set input.mpc.priority=50
set input.opus.priority=50
set input.vorbis.priority=50
set input.wav.priority=50
set input.wavpack.priority=50
set lib_add_filter=
set lib_sort=albumartist date album discnumber tracknumber title filename play_count
set mixer.alsa.channel=PCM
set mixer.alsa.device=default
set mixer.oss.channel=PCM
set mixer.oss.device=
set mixer.pulse.restore_volume=1
set mouse=false
set mpris=true
set output_plugin=pulse
set passwd=
set pause_on_output_change=false
set pl_env_vars=
set pl_sort=
set play_library=true
set play_sorted=false
set repeat=true
set repeat_current=false
set replaygain=disabled
set replaygain_limit=true
set replaygain_preamp=0.000000
set resume=false
set rewind_offset=5
set scroll_offset=2
set set_term_title=true
set show_all_tracks=true
set show_current_bitrate=false
set show_hidden=false
set show_playback_position=true
set show_remaining_time=false
set shuffle=tracks
set skip_track_info=false
set smart_artist_sort=true
set softvol=false
set softvol_state=0 0
set sort_albums_by_name=false
set start_view=tree
set status_display_program=
set stop_after_queue=false
set time_show_leading_zero=true
set tree_width_max=0
set tree_width_percent=33
set wrap_search=true
bind browser backspace browser-up
bind browser i toggle show_hidden
bind browser space win-activate
bind browser u win-update
bind common ! push shell
bind common + vol +10%
bind common , seek -1m
bind common - vol -10%
bind common . seek +1m
bind common / search-start
bind common 1 view tree
bind common 2 view sorted
bind common 3 view playlist
bind common 4 view queue
bind common 5 view browser
bind common 6 view filters
bind common 7 view settings
bind common = vol +10%
bind common ? search-b-start
bind common B player-next-album
bind common C toggle continue
bind common D win-remove
bind common E win-add-Q
bind common F push filter
bind common G win-bottom
bind common I echo {}
bind common L push live-filter
bind common M toggle play_library
bind common N search-prev
bind common P win-mv-before
bind common U win-update-cache
bind common Z player-prev-album
bind common [ vol +1% +0
bind common ] vol +0 +1%
bind common ^B win-page-up
bind common ^C echo Type :quit<enter> to exit cmus.
bind common ^D win-half-page-down
bind common ^E win-scroll-down
bind common ^F win-page-down
bind common ^L refresh
bind common ^R toggle repeat_current
bind common ^U win-half-page-up
bind common ^Y win-scroll-up
bind common a win-add-l
bind common b player-next
bind common c player-pause
bind common delete win-remove
bind common down win-down
bind common e win-add-q
bind common end win-bottom
bind common enter win-activate
bind common f toggle follow
bind common g win-top
bind common h seek -5
bind common home win-top
bind common i win-sel-cur
bind common j win-down
bind common k win-up
bind common l seek +5
bind common left seek -5
bind common m toggle aaa_mode
bind common mlb_click_bar player-pause
bind common mlb_click_bar_right player-pause
bind common mlb_click_selected win-activate
bind common mouse_scroll_down win-down
bind common mouse_scroll_down_bar seek -5
bind common mouse_scroll_down_bar_right vol -1%
bind common mouse_scroll_down_title right-view -n
bind common mouse_scroll_up win-up
bind common mouse_scroll_up_bar seek +5
bind common mouse_scroll_up_bar_right vol +1%
bind common mouse_scroll_up_title left-view -n
bind common n search-next
bind common o toggle play_sorted
bind common p win-mv-after
bind common page_down win-page-down
bind common page_up win-page-up
bind common q quit -i
bind common r toggle repeat
bind common right seek +5
bind common s toggle shuffle
bind common space win-toggle
bind common t toggle show_remaining_time
bind common tab win-next
bind common u update-cache
bind common up win-up
bind common v player-stop
bind common x player-play
bind common y win-add-p
bind common z player-prev
bind common { vol -1% -0
bind common } vol -0 -1%
fset 90s=date>=1990&date<2000
fset classical=genre="Classical"
fset missing-tag=!stream&(artist=""|album=""|title=""|tracknumber=-1|date=-1)
fset mp3=filename="*.mp3"
fset ogg=filename="*.ogg"
fset ogg-or-mp3=ogg|mp3
fset unheard=play_count=0
factivate

BIN
.config/cmus/cache Normal file

Binary file not shown.

View File

@ -0,0 +1,7 @@
add ~/Music
clear
add Music/
add /mnt/c/Users/mchalupi/Music/
add ~/Music/
add ./
add ./*

1355
.config/cmus/lib.pl Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,9 @@
/home/mikec/Music/Creed - One Last Breath.mp3
/home/mikec/Music/TV Dinners (2008 Remaster).mp3
/home/mikec/Music/Creed - My Own Prison.mp3
/home/mikec/Music/Master of Sparks (2006 Remaster).mp3
/home/mikec/Music/Creed- Higher [sHcYaS3m1c4].opus
/home/mikec/Music/ZZ Top/Unknown Album/ZZ Top - Legs.m4a
/home/mikec/Music/ZZ Top - Got Me Under Pressure.mp3
/home/mikec/Music/The Black Keys _Black Mud Part II_ Remastered 10th Anniversary Edition _Official Audio_.mp3
/home/mikec/Music/The Black Keys - Black Mud.mp3

1
.config/cmus/rc Normal file
View File

@ -0,0 +1 @@
set output_plugin=pulse

View File

@ -0,0 +1,11 @@
black mud
got me under
legs
higher
master of spa
my own
tv din
one las
master of sparks
tv dinner
one last

View File

View File

View File

@ -0,0 +1,3 @@
[com/github/lainsce/palaura]
window-x=26
window-y=23

13
.config/goread/urls.yml Normal file
View File

@ -0,0 +1,13 @@
categories:
- name: All Feeds
desc: All feeds
subscriptions:
- name: BBC
desc: News from the BBC
url: http://feeds.bbci.co.uk/news/rss.xml
- name: Tech
desc: Tech news
subscriptions:
- name: strongly typed thoughts
desc: ""
url: https://phaazon.net/blog/feed

64
.config/htop/htoprc Normal file
View File

@ -0,0 +1,64 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
htop_version=3.3.0
config_reader_min_version=3
fields=0 48 17 18 38 39 40 2 46 47 49 1
hide_kernel_threads=1
hide_userland_threads=0
hide_running_in_container=0
shadow_other_users=0
show_thread_names=0
show_program_path=1
highlight_base_name=0
highlight_deleted_exe=1
shadow_distribution_path_prefix=0
highlight_megabytes=1
highlight_threads=1
highlight_changes=0
highlight_changes_delay_secs=5
find_comm_in_cmdline=1
strip_exe_from_cmdline=1
show_merged_command=0
header_margin=1
screen_tabs=1
detailed_cpu_time=0
cpu_count_from_one=0
show_cpu_usage=1
show_cpu_frequency=0
show_cpu_temperature=0
degree_fahrenheit=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
enable_mouse=1
delay=15
hide_function_bar=0
topology_affinity=0
header_layout=two_50_50
column_meters_0=LeftCPUs4 Memory Swap
column_meter_modes_0=1 1 1
column_meters_1=RightCPUs4 Tasks LoadAverage Uptime
column_meter_modes_1=1 2 2 2
tree_view=0
sort_key=46
tree_sort_key=0
sort_direction=-1
tree_sort_direction=1
tree_view_always_by_pid=0
all_branches_collapsed=0
screen:Main=PID USER PRIORITY NICE M_VIRT M_RESIDENT M_SHARE STATE PERCENT_CPU PERCENT_MEM TIME Command
.sort_key=PERCENT_CPU
.tree_sort_key=PID
.tree_view_always_by_pid=0
.tree_view=0
.sort_direction=-1
.tree_sort_direction=1
.all_branches_collapsed=0
screen:I/O=PID USER IO_PRIORITY IO_RATE IO_READ_RATE IO_WRITE_RATE PERCENT_SWAP_DELAY PERCENT_IO_DELAY Command
.sort_key=IO_RATE
.tree_sort_key=PID
.tree_view_always_by_pid=0
.tree_view=0
.sort_direction=-1
.tree_sort_direction=1
.all_branches_collapsed=0

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1 @@
/home/mikec/.config/kak/plugins/base16-kakoune

View File

@ -0,0 +1,163 @@
# Catppuccin Macchiato theme for Kakoune
#
# Taken and adapted from
# <https://github.com/catppuccin/kakoune/blob/e52fb5c95f70c297fea1fd58613284817b5a50bd/colors/catppuccin_macchiato.kak>
# Color palette
declare-option str rosewater "rgb:f4dbd6"
declare-option str red "rgb:ed8796"
declare-option str mauve "rgb:c6a0f6"
declare-option str maroon "rgb:ee99a0"
declare-option str pink "rgb:f5bde6"
declare-option str cyan "rgb:7dc4e4"
declare-option str yellow "rgb:eed49f"
declare-option str green "rgb:a6da95"
declare-option str white "rgb:cad3f5"
declare-option str blue "rgb:8aadf4"
declare-option str sky "rgb:91d7e3"
declare-option str lavender "rgb:b7bdf8"
declare-option str black1 "rgb:1e2030"
declare-option str black2 "rgb:24273a"
declare-option str black3 "rgb:363a4f"
declare-option str orange "rgb:f5a97f"
declare-option str teal "rgb:8bd5ca"
declare-option str flamingo "rgb:f0c6c6"
declare-option str gray0 "rgb:5b6078"
declare-option str gray1 "rgb:6e738d"
declare-option str bright_red "%opt{red}+b"
declare-option str bright_green "%opt{green}+b"
declare-option str bright_yellow "%opt{yellow}+b"
declare-option str bright_blue "%opt{blue}+b"
declare-option str bright_cyan "%opt{cyan}+b"
declare-option str bright_white "%opt{white}+b"
declare-option str foreground %opt{white}
declare-option str background %opt{black2}
declare-option str overlay0 "rgb:8087a2"
declare-option str overlay1 "rgb:939ab7"
# Markup
set-face global title "%opt{rosewater}"
set-face global header "%opt{bright_red}"
set-face global bold "%opt{mauve}"
set-face global italic "%opt{lavender}"
set-face global mono "%opt{green}"
set-face global block "%opt{cyan}"
set-face global link "%opt{green}"
set-face global bullet "%opt{green}"
set-face global list "%opt{white}"
# Builtins
set-face global Default "%opt{white},%opt{background}"
set-face global PrimarySelection "%opt{gray0},%opt{lavender}"
set-face global SecondarySelection "%opt{lavender},%opt{gray0}"
set-face global PrimaryCursor "%opt{background},%opt{rosewater}"
set-face global SecondaryCursor "%opt{black1},%opt{teal}"
set-face global PrimaryCursorEol "%opt{gray0},%opt{mauve}"
set-face global SecondaryCursorEol "%opt{gray0},%opt{maroon}"
set-face global LineNumbers "%opt{gray1},%opt{background}"
set-face global LineNumberCursor "%opt{lavender},%opt{gray0}+b"
set-face global LineNumbersWrapped "%opt{teal},%opt{black1}+i"
set-face global MenuForeground "%opt{white},%opt{gray0}+b"
set-face global MenuBackground "%opt{white},%opt{black3}"
set-face global MenuInfo "%opt{black1},%opt{blue}"
set-face global Information "%opt{black1},%opt{lavender}"
set-face global Error "%opt{red},%opt{black2}"
set-face global StatusLine "%opt{white},%opt{black1}"
set-face global StatusLineMode "%opt{black2},%opt{yellow}"
set-face global StatusLineInfo "%opt{background},%opt{green}"
set-face global StatusLineValue "%opt{orange},%opt{gray0}"
set-face global StatusCursor "%opt{black1},%opt{lavender}"
set-face global Prompt "%opt{green},%opt{black2}"
set-face global MatchingChar "%opt{maroon},%opt{black2}"
set-face global Whitespace "%opt{gray1},%opt{background}+f"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{background},%opt{background}"
# Code
set-face global value "%opt{orange}"
set-face global type "%opt{rosewater}"
set-face global variable "%opt{white}"
set-face global module "%opt{maroon}"
set-face global function "%opt{sky}"
set-face global string "%opt{green}"
set-face global keyword "%opt{blue}"
set-face global operator "%opt{blue}"
set-face global attribute "%opt{green}"
set-face global comment "%opt{gray1}+i"
set-face global documentation comment
set-face global meta "%opt{pink}"
set-face global builtin "%opt{lavender}+b"
# Tree-sitter (<https://git.sr.ht/~hadronized/kak-tree-sitter>)
set-face global ts_attribute "%opt{blue}"
set-face global ts_comment "%opt{overlay0}+i"
set-face global ts_conceal "%opt{mauve}+i"
set-face global ts_constant "%opt{orange}"
set-face global ts_constant_builtin_boolean "%opt{sky}"
set-face global ts_constant_character "%opt{yellow}"
set-face global ts_constant_macro "%opt{mauve}"
set-face global ts_constructor "%opt{cyan}"
set-face global ts_diff_plus "%opt{green}"
set-face global ts_diff_minus "%opt{red}"
set-face global ts_diff_delta "%opt{blue}"
set-face global ts_diff_delta_moved "%opt{mauve}"
set-face global ts_error "%opt{red}+b"
set-face global ts_function "%opt{blue}"
set-face global ts_function_builtin "%opt{blue}+i"
set-face global ts_function_macro "%opt{mauve}"
set-face global ts_hint "%opt{blue}+b"
set-face global ts_info "%opt{green}+b"
set-face global ts_keyword "%opt{mauve}"
set-face global ts_keyword_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_directive "%opt{mauve}+i"
set-face global ts_keyword_control_import "%opt{mauve}+i"
set-face global ts_keyword_directive "%opt{mauve}+i"
set-face global ts_label "%opt{cyan}+i"
set-face global ts_markup_bold "%opt{orange}+b"
set-face global ts_markup_heading "%opt{red}"
set-face global ts_markup_heading_1 "%opt{red}"
set-face global ts_markup_heading_2 "%opt{mauve}"
set-face global ts_markup_heading_3 "%opt{green}"
set-face global ts_markup_heading_4 "%opt{yellow}"
set-face global ts_markup_heading_5 "%opt{pink}"
set-face global ts_markup_heading_6 "%opt{teal}"
set-face global ts_markup_heading_marker "%opt{orange}+b"
set-face global ts_markup_italic "%opt{pink}+i"
set-face global ts_markup_list_checked "%opt{green}"
set-face global ts_markup_list_numbered "%opt{blue}+i"
set-face global ts_markup_list_unchecked "%opt{teal}"
set-face global ts_markup_list_unnumbered "%opt{mauve}"
set-face global ts_markup_link_label "%opt{blue}"
set-face global ts_markup_link_url "%opt{teal}+u"
set-face global ts_markup_link_uri "%opt{teal}+u"
set-face global ts_markup_link_text "%opt{blue}"
set-face global ts_markup_quote "%opt{gray1}"
set-face global ts_markup_raw "%opt{green}"
set-face global ts_markup_strikethrough "%opt{gray1}+s"
set-face global ts_namespace "%opt{blue}+i"
set-face global ts_operator "%opt{sky}"
set-face global ts_property "%opt{sky}"
set-face global ts_punctuation "%opt{overlay1}"
set-face global ts_punctuation_special "%opt{sky}"
set-face global ts_special "%opt{blue}"
set-face global ts_spell "%opt{mauve}"
set-face global ts_string "%opt{green}"
set-face global ts_string_regex "%opt{orange}"
set-face global ts_string_regexp "%opt{orange}"
set-face global ts_string_escape "%opt{mauve}"
set-face global ts_string_special "%opt{blue}"
set-face global ts_string_special_path "%opt{green}"
set-face global ts_string_special_symbol "%opt{mauve}"
set-face global ts_string_symbol "%opt{red}"
set-face global ts_tag "%opt{mauve}"
set-face global ts_tag_error "%opt{red}"
set-face global ts_text "%opt{white}"
set-face global ts_text_title "%opt{mauve}"
set-face global ts_type "%opt{yellow}"
set-face global ts_type_enum_variant "%opt{flamingo}"
set-face global ts_variable "%opt{white}"
set-face global ts_variable_builtin "%opt{red}"
set-face global ts_variable_other_member "%opt{teal}"
set-face global ts_variable_parameter "%opt{maroon}+i"
set-face global ts_warning "%opt{orange}+b"

View File

@ -0,0 +1,166 @@
# Catppuccint Mocha theme for Kakoune
#
# Taken and adapted from
# <https://github.com/catppuccin/kakoune/blob/7f187d9da2867a7fda568b2135d29b9c00cfbb94/colors/catppuccin_mocha.kak>
# Catppuccin theme for Kakoune
# Color palette (see https://catppuccin.com/palette)
declare-option str rosewater "rgb:f5e0dc"
declare-option str flamingo "rgb:f2cdcd"
declare-option str pink "rgb:f5c2e7"
declare-option str mauve "rgb:cba6f7"
declare-option str red "rgb:f38ba8"
declare-option str maroon "rgb:eba0ac"
declare-option str peach "rgb:fab387"
declare-option str yellow "rgb:f9e2af"
declare-option str green "rgb:a6e3a1"
declare-option str teal "rgb:94e2d5"
declare-option str sky "rgb:89dceb"
declare-option str sapphire "rgb:74c7ec"
declare-option str blue "rgb:89b4fa"
declare-option str lavender "rgb:b4befe"
declare-option str text "rgb:cdd6f4"
declare-option str subtext1 "rgb:bac2de"
declare-option str subtext0 "rgb:a6adc8"
declare-option str overlay2 "rgb:9399b2"
declare-option str overlay1 "rgb:7f849c"
declare-option str overlay0 "rgb:6c7086"
declare-option str surface2 "rgb:585b70"
declare-option str surface1 "rgb:45475a"
declare-option str surface0 "rgb:313244"
declare-option str base "rgb:1e1e2e"
declare-option str mantle "rgb:181825"
declare-option str crust "rgb:11111b"
# Markup
set-face global title "%opt{text}+b"
set-face global header "%opt{subtext0}+b"
set-face global bold "%opt{maroon}+b"
set-face global italic "%opt{maroon}+i"
set-face global mono "%opt{green}"
set-face global block "%opt{sapphire}"
set-face global link "%opt{blue}"
set-face global bullet "%opt{peach}"
set-face global list "%opt{peach}"
# Builtins
set-face global Default "%opt{text},%opt{base}"
set-face global PrimarySelection "%opt{text},%opt{surface2}"
set-face global SecondarySelection "%opt{text},%opt{surface2}"
set-face global PrimaryCursor "%opt{crust},%opt{rosewater}"
set-face global SecondaryCursor "%opt{text},%opt{overlay0}"
set-face global PrimaryCursorEol "%opt{surface2},%opt{lavender}"
set-face global SecondaryCursorEol "%opt{surface2},%opt{overlay1}"
set-face global LineNumbers "%opt{overlay1},%opt{base}"
set-face global LineNumberCursor "%opt{rosewater},%opt{surface2}+b"
set-face global LineNumbersWrapped "%opt{rosewater},%opt{surface2}"
set-face global MenuForeground "%opt{text},%opt{surface1}+b"
set-face global MenuBackground "%opt{text},%opt{surface0}"
set-face global MenuInfo "%opt{crust},%opt{teal}"
set-face global Information "%opt{crust},%opt{teal}"
set-face global Error "%opt{crust},%opt{red}"
set-face global DiagnosticError Error
set-face global DiagnosticWarning "%opt{yellow}"
set-face global StatusLine "%opt{text},%opt{mantle}"
set-face global StatusLineMode "%opt{crust},%opt{yellow}"
set-face global StatusLineInfo "%opt{crust},%opt{teal}"
set-face global StatusLineValue "%opt{crust},%opt{yellow}"
set-face global StatusCursor "%opt{crust},%opt{rosewater}"
set-face global Prompt "%opt{teal},%opt{base}+b"
set-face global MatchingChar "%opt{maroon},%opt{base}"
set-face global Whitespace "%opt{overlay1},%opt{base}+f"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{base},%opt{base}"
# Code
set-face global value "%opt{peach}"
set-face global type "%opt{yellow}"
set-face global variable "%opt{text}"
set-face global module "%opt{maroon}"
set-face global function "%opt{blue}"
set-face global string "%opt{green}"
set-face global keyword "%opt{mauve}"
set-face global operator "%opt{sky}"
set-face global attribute "%opt{yellow}"
set-face global comment "%opt{overlay1}+i"
set-face global documentation comment
set-face global meta "%opt{yellow}"
set-face global builtin "%opt{red}"
# Tree-sitter (<https://git.sr.ht/~hadronized/kak-tree-sitter>)
# Copied from catppuccin_macchiato.kak
# Adjusted with https://github.com/catppuccin/catppuccin/blob/main/docs/style-guide.md
set-face global ts_attribute attribute
set-face global ts_comment comment
set-face global ts_conceal "%opt{mauve}+i"
set-face global ts_constant "%opt{peach}"
set-face global ts_constant_builtin_boolean "%opt{sky}"
set-face global ts_constant_character "%opt{yellow}"
set-face global ts_constant_macro "%opt{mauve}"
set-face global ts_constructor "%opt{sky}"
set-face global ts_diff_plus "%opt{green}"
set-face global ts_diff_minus "%opt{red}"
set-face global ts_diff_delta "%opt{blue}"
set-face global ts_diff_delta_moved "%opt{mauve}"
set-face global ts_error "%opt{red}+b"
set-face global ts_function "%opt{blue}"
set-face global ts_function_builtin "%opt{blue}+i"
set-face global ts_function_macro "%opt{mauve}"
set-face global ts_hint "%opt{blue}+b"
set-face global ts_info "%opt{teal}+b"
set-face global ts_keyword "%opt{mauve}"
set-face global ts_keyword_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_conditional "%opt{mauve}+i"
set-face global ts_keyword_control_directive "%opt{mauve}+i"
set-face global ts_keyword_control_import "%opt{mauve}+i"
set-face global ts_keyword_directive "%opt{mauve}+i"
set-face global ts_label "%opt{sky}+i"
set-face global ts_markup_bold "%opt{peach}+b"
set-face global ts_markup_heading "%opt{red}"
set-face global ts_markup_heading_1 "%opt{red}"
set-face global ts_markup_heading_2 "%opt{mauve}"
set-face global ts_markup_heading_3 "%opt{green}"
set-face global ts_markup_heading_4 "%opt{yellow}"
set-face global ts_markup_heading_5 "%opt{pink}"
set-face global ts_markup_heading_6 "%opt{teal}"
set-face global ts_markup_heading_marker "%opt{peach}+b"
set-face global ts_markup_italic "%opt{pink}+i"
set-face global ts_markup_list_checked "%opt{green}"
set-face global ts_markup_list_numbered "%opt{blue}+i"
set-face global ts_markup_list_unchecked "%opt{teal}"
set-face global ts_markup_list_unnumbered "%opt{mauve}"
set-face global ts_markup_link_label "%opt{blue}"
set-face global ts_markup_link_url "%opt{teal}+u"
set-face global ts_markup_link_uri "%opt{teal}+u"
set-face global ts_markup_link_text "%opt{blue}"
set-face global ts_markup_quote "%opt{overlay1}"
set-face global ts_markup_raw "%opt{green}"
set-face global ts_markup_strikethrough "%opt{overlay1}+s"
set-face global ts_namespace "%opt{blue}+i"
set-face global ts_operator "%opt{sky}"
set-face global ts_property "%opt{sky}"
set-face global ts_punctuation "%opt{overlay1}"
set-face global ts_punctuation_special "%opt{sky}"
set-face global ts_special "%opt{blue}"
set-face global ts_spell "%opt{mauve}"
set-face global ts_string string
set-face global ts_string_regex "%opt{pink}"
set-face global ts_string_regexp "%opt{pink}"
set-face global ts_string_escape "%opt{flamingo}"
set-face global ts_string_special "%opt{blue}"
set-face global ts_string_special_path "%opt{green}"
set-face global ts_string_special_symbol "%opt{mauve}"
set-face global ts_string_symbol "%opt{red}"
set-face global ts_tag "%opt{mauve}"
set-face global ts_tag_error "%opt{red}"
set-face global ts_text "%opt{text}"
set-face global ts_text_title "%opt{mauve}"
set-face global ts_type type
set-face global ts_type_enum_variant "%opt{teal}"
set-face global ts_variable variable
set-face global ts_variable_builtin builtin
set-face global ts_variable_other_member "%opt{teal}"
set-face global ts_variable_parameter "%opt{maroon}+i"
set-face global ts_warning "%opt{yellow}+b"

View File

@ -0,0 +1,169 @@
# base16-{{scheme-slug}}
#
# Commentary:
# Tinted Theming: (https://github.com/tinted-theming)
#
# Authors:
# Scheme: {{scheme-author}}
# Template: Jamy Golden (https://github.com/JamyGolden)
# palette
declare-option str base00 'rgb:{{base00-hex}}'# black2
declare-option str base01 'rgb:{{base01-hex}}'# black1
declare-option str base02 'rgb:{{base02-hex}}'# black3
declare-option str base03 'rgb:{{base03-hex}}'# flamingo
declare-option str base04 'rgb:{{base04-hex}}'# grey0
declare-option str base05 'rgb:{{base05-hex}}'# white
declare-option str base06 'rgb:{{base06-hex}}'# rosewater
declare-option str base07 'rgb:{{base07-hex}}'# lavender
declare-option str base08 'rgb:{{base08-hex}}'# red
declare-option str base09 'rgb:{{base09-hex}}'# orange
declare-option str base0A 'rgb:{{base0A-hex}}'# yellow
declare-option str base0B 'rgb:{{base0B-hex}}'# green
declare-option str base0C 'rgb:{{base0C-hex}}'# teal
declare-option str base0D 'rgb:{{base0D-hex}}'# blue
declare-option str base0E 'rgb:{{base0E-hex}}'# mauve
declare-option str base0F 'rgb:{{base0F-hex}}'# flamingo
# code
set-face global value "%opt{base09}"
set-face global type "%opt{base08}"
set-face global variable "%opt{base08}"
set-face global module "%opt{base0D}"
set-face global function "%opt{base0D}"
set-face global identifier "%opt{base08}"
set-face global string "%opt{base0B}"
set-face global error "%opt{base08}"
set-face global keyword "%opt{base0E}"
set-face global operator "%opt{base05}"
set-face global attribute "%opt{base09}"
set-face global bracket "%opt{base05}+b"
set-face global arguement "%opt{base09}"
set-face global comma "%opt{base05}"
set-face global constant "%opt{base09}+b"
set-face global comment "%opt{base03}+i"
set-face global documentation "%opt{base03}+i"
set-face global docstring "%opt{base03}+i"
set-face global docstring "%opt{base0A}"
set-face global meta "%opt{base0C}"
set-face global builtin "%opt{base0C}+b"
# text
set-face global title "%opt{base0E}"
set-face global header "%opt{base0D}"
set-face global bold "%opt{base0E}"
set-face global italic "%opt{base0E}"
set-face global mono "%opt{base0B}"
set-face global block "%opt{base0D}"
set-face global link "%opt{base0B}"
set-face global bullet "%opt{base0B}"
set-face global list "%opt{base05}"
# kakoune UI
set-face global Default "%opt{base05},%opt{base00}"
set-face global PrimarySelection "%opt{base00},%opt{base0A}"
set-face global SecondarySelection "%opt{base03},%opt{base0A}"
set-face global PrimaryCursor "%opt{base00},%opt{base05}"
set-face global SecondaryCursor "%opt{base00},%opt{base0C}"
set-face global PrimaryCursorEol "%opt{base00},%opt{base0A}"
set-face global SecondaryCursorEol "%opt{base00},%opt{base0D}"
set-face global LineNumbers "%opt{base04},%opt{base00}"
set-face global LineNumberCursor "%opt{base0A},%opt{base00}+b"
set-face global LineNumbersWrapped "%opt{base04},%opt{base00}+i"
set-face global MenuForeground "%opt{base06},%opt{base01}+b"
set-face global MenuBackground "%opt{base0D},%opt{base07}"
set-face global MenuInfo "%opt{base0D},%opt{base07}"
set-face global Information "%opt{base01},%opt{base07}"
set-face global Error "%opt{base01},%opt{base08}"
set-face global DiagnosticError "%opt{base08}"
set-face global DiagnosticWarning "%opt{base0A}"
set-face global StatusLine "%opt{base04},%opt{base02}"
set-face global StatusLineMode "%opt{base0A},%opt{base02}"
set-face global StatusLineInfo "%opt{base06},%opt{base02}"
set-face global StatusLineValue "%opt{base04},%opt{base02}"
set-face global StatusCursor "%opt{base02},%opt{base05}"
set-face global Prompt "%opt{base0A},%opt{base02}"
set-face global MatchingChar "%opt{base0D},%opt{base00}"
set-face global Whitespace "%opt{base01},%opt{base00}+f"
set-face global WrapMarker Whitespace
set-face global BufferPadding "%opt{base04},%opt{base00}"
set-face global Search "%opt{base05},%opt{base01}"
# Tree-sitter (<https://git.sr.ht/~hadronized/kak-tree-sitter>)
set-face global ts_attribute "%opt{base0D}"
set-face global ts_comment "%opt{base04}+i"
set-face global ts_conceal "%opt{base0E}+i"
set-face global ts_constant "%opt{base09}"
set-face global ts_constant_builtin_boolean "%opt{base0C}"
set-face global ts_constant_character "%opt{base0A}"
set-face global ts_constant_macro "%opt{base0E}"
set-face global ts_constructor "%opt{base0D}"
set-face global ts_diff_plus "%opt{base0B}"
set-face global ts_diff_minus "%opt{base08}"
set-face global ts_diff_delta "%opt{base0D}"
set-face global ts_diff_delta_moved "%opt{base0E}"
set-face global ts_error "%opt{base08}+b"
set-face global ts_function "%opt{base0D}"
set-face global ts_function_builtin "%opt{base0D}+i"
set-face global ts_function_macro "%opt{base0E}"
set-face global ts_hint "%opt{base0D}+b"
set-face global ts_info "%opt{base0B}+b"
set-face global ts_keyword "%opt{base0E}"
set-face global ts_keyword_conditional "%opt{base0E}+i"
set-face global ts_keyword_control_conditional "%opt{base0E}+i"
set-face global ts_keyword_control_directive "%opt{base0E}+i"
set-face global ts_keyword_control_import "%opt{base0E}+i"
set-face global ts_keyword_directive "%opt{base0E}+i"
set-face global ts_label "%opt{base0E}+i"
set-face global ts_markup_bold "%opt{base09}+b"
set-face global ts_markup_heading "%opt{base08}"
set-face global ts_markup_heading_1 "%opt{base08}"
set-face global ts_markup_heading_2 "%opt{base0E}"
set-face global ts_markup_heading_3 "%opt{base0B}"
set-face global ts_markup_heading_4 "%opt{base0A}"
set-face global ts_markup_heading_5 "%opt{base07}"
set-face global ts_markup_heading_6 "%opt{base0C}"
set-face global ts_markup_heading_marker "%opt{base09}+b"
set-face global ts_markup_italic "%opt{base07}+i"
set-face global ts_markup_list_checked "%opt{base0B}"
set-face global ts_markup_list_numbered "%opt{base0D}+i"
set-face global ts_markup_list_unchecked "%opt{base0C}"
set-face global ts_markup_list_unnumbered "%opt{base0E}"
set-face global ts_markup_link_label "%opt{base0D}"
set-face global ts_markup_link_url "%opt{base0C}+u"
set-face global ts_markup_link_uri "%opt{base0C}+u"
set-face global ts_markup_link_text "%opt{base0D}"
set-face global ts_markup_quote "%opt{base04}"
set-face global ts_markup_raw "%opt{base0B}"
set-face global ts_markup_strikethrough "%opt{base04}+s"
set-face global ts_namespace "%opt{base0D}+i"
set-face global ts_operator "%opt{base0C}"
set-face global ts_property "%opt{base0C}"
set-face global ts_punctuation "%opt{base04}"
set-face global ts_punctuation_special "%opt{base0C}"
set-face global ts_special "%opt{base0D}"
set-face global ts_spell "%opt{base0E}"
set-face global ts_string "%opt{base0B}"
set-face global ts_string_regex "%opt{base09}"
set-face global ts_string_regexp "%opt{base09}"
set-face global ts_string_escape "%opt{base0E}"
set-face global ts_string_special "%opt{base0D}"
set-face global ts_string_special_path "%opt{base0B}"
set-face global ts_string_special_symbol "%opt{base0E}"
set-face global ts_string_symbol "%opt{base08}"
set-face global ts_tag "%opt{base0E}"
set-face global ts_tag_error "%opt{base08}"
set-face global ts_text "%opt{base05}"
set-face global ts_text_title "%opt{base0E}"
set-face global ts_type "%opt{base0A}"
set-face global ts_type_enum_variant "%opt{base03}"
set-face global ts_variable "%opt{base05}"
set-face global ts_variable_builtin "%opt{base08}"
set-face global ts_variable_other_member "%opt{base0C}"
set-face global ts_variable_parameter "%opt{base0F}+i"
set-face global ts_warning "%opt{base09}+b"

358
.config/kak/kakrc Normal file
View File

@ -0,0 +1,358 @@
### Plugins ###
evaluate-commands %sh{
plugins="$kak_config/plugins"
mkdir -p "$plugins"
[ ! -e "$plugins/plug.kak" ] && \
git clone -q https://github.com/andreyorst/plug.kak.git "$plugins/plug.kak"
printf "%s\n" "source '$plugins/plug.kak/rc/plug.kak'"
}
plug "andreyorst/plug.kak" noload
plug "andreyorst/smarttab.kak" defer smarttab %{
set-option global softtabstop 4
}
plug "occivink/kakoune-sudo-write"
plug "kak-lsp/kak-lsp" do %{
cargo install --locked --force --path .
}
# plug "gustavo-hms/luar" %{
# plug "gustavo-hms/peneira" %{
# require-module peneira
# }
# }
# # Color Themes
plug "tinted-theming/base16-kakoune"
### End Of Plugins ###
# set-option global luar_interpreter luajit
## Treesitter ##
eval %sh{ kak-tree-sitter -dks --with-highlighting --with-text-objects --session $kak_session }
#eval %sh{ kak-tree-sitter -dks --with-text-objects --session $kak_session }
#eval %sh{ kak-tree-sitter -dks --with-highlighting --session $kak_session }
evaluate-commands %sh{
echo "colorscheme base16-$BASE16_THEME"
}
## Highlighting ##
hook global WinCreate .* %{ add-highlighter window/number-lines number-lines -relative -hlcursor}
hook global WinCreate .* %{ add-highlighter window/ show-matching}
add-highlighter global/ column 80 MenuForeground
add-highlighter global/ show-whitespaces
## Formatting ##
define-command enable-autofmt -docstring 'enable autoformatting of buffer' %{
hook global -group autofmt BufSetOption filetype=(c|cpp) %{
set-option buffer formatcmd 'clang-format -style=file:/home/mikec/.clang-format'
hook -group autofmt buffer BufOpenFile .* %{
format
}
hook -group autofmt buffer BufWritePre .* {
format
ctags-update-tags
}
}
}
define-command disable-autofmt -docstring 'disable autoformatting of buffer' %{
remove-hooks global autofmt
}
## Indentation ##
set global tabstop 4
set global indentwidth 4
hook global WinSetOption filetype=.* expandtab
hook global WinSetOption filetype=(makefile|gas) noexpandtab
hook global BufCreate .* %{
editorconfig-load
autoconfigtab
}
define-command sleuth -docstring 'Heuristically set buffer options' %{
try %{
evaluate-commands -draft %{
# Search the first indent level
execute-keys 'gg' '/' '^\h+' '<ret>'
# Tab vs. Space
# https://youtu.be/V7PLxL8jIl8
try %{
execute-keys '<a-k>' '\t' '<ret>'
#set-option buffer indentwidth 0
noexpandtab
} catch %{
set-option buffer indentwidth %val{selection_length}
expandtab
}
}
}
}
define-command git-status -docstring 'Show git diff' %{
hook -group git-status global BufOpenFile .* %{
git show-diff
}
hook -group git-status global BufWritePost .* %{
git show-diff
}
}
define-command disable-git-status -docstring 'Disable git diff gutter' %{
remove-hooks global git-status
}
define-command sleuth-enable -docstring 'Enable sleuth' %{
# Run sleuth when opening and saving files.
hook -group sleuth global BufOpenFile .* %{
sleuth
}
hook -group sleuth global BufWritePost .* %{
sleuth
}
}
define-command sleuth-disable -docstring 'Disable sleuth' %{
remove-hooks global sleuth
}
## LSP ##
lsp-enable
lsp-auto-hover-enable
lsp-inlay-diagnostics-enable global
hook global WinSetOption filetype=(c|zig|rust|python|ruby|lua) %{
hook window -group semantic-tokens BufReload .* lsp-semantic-tokens
hook window -group semantic-tokens NormalIdle .* lsp-semantic-tokens
hook window -group semantic-tokens InsertIdle .* lsp-semantic-tokens
hook -once -always window WinSetOption filetype=.* %{
remove-hooks window semantic-tokens
}
}
face global InfoDefault Information
face global InfoBlock Information
face global InfoBlockQuote Information
face global InfoBullet Information
face global InfoHeader Information
face global InfoLink Information
face global InfoLinkMono Information
face global InfoMono Information
face global InfoRule Information
face global InfoDiagnosticError Information
face global InfoDiagnosticHint Information
face global InfoDiagnosticInformation Information
face global InfoDiagnosticWarning Information
set-option global lsp_config %{
}
define-command -docstring 'Invoke fzf to select a buffer' fzf-buffer %{
evaluate-commands %sh{
BUFFER=$(
(
eval "set -- $kak_buflist"
while [ $# -gt 0 ]; do
printf "%s\0" "$1"
shift
done
) |
fzf-tmux --cycle -p 175,45 --read0 --preview='bat --theme=base16-256 --color=always {} 2>/dev/null'
)
BUFFER=${BUFFER/\'/\'\'}
if [ -n "$BUFFER" ]; then
printf "buffer %s" "${BUFFER}"
fi
}
}
define-command -docstring 'live grep' live-grep %{
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
file="$(rfv.sh)"
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
fi
}
}
define-command -docstring 'exact grep' exact-grep %{
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
file="$(rfve.sh)"
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
fi
}
}
define-command -docstring 'search contents of current file' file-search %{
evaluate-commands -save-regs '"' %{
set-register dquote %sh{ mktemp }
execute-keys -draft '%<a-|> cat > $kak_reg_dquote<ret>'
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
file="$(rfs.sh ${kak_reg_dquote} ${kak_buffile})"
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
rm $kak_reg_dquote
fi
}
}
}
define-command -docstring 'search contents of current file with regex' regex-file-search %{
evaluate-commands -save-regs '"' %{
set-register dquote %sh{ mktemp }
execute-keys -draft '%<a-|> cat > $kak_reg_dquote<ret>'
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
file="$(rgrs.sh ${kak_reg_dquote} ${kak_buffile})"
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
rm $kak_reg_dquote
fi
}
}
}
define-command -docstring 'Invoke fzf to open a file' -params 0 fzf-edit %{
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
file="$(fd -u -t f . |TMUX="${kak_client_env_TMUX}" fzf-tmux --cycle -p 175,45 --preview='bat --theme=base16-256 --color=always {} 2>/dev/null || cat {} 2>/dev/null')"
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
fi
}
}
define-command -docstring 'Invoke fzf to open a file local to the current file' -params 0 fzf-edit-local %{
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
dir="$(get_local_path ${kak_buffile})"
if [ -n "$dir" ]; then
file="$(fd -u -t f . $dir |TMUX="${kak_client_env_TMUX}" fzf-tmux --cycle -p 175,45 --preview='bat --theme=base16-256 --color=always {} 2>/dev/null || cat {} 2>/dev/null')"
fi
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
fi
}
}
define-command -docstring 'Pick project' -params 0 switch-project %{
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
proj="$(cat ~/.scripts/projects | TMUX="${kak_client_env_TMUX}" fzf-tmux --cycle -p 175,45 | cut -d' ' -f1)"
if [ -n "$proj" ]; then
printf "cd %s\n" "$proj"
printf 'fzf-edit\n'
fi
fi
}
}
define-command -docstring 'Project wide search' project-search %{
evaluate-commands %sh{
if [ -z "${kak_client_env_TMUX}" ]; then
printf 'fail "client was not started under tmux"\n'
else
file="$(rgfs.sh)"
if [ -n "$file" ]; then
printf "edit %s\n" "$file"
fi
fi
}
}
define-command -docstring 'Print Working Directory' -params 0 pwd %{
evaluate-commands echo %sh{ echo "$(pwd)"}
}
declare-user-mode config
map -docstring 'enter config mode' global user e ':enter-user-mode config<ret>'
map -docstring 'edit kakoune config' global config k ':cd ~/.config/kak/<ret>:e ./kakrc<ret>'
map -docstring 'edit tmux config' global config t ':e ~/.tmux.conf<ret>'
map -docstring 'edit bash config' global config b ':e ~/.bashrc<ret>'
map -docstring 'edit scripts folder' global config s ':cd ~/.scripts<ret>:fzf-edit<ret>'
map -docstring 'edit .config folder' global config c ':cd ~/.config<ret>:fzf-edit<ret>'
declare-user-mode buffer
map -docstring 'enter buffer mode' global user b ':enter-user-mode buffer<ret>'
map -docstring 'next buffer' global buffer n ':buffer-next<ret>'
map -docstring 'previous buffer' global buffer p ':buffer-previous<ret>'
map -docstring 'close current buffer' global buffer d ':delete-buffer!<ret>'
map -docstring 'write and close current buffer' global buffer w ':w<ret>:db<ret>'
map -docstring 'list and select a buffer' global buffer b ':fzf-buffer<ret>'
declare-user-mode find
map -docstring 'enter find mode' global user f ':enter-user-mode find<ret>'
map -docstring 'find files' global find f ':fzf-edit<ret>'
map -docstring 'find tags for the current project' global find t ':ctags-search '
map -docstring 'find line in current file' global find l ':file-search<ret>'
map -docstring 'find line in current file with regex' global find L ':regex-file-search<ret>'
map -docstring 'find files in current directory' global find F ':fzf-edit-local<ret>'
map -docstring "grep file contents recursively" global find g ':live-grep<ret>'
map -docstring "grep exact file contents recursively" global find e ':exact-grep<ret>'
map -docstring 'project wide search' global find p ':project-search<ret>'
map -docstring 'enter lsp mode' global user l ':enter-user-mode lsp<ret>'
map -docstring 'goto definition (tag)' global lsp t '<a-i>w:ctags-search<ret>'
map -docstring 'enter treesitter mode' global user t ':enter-user-mode tree-sitter<ret>'
map -docstring 'enter treesitter search mode' global user s ':enter-user-mode tree-sitter-search<ret>'
declare-user-mode tmux
map -docstring 'enter tmux/window mode' global user w ':enter-user-mode tmux<ret>'
map -docstring 'vertical split' global tmux v ':tmux-terminal-horizontal kak -c %val{session}<ret>'
map -docstring 'horizontal split' global tmux h ':tmux-terminal-vertical kak -c %val{session}<ret>'
map -docstring 'new tab' global tmux t ':tmux-terminal-window kak -c %val{session}<ret>'
map -docstring 'vertical terminal split' global tmux V ':tmux-repl-horizontal bash<ret>'
map -docstring 'horizontal terminal split' global tmux H ':tmux-repl-vertical bash<ret>'
map -docstring 'new terminal tab' global tmux T ':tmux-repl-window<ret>'
map -docstring 'new git window' global tmux g ':tmux-terminal-window lazygit<ret>'
declare-user-mode project
map -docstring 'enter project mode' global user P ':enter-user-mode project<ret>'
map -docstring 'open project' global project o ':switch-project<ret>'
map -docstring 'enter man mode' global user m ':enter-user-mode man<ret>'
map -docstring 'clipboard yank' global user y '<a-|>clip.exe<ret>'
map -docstring 'clipboard paste' global user p '|powershell.exe -C Get-Clipboard | tr -d "\r"<ret>'
map -docstring 'quit kakoune' global user q ':q<ret>'
map -docstring 'toggle comments' global user c ':comment-line<ret>'

View File

143
.config/mc/ini Normal file
View File

@ -0,0 +1,143 @@
[Midnight-Commander]
verbose=true
shell_patterns=true
auto_save_setup=true
preallocate_space=false
auto_menu=false
use_internal_view=true
use_internal_edit=true
clear_before_exec=true
confirm_delete=true
confirm_overwrite=true
confirm_execute=false
confirm_history_cleanup=true
confirm_exit=false
confirm_directory_hotlist_delete=false
confirm_view_dir=false
safe_delete=false
safe_overwrite=false
use_8th_bit_as_meta=false
mouse_move_pages_viewer=true
mouse_close_dialog=false
fast_refresh=false
drop_menus=false
wrap_mode=true
old_esc_mode=true
cd_symlinks=true
show_all_if_ambiguous=false
use_file_to_guess_type=true
alternate_plus_minus=false
only_leading_plus_minus=true
show_output_starts_shell=false
xtree_mode=false
file_op_compute_totals=true
classic_progressbar=true
use_netrc=true
ftpfs_always_use_proxy=false
ftpfs_use_passive_connections=true
ftpfs_use_passive_connections_over_proxy=false
ftpfs_use_unix_list_options=true
ftpfs_first_cd_then_ls=true
ignore_ftp_chattr_errors=true
editor_fill_tabs_with_spaces=false
editor_return_does_auto_indent=true
editor_backspace_through_tabs=false
editor_fake_half_tabs=true
editor_option_save_position=true
editor_option_auto_para_formatting=false
editor_option_typewriter_wrap=false
editor_edit_confirm_save=true
editor_syntax_highlighting=true
editor_persistent_selections=true
editor_drop_selection_on_copy=true
editor_cursor_beyond_eol=false
editor_cursor_after_inserted_block=false
editor_visible_tabs=true
editor_visible_spaces=true
editor_line_state=false
editor_simple_statusbar=false
editor_check_new_line=false
editor_show_right_margin=false
editor_group_undo=false
editor_state_full_filename=false
editor_ask_filename_before_edit=false
nice_rotating_dash=true
shadows=true
mcview_remember_file_position=false
auto_fill_mkdir_name=true
copymove_persistent_attr=true
pause_after_run=1
mouse_repeat_rate=100
double_click_speed=250
old_esc_mode_timeout=1000000
max_dirt_limit=10
num_history_items_recorded=60
vfs_timeout=60
ftpfs_directory_timeout=900
ftpfs_retry_seconds=30
shell_directory_timeout=900
editor_tab_spacing=8
editor_word_wrap_line_length=72
editor_option_save_mode=0
editor_backup_extension=~
editor_filesize_threshold=64M
editor_stop_format_chars=-+*\\,.;:&>
mcview_eof=
skin=default
[Layout]
output_lines=0
left_panel_size=105
top_panel_size=0
message_visible=true
keybar_visible=true
xterm_title=true
command_prompt=true
menubar_visible=true
free_space=true
horizontal_split=false
vertical_equal=true
horizontal_equal=true
[Misc]
timeformat_recent=%b %e %H:%M
timeformat_old=%b %e %Y
ftp_proxy_host=gate
ftpfs_password=anonymous@
display_codepage=UTF-8
source_codepage=Other_8_bit
autodetect_codeset=
clipboard_store=
clipboard_paste=
[Colors]
base_color=
xterm-256color=
color_terminals=
[Panels]
show_mini_info=true
kilobyte_si=false
mix_all_files=false
show_backups=true
show_dot_files=true
fast_reload=false
fast_reload_msg_shown=false
mark_moves_down=true
reverse_files_only=true
auto_save_setup_panels=false
navigate_with_arrows=false
panel_scroll_pages=true
panel_scroll_center=false
mouse_move_pages=true
filetype_mode=true
permission_mode=false
torben_fj_mode=false
quick_search_mode=2
select_flags=6
[Panelize]
Find SUID and SGID programs=find . \\( \\( -perm -04000 -a -perm /011 \\) -o \\( -perm -02000 -a -perm /01 \\) \\) -print
Modified git files=git ls-files --modified
Find rejects after patching=find . -name \\*.rej -print
Find *.orig after patching=find . -name \\*.orig -print

0
.config/mc/panels.ini Normal file
View File

26
.config/newsboat/config Normal file
View File

@ -0,0 +1,26 @@
# unbind keys
# unbind-key ENTER
unbind-key j
unbind-key k
unbind-key h
unbind-key l
unbind-key g
unbind-key G
# bind keys - vim style
bind-key j down
bind-key k up
bind-key l open
bind-key h quit
bind-key g home
bind-key G end
podlist-format "%2i %b %> %S [%dMB / %tMB] [%p %%] [%K]"
download-filename-format "%t | %n [%F].%e"
download-path "~/podcasts/%n/"
macro 1 set browser "curl %u --output /tmp/image && sxiv /tmp/image && rm /tmp/image"; one; set browser lynx;
macro 2 set browser "mpv --vid=no -- %u"; one; set browser lynx;
macro 3 set browser "curl %u --output /tmp/image && sxiv /tmp/image && rm /tmp/image";
macro 4 set browser "mpv --vid=no -- %u";
macro 5 set browser lynx;

0
.config/newsboat/queue Normal file
View File

9
.config/newsboat/urls Normal file
View File

@ -0,0 +1,9 @@
https://phaazon.net/blog/feed
https://danielde.dev/rss.xml
https://sizeof.cat/index.xml
https://lukesmith.xyz/rss.xml
https://api.substack.com/feed/podcast/462466.rss
https://www.dailywire.com/feeds/rss.xml
https://feeds.simplecast.com/6c2VScgo
https://feeds.simplecast.com/pp_b9xO6
https://notrelated.xyz/rss

895
.config/nushell/config.nu Normal file
View File

@ -0,0 +1,895 @@
# Nushell Config File
#
# version = "0.94.2"
# For more information on defining custom themes, see
# https://www.nushell.sh/book/coloring_and_theming.html
# And here is the theme collection
# https://github.com/nushell/nu_scripts/tree/main/themes
let dark_theme = {
# color for nushell primitives
separator: white
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
header: green_bold
empty: blue
# Closures can be used to choose colors for specific values.
# The value (in this case, a bool) is piped into the closure.
# eg) {|| if $in { 'light_cyan' } else { 'light_gray' } }
bool: light_cyan
int: white
filesize: cyan
duration: white
date: purple
range: white
float: white
string: white
nothing: white
binary: white
cell-path: white
row_index: green_bold
record: white
list: white
block: white
hints: dark_gray
search_result: { bg: red fg: white }
shape_and: purple_bold
shape_binary: purple_bold
shape_block: blue_bold
shape_bool: light_cyan
shape_closure: green_bold
shape_custom: green
shape_datetime: cyan_bold
shape_directory: cyan
shape_external: cyan
shape_externalarg: green_bold
shape_external_resolved: light_yellow_bold
shape_filepath: cyan
shape_flag: blue_bold
shape_float: purple_bold
# shapes are used to change the cli syntax highlighting
shape_garbage: { fg: white bg: red attr: b}
shape_globpattern: cyan_bold
shape_int: purple_bold
shape_internalcall: cyan_bold
shape_keyword: cyan_bold
shape_list: cyan_bold
shape_literal: blue
shape_match_pattern: green
shape_matching_brackets: { attr: u }
shape_nothing: light_cyan
shape_operator: yellow
shape_or: purple_bold
shape_pipe: purple_bold
shape_range: yellow_bold
shape_record: cyan_bold
shape_redirection: purple_bold
shape_signature: green_bold
shape_string: green
shape_string_interpolation: cyan_bold
shape_table: blue_bold
shape_variable: purple
shape_vardecl: purple
shape_raw_string: light_purple
}
let light_theme = {
# color for nushell primitives
separator: dark_gray
leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
header: green_bold
empty: blue
# Closures can be used to choose colors for specific values.
# The value (in this case, a bool) is piped into the closure.
# eg) {|| if $in { 'dark_cyan' } else { 'dark_gray' } }
bool: dark_cyan
int: dark_gray
filesize: cyan_bold
duration: dark_gray
date: purple
range: dark_gray
float: dark_gray
string: dark_gray
nothing: dark_gray
binary: dark_gray
cell-path: dark_gray
row_index: green_bold
record: dark_gray
list: dark_gray
block: dark_gray
hints: dark_gray
search_result: { fg: white bg: red }
shape_and: purple_bold
shape_binary: purple_bold
shape_block: blue_bold
shape_bool: light_cyan
shape_closure: green_bold
shape_custom: green
shape_datetime: cyan_bold
shape_directory: cyan
shape_external: cyan
shape_externalarg: green_bold
shape_external_resolved: light_purple_bold
shape_filepath: cyan
shape_flag: blue_bold
shape_float: purple_bold
# shapes are used to change the cli syntax highlighting
shape_garbage: { fg: white bg: red attr: b}
shape_globpattern: cyan_bold
shape_int: purple_bold
shape_internalcall: cyan_bold
shape_keyword: cyan_bold
shape_list: cyan_bold
shape_literal: blue
shape_match_pattern: green
shape_matching_brackets: { attr: u }
shape_nothing: light_cyan
shape_operator: yellow
shape_or: purple_bold
shape_pipe: purple_bold
shape_range: yellow_bold
shape_record: cyan_bold
shape_redirection: purple_bold
shape_signature: green_bold
shape_string: green
shape_string_interpolation: cyan_bold
shape_table: blue_bold
shape_variable: purple
shape_vardecl: purple
shape_raw_string: light_purple
}
# External completer example
# let carapace_completer = {|spans|
# carapace $spans.0 nushell ...$spans | from json
# }
# The default config record. This is where much of your global configuration is setup.
$env.config = {
show_banner: true # true or false to enable or disable the welcome banner at startup
ls: {
use_ls_colors: true # use the LS_COLORS environment variable to colorize output
clickable_links: true # enable or disable clickable links. Your terminal has to support links.
}
rm: {
always_trash: false # always act as if -t was given. Can be overridden with -p
}
table: {
mode: rounded # basic, compact, compact_double, light, thin, with_love, rounded, reinforced, heavy, none, other
index_mode: always # "always" show indexes, "never" show indexes, "auto" = show indexes when a table has "index" column
show_empty: true # show 'empty list' and 'empty record' placeholders for command output
padding: { left: 1, right: 1 } # a left right padding of each column in a table
trim: {
methodology: wrapping # wrapping or truncating
wrapping_try_keep_words: true # A strategy used by the 'wrapping' methodology
truncating_suffix: "..." # A suffix used by the 'truncating' methodology
}
header_on_separator: false # show header text on separator/border line
# abbreviated_row_count: 10 # limit data rows from top and bottom after reaching a set point
}
error_style: "fancy" # "fancy" or "plain" for screen reader-friendly error messages
# datetime_format determines what a datetime rendered in the shell would look like.
# Behavior without this configuration point will be to "humanize" the datetime display,
# showing something like "a day ago."
datetime_format: {
# normal: '%a, %d %b %Y %H:%M:%S %z' # shows up in displays of variables or other datetime's outside of tables
# table: '%m/%d/%y %I:%M:%S%p' # generally shows up in tabular outputs such as ls. commenting this out will change it to the default human readable datetime format
}
explore: {
status_bar_background: { fg: "#1D1F21", bg: "#C4C9C6" },
command_bar_text: { fg: "#C4C9C6" },
highlight: { fg: "black", bg: "yellow" },
status: {
error: { fg: "white", bg: "red" },
warn: {}
info: {}
},
table: {
split_line: { fg: "#404040" },
selected_cell: { bg: light_blue },
selected_row: {},
selected_column: {},
},
}
history: {
max_size: 100_000 # Session has to be reloaded for this to take effect
sync_on_enter: true # Enable to share history between multiple sessions, else you have to close the session to write history to file
file_format: "plaintext" # "sqlite" or "plaintext"
isolation: false # only available with sqlite file_format. true enables history isolation, false disables it. true will allow the history to be isolated to the current session using up/down arrows. false will allow the history to be shared across all sessions.
}
completions: {
case_sensitive: false # set to true to enable case-sensitive completions
quick: true # set this to false to prevent auto-selecting completions when only one remains
partial: true # set this to false to prevent partial filling of the prompt
algorithm: "prefix" # prefix or fuzzy
external: {
enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up may be very slow
max_results: 100 # setting it lower can improve completion performance at the cost of omitting some options
completer: null # check 'carapace_completer' above as an example
}
use_ls_colors: true # set this to true to enable file/path/directory completions using LS_COLORS
}
filesize: {
metric: false # true => KB, MB, GB (ISO standard), false => KiB, MiB, GiB (Windows standard)
format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, auto
}
cursor_shape: {
emacs: line # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (line is the default)
vi_insert: block # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (block is the default)
vi_normal: underscore # block, underscore, line, blink_block, blink_underscore, blink_line, inherit to skip setting cursor shape (underscore is the default)
}
color_config: $dark_theme # if you want a more interesting theme, you can replace the empty record with `$dark_theme`, `$light_theme` or another custom record
use_grid_icons: true
footer_mode: "25" # always, never, number_of_rows, auto
float_precision: 2 # the precision for displaying floats in tables
buffer_editor: "" # command that will be used to edit the current line buffer with ctrl+o, if unset fallback to $env.EDITOR and $env.VISUAL
use_ansi_coloring: true
bracketed_paste: true # enable bracketed paste, currently useless on windows
edit_mode: emacs # emacs, vi
shell_integration: {
# osc2 abbreviates the path if in the home_dir, sets the tab/window title, shows the running command in the tab/window title
osc2: true
# osc7 is a way to communicate the path to the terminal, this is helpful for spawning new tabs in the same directory
osc7: true
# osc8 is also implemented as the deprecated setting ls.show_clickable_links, it shows clickable links in ls output if your terminal supports it. show_clickable_links is deprecated in favor of osc8
osc8: true
# osc9_9 is from ConEmu and is starting to get wider support. It's similar to osc7 in that it communicates the path to the terminal
osc9_9: false
# osc133 is several escapes invented by Final Term which include the supported ones below.
# 133;A - Mark prompt start
# 133;B - Mark prompt end
# 133;C - Mark pre-execution
# 133;D;exit - Mark execution finished with exit code
# This is used to enable terminals to know where the prompt is, the command is, where the command finishes, and where the output of the command is
osc133: true
# osc633 is closely related to osc133 but only exists in visual studio code (vscode) and supports their shell integration features
# 633;A - Mark prompt start
# 633;B - Mark prompt end
# 633;C - Mark pre-execution
# 633;D;exit - Mark execution finished with exit code
# 633;E - NOT IMPLEMENTED - Explicitly set the command line with an optional nonce
# 633;P;Cwd=<path> - Mark the current working directory and communicate it to the terminal
# and also helps with the run recent menu in vscode
osc633: true
# reset_application_mode is escape \x1b[?1l and was added to help ssh work better
reset_application_mode: true
}
render_right_prompt_on_last_line: false # true or false to enable or disable right prompt to be rendered on last line of the prompt.
use_kitty_protocol: false # enables keyboard enhancement protocol implemented by kitty console, only if your terminal support this.
highlight_resolved_externals: false # true enables highlighting of external commands in the repl resolved by which.
recursion_limit: 50 # the maximum number of times nushell allows recursion before stopping it
plugins: {} # Per-plugin configuration. See https://www.nushell.sh/contributor-book/plugins.html#configuration.
plugin_gc: {
# Configuration for plugin garbage collection
default: {
enabled: true # true to enable stopping of inactive plugins
stop_after: 10sec # how long to wait after a plugin is inactive to stop it
}
plugins: {
# alternate configuration for specific plugins, by name, for example:
#
# gstat: {
# enabled: false
# }
}
}
hooks: {
pre_prompt: [{ null }] # run before the prompt is shown
pre_execution: [{ null }] # run before the repl input is run
env_change: {
PWD: [{|before, after| null }] # run if the PWD environment is different since the last repl input
}
display_output: "if (term size).columns >= 100 { table -e } else { table }" # run to display the output of a pipeline
command_not_found: { null } # return an error message when a command is not found
}
menus: [
# Configuration for default nushell menus
# Note the lack of source parameter
{
name: completion_menu
only_buffer_difference: false
marker: "| "
type: {
layout: columnar
columns: 4
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
col_padding: 2
}
style: {
text: green
selected_text: { attr: r }
description_text: yellow
match_text: { attr: u }
selected_match_text: { attr: ur }
}
}
{
name: ide_completion_menu
only_buffer_difference: false
marker: "| "
type: {
layout: ide
min_completion_width: 0,
max_completion_width: 50,
max_completion_height: 10, # will be limited by the available lines in the terminal
padding: 0,
border: true,
cursor_offset: 0,
description_mode: "prefer_right"
min_description_width: 0
max_description_width: 50
max_description_height: 10
description_offset: 1
# If true, the cursor pos will be corrected, so the suggestions match up with the typed text
#
# C:\> str
# str join
# str trim
# str split
correct_cursor_pos: false
}
style: {
text: green
selected_text: { attr: r }
description_text: yellow
match_text: { attr: u }
selected_match_text: { attr: ur }
}
}
{
name: history_menu
only_buffer_difference: true
marker: "? "
type: {
layout: list
page_size: 10
}
style: {
text: green
selected_text: green_reverse
description_text: yellow
}
}
{
name: help_menu
only_buffer_difference: true
marker: "? "
type: {
layout: description
columns: 4
col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
col_padding: 2
selection_rows: 4
description_rows: 10
}
style: {
text: green
selected_text: green_reverse
description_text: yellow
}
}
]
keybindings: [
{
name: completion_menu
modifier: none
keycode: tab
mode: [emacs vi_normal vi_insert]
event: {
until: [
{ send: menu name: completion_menu }
{ send: menunext }
{ edit: complete }
]
}
}
{
name: ide_completion_menu
modifier: control
keycode: char_n
mode: [emacs vi_normal vi_insert]
event: {
until: [
{ send: menu name: ide_completion_menu }
{ send: menunext }
{ edit: complete }
]
}
}
{
name: history_menu
modifier: control
keycode: char_r
mode: [emacs, vi_insert, vi_normal]
event: { send: menu name: history_menu }
}
{
name: help_menu
modifier: none
keycode: f1
mode: [emacs, vi_insert, vi_normal]
event: { send: menu name: help_menu }
}
{
name: completion_previous_menu
modifier: shift
keycode: backtab
mode: [emacs, vi_normal, vi_insert]
event: { send: menuprevious }
}
{
name: next_page_menu
modifier: control
keycode: char_x
mode: emacs
event: { send: menupagenext }
}
{
name: undo_or_previous_page_menu
modifier: control
keycode: char_z
mode: emacs
event: {
until: [
{ send: menupageprevious }
{ edit: undo }
]
}
}
{
name: escape
modifier: none
keycode: escape
mode: [emacs, vi_normal, vi_insert]
event: { send: esc } # NOTE: does not appear to work
}
{
name: cancel_command
modifier: control
keycode: char_c
mode: [emacs, vi_normal, vi_insert]
event: { send: ctrlc }
}
{
name: quit_shell
modifier: control
keycode: char_d
mode: [emacs, vi_normal, vi_insert]
event: { send: ctrld }
}
{
name: clear_screen
modifier: control
keycode: char_l
mode: [emacs, vi_normal, vi_insert]
event: { send: clearscreen }
}
{
name: search_history
modifier: control
keycode: char_q
mode: [emacs, vi_normal, vi_insert]
event: { send: searchhistory }
}
{
name: open_command_editor
modifier: control
keycode: char_o
mode: [emacs, vi_normal, vi_insert]
event: { send: openeditor }
}
{
name: move_up
modifier: none
keycode: up
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: menuup }
{ send: up }
]
}
}
{
name: move_down
modifier: none
keycode: down
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: menudown }
{ send: down }
]
}
}
{
name: move_left
modifier: none
keycode: left
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: menuleft }
{ send: left }
]
}
}
{
name: move_right_or_take_history_hint
modifier: none
keycode: right
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: historyhintcomplete }
{ send: menuright }
{ send: right }
]
}
}
{
name: move_one_word_left
modifier: control
keycode: left
mode: [emacs, vi_normal, vi_insert]
event: { edit: movewordleft }
}
{
name: move_one_word_right_or_take_history_hint
modifier: control
keycode: right
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: historyhintwordcomplete }
{ edit: movewordright }
]
}
}
{
name: move_to_line_start
modifier: none
keycode: home
mode: [emacs, vi_normal, vi_insert]
event: { edit: movetolinestart }
}
{
name: move_to_line_start
modifier: control
keycode: char_a
mode: [emacs, vi_normal, vi_insert]
event: { edit: movetolinestart }
}
{
name: move_to_line_end_or_take_history_hint
modifier: none
keycode: end
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: historyhintcomplete }
{ edit: movetolineend }
]
}
}
{
name: move_to_line_end_or_take_history_hint
modifier: control
keycode: char_e
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: historyhintcomplete }
{ edit: movetolineend }
]
}
}
{
name: move_to_line_start
modifier: control
keycode: home
mode: [emacs, vi_normal, vi_insert]
event: { edit: movetolinestart }
}
{
name: move_to_line_end
modifier: control
keycode: end
mode: [emacs, vi_normal, vi_insert]
event: { edit: movetolineend }
}
{
name: move_up
modifier: control
keycode: char_p
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: menuup }
{ send: up }
]
}
}
{
name: move_down
modifier: control
keycode: char_t
mode: [emacs, vi_normal, vi_insert]
event: {
until: [
{ send: menudown }
{ send: down }
]
}
}
{
name: delete_one_character_backward
modifier: none
keycode: backspace
mode: [emacs, vi_insert]
event: { edit: backspace }
}
{
name: delete_one_word_backward
modifier: control
keycode: backspace
mode: [emacs, vi_insert]
event: { edit: backspaceword }
}
{
name: delete_one_character_forward
modifier: none
keycode: delete
mode: [emacs, vi_insert]
event: { edit: delete }
}
{
name: delete_one_character_forward
modifier: control
keycode: delete
mode: [emacs, vi_insert]
event: { edit: delete }
}
{
name: delete_one_character_backward
modifier: control
keycode: char_h
mode: [emacs, vi_insert]
event: { edit: backspace }
}
{
name: delete_one_word_backward
modifier: control
keycode: char_w
mode: [emacs, vi_insert]
event: { edit: backspaceword }
}
{
name: move_left
modifier: none
keycode: backspace
mode: vi_normal
event: { edit: moveleft }
}
{
name: newline_or_run_command
modifier: none
keycode: enter
mode: emacs
event: { send: enter }
}
{
name: move_left
modifier: control
keycode: char_b
mode: emacs
event: {
until: [
{ send: menuleft }
{ send: left }
]
}
}
{
name: move_right_or_take_history_hint
modifier: control
keycode: char_f
mode: emacs
event: {
until: [
{ send: historyhintcomplete }
{ send: menuright }
{ send: right }
]
}
}
{
name: redo_change
modifier: control
keycode: char_g
mode: emacs
event: { edit: redo }
}
{
name: undo_change
modifier: control
keycode: char_z
mode: emacs
event: { edit: undo }
}
{
name: paste_before
modifier: control
keycode: char_y
mode: emacs
event: { edit: pastecutbufferbefore }
}
{
name: cut_word_left
modifier: control
keycode: char_w
mode: emacs
event: { edit: cutwordleft }
}
{
name: cut_line_to_end
modifier: control
keycode: char_k
mode: emacs
event: { edit: cuttoend }
}
{
name: cut_line_from_start
modifier: control
keycode: char_u
mode: emacs
event: { edit: cutfromstart }
}
{
name: swap_graphemes
modifier: control
keycode: char_t
mode: emacs
event: { edit: swapgraphemes }
}
{
name: move_one_word_left
modifier: alt
keycode: left
mode: emacs
event: { edit: movewordleft }
}
{
name: move_one_word_right_or_take_history_hint
modifier: alt
keycode: right
mode: emacs
event: {
until: [
{ send: historyhintwordcomplete }
{ edit: movewordright }
]
}
}
{
name: move_one_word_left
modifier: alt
keycode: char_b
mode: emacs
event: { edit: movewordleft }
}
{
name: move_one_word_right_or_take_history_hint
modifier: alt
keycode: char_f
mode: emacs
event: {
until: [
{ send: historyhintwordcomplete }
{ edit: movewordright }
]
}
}
{
name: delete_one_word_forward
modifier: alt
keycode: delete
mode: emacs
event: { edit: deleteword }
}
{
name: delete_one_word_backward
modifier: alt
keycode: backspace
mode: emacs
event: { edit: backspaceword }
}
{
name: delete_one_word_backward
modifier: alt
keycode: char_m
mode: emacs
event: { edit: backspaceword }
}
{
name: cut_word_to_right
modifier: alt
keycode: char_d
mode: emacs
event: { edit: cutwordright }
}
{
name: upper_case_word
modifier: alt
keycode: char_u
mode: emacs
event: { edit: uppercaseword }
}
{
name: lower_case_word
modifier: alt
keycode: char_l
mode: emacs
event: { edit: lowercaseword }
}
{
name: capitalize_char
modifier: alt
keycode: char_c
mode: emacs
event: { edit: capitalizechar }
}
# The following bindings with `*system` events require that Nushell has
# been compiled with the `system-clipboard` feature.
# This should be the case for Windows, macOS, and most Linux distributions
# Not available for example on Android (termux)
# If you want to use the system clipboard for visual selection or to
# paste directly, uncomment the respective lines and replace the version
# using the internal clipboard.
{
name: copy_selection
modifier: control_shift
keycode: char_c
mode: emacs
event: { edit: copyselection }
# event: { edit: copyselectionsystem }
}
{
name: cut_selection
modifier: control_shift
keycode: char_x
mode: emacs
event: { edit: cutselection }
# event: { edit: cutselectionsystem }
}
# {
# name: paste_system
# modifier: control_shift
# keycode: char_v
# mode: emacs
# event: { edit: pastesystem }
# }
{
name: select_all
modifier: control_shift
keycode: char_a
mode: emacs
event: { edit: selectall }
}
]
}

100
.config/nushell/env.nu Normal file
View File

@ -0,0 +1,100 @@
# Nushell Environment Config File
#
# version = "0.94.2"
def create_left_prompt [] {
let dir = match (do --ignore-shell-errors { $env.PWD | path relative-to $nu.home-path }) {
null => $env.PWD
'' => '~'
$relative_pwd => ([~ $relative_pwd] | path join)
}
let path_color = (if (is-admin) { ansi red_bold } else { ansi green_bold })
let separator_color = (if (is-admin) { ansi light_red_bold } else { ansi light_green_bold })
let path_segment = $"($path_color)($dir)"
$path_segment | str replace --all (char path_sep) $"($separator_color)(char path_sep)($path_color)"
}
def create_right_prompt [] {
# create a right prompt in magenta with green separators and am/pm underlined
let time_segment = ([
(ansi reset)
(ansi magenta)
(date now | format date '%x %X') # try to respect user's locale
] | str join | str replace --regex --all "([/:])" $"(ansi green)${1}(ansi magenta)" |
str replace --regex --all "([AP]M)" $"(ansi magenta_underline)${1}")
let last_exit_code = if ($env.LAST_EXIT_CODE != 0) {([
(ansi rb)
($env.LAST_EXIT_CODE)
] | str join)
} else { "" }
([$last_exit_code, (char space), $time_segment] | str join)
}
# Use nushell functions to define your right and left prompt
$env.PROMPT_COMMAND = {|| create_left_prompt }
# FIXME: This default is not implemented in rust code as of 2023-09-08.
$env.PROMPT_COMMAND_RIGHT = {|| create_right_prompt }
# The prompt indicators are environmental variables that represent
# the state of the prompt
$env.PROMPT_INDICATOR = {|| "> " }
$env.PROMPT_INDICATOR_VI_INSERT = {|| ": " }
$env.PROMPT_INDICATOR_VI_NORMAL = {|| "> " }
$env.PROMPT_MULTILINE_INDICATOR = {|| "::: " }
# If you want previously entered commands to have a different prompt from the usual one,
# you can uncomment one or more of the following lines.
# This can be useful if you have a 2-line prompt and it's taking up a lot of space
# because every command entered takes up 2 lines instead of 1. You can then uncomment
# the line below so that previously entered commands show with a single `🚀`.
# $env.TRANSIENT_PROMPT_COMMAND = {|| "🚀 " }
# $env.TRANSIENT_PROMPT_INDICATOR = {|| "" }
# $env.TRANSIENT_PROMPT_INDICATOR_VI_INSERT = {|| "" }
# $env.TRANSIENT_PROMPT_INDICATOR_VI_NORMAL = {|| "" }
# $env.TRANSIENT_PROMPT_MULTILINE_INDICATOR = {|| "" }
# $env.TRANSIENT_PROMPT_COMMAND_RIGHT = {|| "" }
# Specifies how environment variables are:
# - converted from a string to a value on Nushell startup (from_string)
# - converted from a value back to a string when running external commands (to_string)
# Note: The conversions happen *after* config.nu is loaded
$env.ENV_CONVERSIONS = {
"PATH": {
from_string: { |s| $s | split row (char esep) | path expand --no-symlink }
to_string: { |v| $v | path expand --no-symlink | str join (char esep) }
}
"Path": {
from_string: { |s| $s | split row (char esep) | path expand --no-symlink }
to_string: { |v| $v | path expand --no-symlink | str join (char esep) }
}
}
# Directories to search for scripts when calling source or use
# The default for this is $nu.default-config-dir/scripts
$env.NU_LIB_DIRS = [
($nu.default-config-dir | path join 'scripts') # add <nushell-config-dir>/scripts
]
# Directories to search for plugin binaries when calling register
# The default for this is $nu.default-config-dir/plugins
$env.NU_PLUGIN_DIRS = [
($nu.default-config-dir | path join 'plugins') # add <nushell-config-dir>/plugins
]
# To add entries to PATH (on Windows you might use Path), you can use the following pattern:
# $env.PATH = ($env.PATH | split row (char esep) | prepend '/some/path')
# An alternate way to add entries to $env.PATH is to use the custom command `path add`
# which is built into the nushell stdlib:
# use std "path add"
# $env.PATH = ($env.PATH | split row (char esep))
# path add /some/path
# path add ($env.CARGO_HOME | path join "bin")
# path add ($env.HOME | path join ".local" "bin")
# $env.PATH = ($env.PATH | uniq)
# To load from a custom file you can use:
# source ($nu.default-config-dir | path join 'custom.nu')

View File

@ -0,0 +1,13 @@
ls
eza
eza -l
ls
exit
which ls
man nu
nu --help
exit
cat compile_commands.json
cat compile_commands.json | from json
clear
exit

View File

@ -0,0 +1,14 @@
function colors(color)
color = color or 'gruvbox'
-- Available values: `'hard'`, `'medium'`, `'soft'`
vim.g.gruvbox_material_background = 'medium'
-- Available values: `'material'`, `'mix'`, `'original'`
vim.g.gruvbox_material_foreground = 'mix'
-- Available values: `'hard'`, `'medium'`, `'soft'`
vim.g.everforest_background = 'hard'
vim.g.gruvbox_material_better_performance = 1
vim.g.everforest_better_performance = 1
vim.cmd.colorscheme(color)
end
colors()

View File

@ -0,0 +1,81 @@
local lsp = require('lsp-zero')
local lsp_config = require("lspconfig")
local mason = require("mason")
lsp.preset('recommended')
--lsp.ensure_installed({
--'lua_ls',
--})
--Enable (broadcasting) snippet capability for completion
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.snippetSupport = true
lsp_config.html.setup {
capabilities = capabilities,
filetypes = { "html", "etlua" },
}
local cmp = require("cmp")
local cmp_select = {behavior = cmp.SelectBehavior.Select}
local cmp_mappings = lsp.defaults.cmp_mappings({
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
['<C-y>'] = cmp.mapping.confirm({select = true}),
['<C-Space>'] = cmp.mapping.complete(),
})
cmp.setup {
sources = {
-- { name = 'conjure' },
{ name = 'nvim_lsp_signature_help' },
{ name = 'nvim_lsp' },
{ name = 'luasnip' },
}
}
lsp.set_preferences({
sign_icons = { }
})
-- lsp.setup_nvim_cmp({
-- mapping = cmp_mappings
-- })
lsp.on_attach(function(client, bufnr)
local opts = {buffer = bufnr, remap = false}
if client.name == "eslint" then
vim.cmd.LspStop('eslint')
return
end
if client.name == "html" or client.name == "cssls" then
capabilities = capabilities
end
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
vim.keymap.set("n", "<leader>vws", vim.lsp.buf.workspace_symbol, opts)
vim.keymap.set("n", "<leader>vd", vim.diagnostic.open_float, opts)
vim.keymap.set("n", "[d", vim.diagnostic.goto_next, opts)
vim.keymap.set("n", "]d", vim.diagnostic.goto_prev, opts)
vim.keymap.set("n", "<leader>vca", vim.lsp.buf.code_action, opts)
vim.keymap.set("n", "<leader>vrr", vim.lsp.buf.references, opts)
vim.keymap.set("n", "<leader>vrn", vim.lsp.buf.rename, opts)
vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts)
end)
lsp_config.lua_ls.setup {
-- ... other configs
settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
}
}
}
}
lsp_config.racket_langserver.setup{}
lsp.setup()
mason.setup()

View File

@ -0,0 +1,15 @@
local builtin = require('telescope.builtin')
local telescope = require('telescope')
telescope.load_extension("workspaces")
telescope.load_extension("recent_files")
telescope.load_extension("telescope-tabs")
vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
vim.keymap.set('n', '<leader>fF', builtin.git_files, {})
vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
vim.keymap.set('n', '<leader>bb', builtin.buffers, {})
vim.keymap.set('n', '<leader>hh', builtin.help_tags, {})
vim.keymap.set('n', '<leader>cc', builtin.colorscheme, {})
vim.keymap.set('n', '<leader>wo', ":Telescope workspaces<CR>", {})
vim.api.nvim_set_keymap("n", "<leader>fr",
[[<cmd>lua require('telescope').extensions.recent_files.pick()<CR>]],
{noremap = true, silent = true})

View File

@ -0,0 +1,22 @@
require'nvim-treesitter.configs'.setup {
-- A list of parser names, or "all"
ensure_installed = { "java", "c", "lua" },
-- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false,
-- Automatically install missing parsers when entering buffer
-- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally
auto_install = true,
highlight = {
-- `false` will disable the whole extension
enable = true,
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
-- Using this option may slow down your editor, and you may see some duplicate highlights.
-- Instead of true it can also be a list of languages
additional_vim_regex_highlighting = false,
},
}

View File

@ -0,0 +1,2 @@
vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)

View File

@ -0,0 +1 @@
[{"url": "sqlserver://chalupmc:MikeC00l@golem.csse.rose-hulman.edu/SodaBasechalupmc", "name": "SodaBasechalupmc"}, {"url": "sqlserver://chalupmc:MikeC00l@golem.csse.rose-hulman.edu/NWindchalupmc", "name": "NWindchalupmc"}]

View File

@ -0,0 +1,97 @@
-- See `:help vim.lsp.start_client` for an overview of the supported `config` options.
--local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ':p:h:t')
--local workspace_dir = '/path/to/workspace-root/' .. project_name
local workspace_dir = vim.fn.getcwd()
local config = {
-- The command that starts the language server
-- See: https://github.com/eclipse/eclipse.jdt.ls#running-from-the-command-line
cmd = {
-- 💀
'/usr/lib/jvm/java-19-openjdk/bin/java', -- or '/path/to/java17_or_newer/bin/java'
-- depends on if `java` is in your $PATH env variable and if it points to the right version.
'-Declipse.application=org.eclipse.jdt.ls.core.id1',
'-Dosgi.bundles.defaultStartLevel=4',
'-Declipse.product=org.eclipse.jdt.ls.core.product',
'-Dlog.protocol=true',
'-Dlog.level=ALL',
'-Xms1g',
'--add-modules=ALL-SYSTEM',
'--add-opens', 'java.base/java.util=ALL-UNNAMED',
'--add-opens', 'java.base/java.lang=ALL-UNNAMED',
-- 💀
'-jar', '/usr/share/java/jdtls/plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar',
-- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^
-- Must point to the Change this to
-- eclipse.jdt.ls installation the actual version
-- 💀
'-configuration', '/usr/share/java/jdtls/config_linux',
-- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^
-- Must point to the Change to one of `linux`, `win` or `mac`
-- eclipse.jdt.ls installation Depending on your system.
-- 💀
-- See `data directory configuration` section in the README
'-data', "/home/mikec/Documents/workspace"
},
-- 💀
-- This is the default if not provided, you can remove it. Or adjust as needed.
-- One dedicated LSP server & client will be started per unique root_dir
root_dir = require('jdtls.setup').find_root({'.git', 'mvnw', 'gradlew'}),
-- Here you can configure eclipse.jdt.ls specific settings
-- See https://github.com/eclipse/eclipse.jdt.ls/wiki/Running-the-JAVA-LS-server-from-the-command-line#initialize-request
-- for a list of options
settings = {
java = {
}
},
-- Language server `initializationOptions`
-- You need to extend the `bundles` with paths to jar files
-- if you want to use additional eclipse.jdt.ls plugins.
--
-- See https://github.com/mfussenegger/nvim-jdtls#java-debug-installation
--
-- If you don't plan on using the debugger or other eclipse.jdt.ls plugins you can remove this
--init_options = {
-- bundles = {
-- vim.fn.glob("/home/mikec/.local/share/nvim/mason/packages/java-debug-adapter/extension/server/com.microsoft.java.debug.plugin/target/com.microsoft.java.debug.plugin-*.jar", 1)
-- }
--},
}
-- This bundles definition is the same as in the previous section (java-debug installation)
local bundles = {
vim.fn.glob("/home/mikec/.local/share/nvim/mason/packages/java-debug-adapter/extension/server/com.microsoft.java.debug.plugin/target/com.microsoft.java.debug.plugin-*.jar", 1)
};
-- This is the new part
vim.list_extend(bundles, vim.split(vim.fn.glob("/path/to/microsoft/vscode-java-test/server/*.jar", 1), "\n"))
config['init_options'] = {
bundles = bundles;
}
-- This starts a new client & server,
-- or attaches to an existing client & server depending on the `root_dir`.
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
vim.keymap.set("n", "<leader>vws", vim.lsp.buf.workspace_symbol, opts)
vim.keymap.set("n", "<leader>vd", vim.diagnostic.open_float, opts)
vim.keymap.set("n", "[d", vim.diagnostic.goto_next, opts)
vim.keymap.set("n", "]d", vim.diagnostic.goto_prev, opts)
vim.keymap.set("n", "<leader>vca", vim.lsp.buf.code_action, opts)
vim.keymap.set("n", "<leader>vrr", vim.lsp.buf.references, opts)
vim.keymap.set("n", "<leader>vrn", vim.lsp.buf.rename, opts)
vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts)
vim.keymap.set("n", "<leader>i", function() require('jdtls').organize_imports() end, opts)
require('jdtls').start_or_attach(config)

1
.config/nvim/init.lua Normal file
View File

@ -0,0 +1 @@
require("config")

View File

@ -0,0 +1,29 @@
local M = {}
local function db_completion()
require("cmp").setup.buffer { sources = { { name = "vim-dadbod-completion" } } }
end
function M.setup()
vim.g.db_ui_save_location = vim.fn.stdpath "config" .. require("plenary.path").path.sep .. "db_ui"
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
},
command = [[setlocal omnifunc=vim_dadbod_completion#omni]],
})
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"sql",
"mysql",
"plsql",
},
callback = function()
vim.schedule(db_completion)
end,
})
end
return M

View File

@ -0,0 +1,3 @@
require("config.remap")
require("config.packer")
require("config.set")

View File

@ -0,0 +1,328 @@
-- This file can be loaded by calling `lua require('plugins')` from your init.vim
-- Only required if you have packer configured as `opt`
vim.cmd [[packadd packer.nvim]]
return require('packer').startup(function(use)
-- Packer can manage itself
use 'wbthomason/packer.nvim'
use {
'nvim-telescope/telescope.nvim',
branch = '0.1.x',
requires = { { 'nvim-lua/plenary.nvim' } }
}
use {
'LukasPietzschmann/telescope-tabs',
requires = { 'nvim-telescope/telescope.nvim' },
config = function()
require'telescope-tabs'.setup{
-- Your custom config :^)
}
end
}
use({
'rose-pine/neovim',
as = 'rose-pine',
-- config = function()
-- vim.cmd('colorscheme rose-pine')
-- end
})
use 'tanvirtin/monokai.nvim'
use 'arzg/vim-colors-xcode'
use 'shaunsingh/nord.nvim'
use 'kvrohit/mellow.nvim'
use 'Mofiqul/vscode.nvim'
use 'Th3Whit3Wolf/one-nvim'
use 'mhartington/oceanic-next'
use 'folke/tokyonight.nvim'
use 'sainnhe/gruvbox-material'
use { "ellisonleao/gruvbox.nvim" }
use 'sainnhe/everforest'
use 'lourenci/github-colors'
use 'navarasu/onedark.nvim'
use 'shaunsingh/moonlight.nvim'
use 'Mofiqul/dracula.nvim'
use 'kdheepak/monochrome.nvim'
use "savq/melange-nvim"
use { "catppuccin/nvim", as = "catppuccin" }
-- use 'RRethy/nvim-base16'
use ({ 'projekt0n/github-nvim-theme' })
use { 'Everblush/nvim', as = 'everblush' }
use "lewpoly/sherbet.nvim"
use {
'nvim-treesitter/nvim-treesitter',
run = ':TSUpdate',
}
use {
'numToStr/Comment.nvim',
config = function()
require('Comment').setup()
end
}
use 'nvim-treesitter/playground'
-- use 'mbbill/undotree'
use {
'VonHeikemen/lsp-zero.nvim',
requires = {
-- LSP Support
{ 'neovim/nvim-lspconfig' },
{ 'williamboman/mason.nvim' },
{ 'williamboman/mason-lspconfig.nvim' },
-- Autocompletion
{ 'hrsh7th/nvim-cmp' },
{ 'hrsh7th/cmp-buffer' },
{ 'hrsh7th/cmp-path' },
{ 'hrsh7th/cmp-nvim-lsp-signature-help' },
{ 'saadparwaiz1/cmp_luasnip' },
{ 'hrsh7th/cmp-nvim-lsp' },
{ 'hrsh7th/cmp-nvim-lua' },
-- Snippets
{ 'L3MON4D3/LuaSnip' },
{ 'rafamadriz/friendly-snippets' },
}
}
use {
'L3MON4D3/LuaSnip',
--after = 'nvim-cmp',
requires = { "rafamadriz/friendly-snippets" },
config = function()
--require('config.snippets')
require("luasnip.loaders.from_vscode").lazy_load()
end,
run = "make install_jsregexp"
}
use 'rafamadriz/friendly-snippets'
use {
"folke/twilight.nvim",
config = function()
require("twilight").setup {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}
end
}
use 'winston0410/cmd-parser.nvim'
use {
'winston0410/range-highlight.nvim',
config = function() require("range-highlight").setup {} end
}
use 'RRethy/vim-illuminate'
use 'mfussenegger/nvim-jdtls'
use {
"samjwill/nvim-unception",
setup = function()
-- Optional settings go here!
end
}
use {
"0oAstro/dim.lua",
requires = { "nvim-treesitter/nvim-treesitter", "neovim/nvim-lspconfig" },
config = function()
require('dim').setup({})
end
}
use 'mfussenegger/nvim-dap'
use { "rcarriga/nvim-dap-ui", requires = { "mfussenegger/nvim-dap" } }
use { 'stevearc/dressing.nvim' }
use {
'krady21/compiler-explorer.nvim',
config = function()
require("compiler-explorer").setup({
autocmd = {
enable = true,
hl = "Cursorline"
}
})
end
}
-- use 'ggandor/lightspeed.nvim'
use {
'ggandor/leap.nvim',
config = function()
require('leap').add_default_mappings()
end
}
use 'ollykel/v-vim'
use {
'windwp/nvim-ts-autotag',
config = function()
require('nvim-ts-autotag').setup()
end
}
use 'jbyuki/nabla.nvim'
use {
'ray-x/web-tools.nvim',
config = function()
require('web-tools').setup()
end
}
use {
'natecraddock/workspaces.nvim',
config = function()
require('workspaces').setup()
end
}
use {"smartpde/telescope-recent-files"}
use 'uga-rosa/ccc.nvim'
use 'tveskag/nvim-blame-line'
use {
'lewis6991/gitsigns.nvim',
config = function()
require('gitsigns').setup()
end
}
-- use 'Olical/conjure'
-- use 'PaterJason/cmp-conjure'
use {
'lukas-reineke/indent-blankline.nvim',
config = function()
require 'ibl'.setup{ scope = { enabled = false } }
end,
}
use 'jaawerth/fennel.vim'
use 'stefanos82/nelua.vim'
use 'leafo/moonscript-vim'
use 'teal-language/vim-teal'
use 'https://github.com/VaiN474/vim-etlua'
use 'folke/neodev.nvim'
use {
"kylechui/nvim-surround",
tag = "*", -- Use for stability; omit to use `main` branch for the latest features
config = function()
require("nvim-surround").setup({
-- Configuration here, or leave empty to use defaults
})
end
}
use {
"utilyre/barbecue.nvim",
tag = "*",
requires = {
"SmiteshP/nvim-navic",
"nvim-tree/nvim-web-devicons", -- optional dependency
},
after = "nvim-web-devicons", -- keep this if you're using NvChad
config = function()
require("barbecue").setup()
end,
}
use {
'nvim-lualine/lualine.nvim',
requires = { 'nvim-tree/nvim-web-devicons', opt = true },
config = function()
local function lspactive()
local names = {}
for i, server in pairs(vim.lsp.get_active_clients({ bufnr = 0 })) do
table.insert(names, server.name)
end
return " [" .. table.concat(names, " ") .. "]"
end
require('lualine').setup {
options = {
globalstatus = true,
icons_enabled = false,
section_separators = { left = '', right = '' },
component_separators = { left = '', right = '' }
},
sections = {
lualine_a = { { 'mode', separator = { left = '', right = '' } }, },
lualine_b = {},
lualine_c = {'filename'},
lualine_x = {lspactive, { 'diagnostics', icons_enabled = true }, 'branch', 'diff'},
lualine_y = {'encoding', 'fileformat', 'filetype'},
lualine_z = {'location', { 'progress', separator = { left = '', right = '' } }, },
},
}
end,
}
use {
'goolord/alpha-nvim',
requires = { 'nvim-tree/nvim-web-devicons' },
config = function ()
require'alpha'.setup(require'alpha.themes.startify'.config)
end
}
use 'aklt/plantuml-syntax'
use {
"tpope/vim-dadbod",
opt = true,
requires = {
"kristijanhusak/vim-dadbod-ui",
"kristijanhusak/vim-dadbod-completion",
},
config = function()
require("config.dadbod").setup()
end,
cmd = { "DBUIToggle", "DBUI", "DBUIAddConnection", "DBUIFindBuffer", "DBUIRenameBuffer", "DBUILastQueryInfo" },
}
use 'eandrju/cellular-automaton.nvim'
end)

View File

@ -0,0 +1,56 @@
require('Comment').setup()
vim.g.mapleader = " "
vim.g.maplocalleader = ","
vim.keymap.set("n", "<leader>op", vim.cmd.Ex)
vim.keymap.set("n", "<leader>lp", ":lua require(\"nabla\").popup()<CR>")
vim.keymap.set("n", "<leader>ll", ":lua require(\"nabla\").toggle_virt()<CR>")
-- vim.keymap.set("n", "<C-x>", vim.cmd.nohlsearch)
vim.keymap.set("n", "<leader>x", vim.cmd.bdelete)
vim.keymap.set("n", "<leader>bd", ":bdelete!<CR>")
vim.keymap.set("n", "<leader>w", function()
vim.cmd.write();
vim.cmd.bdelete();
end)
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv")
vim.keymap.set("n", "J", "mzJ'z")
vim.keymap.set("n", "<C-d>", "<C-d>zz")
vim.keymap.set("n", "<C-u>", "<C-u>zz")
vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv")
vim.keymap.set("n", "<leader>y", "\"+y")
vim.keymap.set("v", "<leader>y", "\"+y")
vim.keymap.set("n", "<leader>Y", "\"+Y")
vim.keymap.set("n", "<leader>p", "\"+p")
vim.keymap.set("v", "<leader>p", "\"+p")
vim.keymap.set("n", "<leader>P", "\"+P")
vim.keymap.set("n", "<leader>f", function()
vim.lsp.buf.format()
end)
vim.keymap.set("n", "<leader>tw", function()
vim.cmd.Twilight()
end)
vim.keymap.set("t", "<Esc><Esc>", "<C-\\><C-n>")
vim.keymap.set("n", "<leader>ec", ":e ~/.config/nvim<CR>")
vim.keymap.set("n", "<leader>bn", ":bnext<CR>")
vim.keymap.set("n", "<leader>bp", ":bprevious<CR>")
vim.keymap.set("n", "<leader>tn", ":tabnext<CR>")
vim.keymap.set("n", "<leader>tp", ":tabprevious<CR>")
vim.keymap.set("n", "<leader>to", ":tabnew<CR>")
vim.keymap.set("n", "<leader>td", ":tabclose<CR>")
vim.keymap.set("n", "<leader>tt", function()
require('telescope-tabs').list_tabs()
end)

View File

@ -0,0 +1,53 @@
vim.opt.nu = true
vim.opt.relativenumber = true
vim.opt.tabstop = 4
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = true
vim.opt.showmode = false
vim.opt.smartindent = true
vim.opt.wrap = false
vim.opt.swapfile = false
vim.opt.backup = false
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
vim.opt.undofile = true
vim.opt.hlsearch = true
vim.opt.incsearch = true
vim.opt.termguicolors = true
vim.opt.scrolloff = 8
vim.opt.signcolumn = "yes"
vim.opt.isfname:append("@-@")
vim.opt.updatetime = 50
vim.opt.colorcolumn = "80"
vim.opt.splitright = true
vim.opt.splitbelow = true
vim.g.mapleader = " "
vim.g.neovide_scale_factor = 1.0
function ChangeScaleFactor(delta)
vim.g.neovide_scale_factor = vim.g.neovide_scale_factor * delta
end
vim.keymap.set("n", "<C-=>", function()
ChangeScaleFactor(1.25)
end)
vim.keymap.set("n", "<C-->", function()
ChangeScaleFactor(1 / 1.25)
end)
vim.opt.guifont = { "Cascadia Code", ":h12" }
vim.g.netrw_keepdir = 0

View File

@ -0,0 +1,660 @@
-- 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()
_G._packer = _G._packer or {}
_G._packer.inside_compile = true
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
if threshold then
table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)')
end
_G._packer.profile_output = results
end
time([[Luarocks path setup]], true)
local package_path_str = "/home/mikec/.cache/nvim/packer_hererocks/2.1.1707061634/share/lua/5.1/?.lua;/home/mikec/.cache/nvim/packer_hererocks/2.1.1707061634/share/lua/5.1/?/init.lua;/home/mikec/.cache/nvim/packer_hererocks/2.1.1707061634/lib/luarocks/rocks-5.1/?.lua;/home/mikec/.cache/nvim/packer_hererocks/2.1.1707061634/lib/luarocks/rocks-5.1/?/init.lua"
local install_cpath_pattern = "/home/mikec/.cache/nvim/packer_hererocks/2.1.1707061634/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 = {
["Comment.nvim"] = {
config = { "\27LJ\2\n5\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\fComment\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/Comment.nvim",
url = "https://github.com/numToStr/Comment.nvim"
},
LuaSnip = {
config = { "\27LJ\2\nM\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\14lazy_load luasnip.loaders.from_vscode\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/LuaSnip",
url = "https://github.com/L3MON4D3/LuaSnip"
},
["alpha-nvim"] = {
config = { "\27LJ\2\n`\0\0\5\0\5\0\n6\0\0\0'\2\1\0B\0\2\0029\0\2\0006\2\0\0'\4\3\0B\2\2\0029\2\4\2B\0\2\1K\0\1\0\vconfig\26alpha.themes.startify\nsetup\nalpha\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/alpha-nvim",
url = "https://github.com/goolord/alpha-nvim"
},
["barbecue.nvim"] = {
config = { "\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rbarbecue\frequire\0" },
load_after = {},
loaded = true,
needs_bufread = false,
path = "/home/mikec/.local/share/nvim/site/pack/packer/opt/barbecue.nvim",
url = "https://github.com/utilyre/barbecue.nvim"
},
catppuccin = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/catppuccin",
url = "https://github.com/catppuccin/nvim"
},
["ccc.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/ccc.nvim",
url = "https://github.com/uga-rosa/ccc.nvim"
},
["cellular-automaton.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cellular-automaton.nvim",
url = "https://github.com/eandrju/cellular-automaton.nvim"
},
["cmd-parser.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmd-parser.nvim",
url = "https://github.com/winston0410/cmd-parser.nvim"
},
["cmp-buffer"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmp-buffer",
url = "https://github.com/hrsh7th/cmp-buffer"
},
["cmp-nvim-lsp"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
},
["cmp-nvim-lsp-signature-help"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help",
url = "https://github.com/hrsh7th/cmp-nvim-lsp-signature-help"
},
["cmp-nvim-lua"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmp-nvim-lua",
url = "https://github.com/hrsh7th/cmp-nvim-lua"
},
["cmp-path"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmp-path",
url = "https://github.com/hrsh7th/cmp-path"
},
cmp_luasnip = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/cmp_luasnip",
url = "https://github.com/saadparwaiz1/cmp_luasnip"
},
["compiler-explorer.nvim"] = {
config = { "\27LJ\2\nx\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\fautocmd\1\0\1\fautocmd\0\1\0\2\venable\2\ahl\15Cursorline\nsetup\22compiler-explorer\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/compiler-explorer.nvim",
url = "https://github.com/krady21/compiler-explorer.nvim"
},
["dim.lua"] = {
config = { "\27LJ\2\n5\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\bdim\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/dim.lua",
url = "https://github.com/0oAstro/dim.lua"
},
["dracula.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/dracula.nvim",
url = "https://github.com/Mofiqul/dracula.nvim"
},
["dressing.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/dressing.nvim",
url = "https://github.com/stevearc/dressing.nvim"
},
everblush = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/everblush",
url = "https://github.com/Everblush/nvim"
},
everforest = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/everforest",
url = "https://github.com/sainnhe/everforest"
},
["fennel.vim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/fennel.vim",
url = "https://github.com/jaawerth/fennel.vim"
},
["friendly-snippets"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/friendly-snippets",
url = "https://github.com/rafamadriz/friendly-snippets"
},
["github-colors"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/github-colors",
url = "https://github.com/lourenci/github-colors"
},
["github-nvim-theme"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/github-nvim-theme",
url = "https://github.com/projekt0n/github-nvim-theme"
},
["gitsigns.nvim"] = {
config = { "\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rgitsigns\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
url = "https://github.com/lewis6991/gitsigns.nvim"
},
["gruvbox-material"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/gruvbox-material",
url = "https://github.com/sainnhe/gruvbox-material"
},
["gruvbox.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/gruvbox.nvim",
url = "https://github.com/ellisonleao/gruvbox.nvim"
},
["indent-blankline.nvim"] = {
config = { "\27LJ\2\nY\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\nscope\1\0\1\nscope\0\1\0\1\fenabled\1\nsetup\bibl\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim",
url = "https://github.com/lukas-reineke/indent-blankline.nvim"
},
["leap.nvim"] = {
config = { "\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\25add_default_mappings\tleap\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/leap.nvim",
url = "https://github.com/ggandor/leap.nvim"
},
["lsp-zero.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/lsp-zero.nvim",
url = "https://github.com/VonHeikemen/lsp-zero.nvim"
},
["lualine.nvim"] = {
config = { "\27LJ\2\nº\1\0\0\n\0\f\0\0254\0\0\0006\1\0\0006\3\1\0009\3\2\0039\3\3\0035\5\4\0B\3\2\0A\1\0\4H\4\5€6\6\5\0009\6\6\6\18\b\0\0009\t\a\5B\6\3\1F\4\3\3R\4ù\127'\1\b\0006\2\5\0009\2\t\2\18\4\0\0'\5\n\0B\2\3\2'\3\v\0&\1\3\1L\1\2\0\6]\6 \vconcat\nï<EFBFBD>£ [\tname\vinsert\ntable\1\0\1\nbufnr\3\0\23get_active_clients\blsp\bvim\npairsÈ\5\1\0\b\0\29\0'3\0\0\0006\1\1\0'\3\2\0B\1\2\0029\1\3\0015\3\t\0005\4\4\0005\5\5\0=\5\6\0045\5\a\0=\5\b\4=\4\n\0035\4\14\0004\5\3\0005\6\v\0005\a\f\0=\a\r\6>\6\1\5=\5\15\0044\5\0\0=\5\16\0045\5\17\0=\5\18\0045\5\20\0>\0\1\0055\6\19\0>\6\2\5=\5\21\0045\5\22\0=\5\23\0045\5\24\0005\6\25\0005\a\26\0=\a\r\6>\6\2\5=\5\27\4=\4\28\3B\1\2\1K\0\1\0\rsections\14lualine_z\1\0\2\nright\bî‚´\tleft\b\1\2\1\0\rprogress\14separator\0\1\2\0\0\rlocation\14lualine_y\1\4\0\0\rencoding\15fileformat\rfiletype\14lualine_x\1\5\0\0\0\0\vbranch\tdiff\1\2\1\0\16diagnostics\18icons_enabled\2\14lualine_c\1\2\0\0\rfilename\14lualine_b\14lualine_a\1\0\6\14lualine_a\0\14lualine_y\0\14lualine_z\0\14lualine_x\0\14lualine_c\0\14lualine_b\0\14separator\1\0\2\nright\bî‚´\tleft\b\1\2\1\0\tmode\14separator\0\foptions\1\0\2\foptions\0\rsections\0\25component_separators\1\0\2\nright\5\tleft\5\23section_separators\1\0\2\nright\b\tleft\bî‚´\1\0\4\25component_separators\0\23section_separators\0\18icons_enabled\1\17globalstatus\2\nsetup\flualine\frequire\0\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/lualine.nvim",
url = "https://github.com/nvim-lualine/lualine.nvim"
},
["mason-lspconfig.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim",
url = "https://github.com/williamboman/mason-lspconfig.nvim"
},
["mason.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/mason.nvim",
url = "https://github.com/williamboman/mason.nvim"
},
["melange-nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/melange-nvim",
url = "https://github.com/savq/melange-nvim"
},
["mellow.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/mellow.nvim",
url = "https://github.com/kvrohit/mellow.nvim"
},
["monochrome.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/monochrome.nvim",
url = "https://github.com/kdheepak/monochrome.nvim"
},
["monokai.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/monokai.nvim",
url = "https://github.com/tanvirtin/monokai.nvim"
},
["moonlight.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/moonlight.nvim",
url = "https://github.com/shaunsingh/moonlight.nvim"
},
["moonscript-vim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/moonscript-vim",
url = "https://github.com/leafo/moonscript-vim"
},
["nabla.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nabla.nvim",
url = "https://github.com/jbyuki/nabla.nvim"
},
["nelua.vim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nelua.vim",
url = "https://github.com/stefanos82/nelua.vim"
},
["neodev.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/neodev.nvim",
url = "https://github.com/folke/neodev.nvim"
},
["nord.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nord.nvim",
url = "https://github.com/shaunsingh/nord.nvim"
},
["nvim-blame-line"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-blame-line",
url = "https://github.com/tveskag/nvim-blame-line"
},
["nvim-cmp"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-cmp",
url = "https://github.com/hrsh7th/nvim-cmp"
},
["nvim-dap"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-dap",
url = "https://github.com/mfussenegger/nvim-dap"
},
["nvim-dap-ui"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-dap-ui",
url = "https://github.com/rcarriga/nvim-dap-ui"
},
["nvim-jdtls"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-jdtls",
url = "https://github.com/mfussenegger/nvim-jdtls"
},
["nvim-lspconfig"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
url = "https://github.com/neovim/nvim-lspconfig"
},
["nvim-navic"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-navic",
url = "https://github.com/SmiteshP/nvim-navic"
},
["nvim-surround"] = {
config = { "\27LJ\2\n?\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\18nvim-surround\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-surround",
url = "https://github.com/kylechui/nvim-surround"
},
["nvim-treesitter"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
url = "https://github.com/nvim-treesitter/nvim-treesitter"
},
["nvim-ts-autotag"] = {
config = { "\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20nvim-ts-autotag\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-ts-autotag",
url = "https://github.com/windwp/nvim-ts-autotag"
},
["nvim-unception"] = {
loaded = true,
needs_bufread = false,
path = "/home/mikec/.local/share/nvim/site/pack/packer/opt/nvim-unception",
url = "https://github.com/samjwill/nvim-unception"
},
["nvim-web-devicons"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
url = "https://github.com/nvim-tree/nvim-web-devicons"
},
["oceanic-next"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/oceanic-next",
url = "https://github.com/mhartington/oceanic-next"
},
["one-nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/one-nvim",
url = "https://github.com/Th3Whit3Wolf/one-nvim"
},
["onedark.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/onedark.nvim",
url = "https://github.com/navarasu/onedark.nvim"
},
["packer.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/packer.nvim",
url = "https://github.com/wbthomason/packer.nvim"
},
["plantuml-syntax"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/plantuml-syntax",
url = "https://github.com/aklt/plantuml-syntax"
},
playground = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/playground",
url = "https://github.com/nvim-treesitter/playground"
},
["plenary.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/plenary.nvim",
url = "https://github.com/nvim-lua/plenary.nvim"
},
["range-highlight.nvim"] = {
config = { "\27LJ\2\nA\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\20range-highlight\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/range-highlight.nvim",
url = "https://github.com/winston0410/range-highlight.nvim"
},
["rose-pine"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/rose-pine",
url = "https://github.com/rose-pine/neovim"
},
["sherbet.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/sherbet.nvim",
url = "https://github.com/lewpoly/sherbet.nvim"
},
["telescope-recent-files"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/telescope-recent-files",
url = "https://github.com/smartpde/telescope-recent-files"
},
["telescope-tabs"] = {
config = { "\27LJ\2\n@\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\19telescope-tabs\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/telescope-tabs",
url = "https://github.com/LukasPietzschmann/telescope-tabs"
},
["telescope.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/telescope.nvim",
url = "https://github.com/nvim-telescope/telescope.nvim"
},
["tokyonight.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/tokyonight.nvim",
url = "https://github.com/folke/tokyonight.nvim"
},
["twilight.nvim"] = {
config = { "\27LJ\2\n:\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\rtwilight\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/twilight.nvim",
url = "https://github.com/folke/twilight.nvim"
},
["v-vim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/v-vim",
url = "https://github.com/ollykel/v-vim"
},
["vim-colors-xcode"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/vim-colors-xcode",
url = "https://github.com/arzg/vim-colors-xcode"
},
["vim-dadbod"] = {
after = { "vim-dadbod-ui", "vim-dadbod-completion" },
commands = { "DBUIToggle", "DBUI", "DBUIAddConnection", "DBUIFindBuffer", "DBUIRenameBuffer", "DBUILastQueryInfo" },
config = { "\27LJ\2\n;\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\18config.dadbod\frequire\0" },
loaded = false,
needs_bufread = false,
only_cond = false,
path = "/home/mikec/.local/share/nvim/site/pack/packer/opt/vim-dadbod",
url = "https://github.com/tpope/vim-dadbod"
},
["vim-dadbod-completion"] = {
after_files = { "/home/mikec/.local/share/nvim/site/pack/packer/opt/vim-dadbod-completion/after/plugin/vim_dadbod_completion.lua", "/home/mikec/.local/share/nvim/site/pack/packer/opt/vim-dadbod-completion/after/plugin/vim_dadbod_completion.vim" },
load_after = {
["vim-dadbod"] = true
},
loaded = false,
needs_bufread = false,
path = "/home/mikec/.local/share/nvim/site/pack/packer/opt/vim-dadbod-completion",
url = "https://github.com/kristijanhusak/vim-dadbod-completion"
},
["vim-dadbod-ui"] = {
load_after = {
["vim-dadbod"] = true
},
loaded = false,
needs_bufread = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/opt/vim-dadbod-ui",
url = "https://github.com/kristijanhusak/vim-dadbod-ui"
},
["vim-etlua"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/vim-etlua",
url = "https://github.com/VaiN474/vim-etlua"
},
["vim-illuminate"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/vim-illuminate",
url = "https://github.com/RRethy/vim-illuminate"
},
["vim-teal"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/vim-teal",
url = "https://github.com/teal-language/vim-teal"
},
["vscode.nvim"] = {
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/vscode.nvim",
url = "https://github.com/Mofiqul/vscode.nvim"
},
["web-tools.nvim"] = {
config = { "\27LJ\2\n7\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\14web-tools\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/web-tools.nvim",
url = "https://github.com/ray-x/web-tools.nvim"
},
["workspaces.nvim"] = {
config = { "\27LJ\2\n8\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\15workspaces\frequire\0" },
loaded = true,
path = "/home/mikec/.local/share/nvim/site/pack/packer/start/workspaces.nvim",
url = "https://github.com/natecraddock/workspaces.nvim"
}
}
time([[Defining packer_plugins]], false)
-- Setup for: nvim-unception
time([[Setup for nvim-unception]], true)
try_loadstring("\27LJ\2\n\v\0\0\1\0\0\0\1K\0\1\0\0", "setup", "nvim-unception")
time([[Setup for nvim-unception]], false)
time([[packadd for nvim-unception]], true)
vim.cmd [[packadd nvim-unception]]
time([[packadd for nvim-unception]], false)
-- Config for: indent-blankline.nvim
time([[Config for indent-blankline.nvim]], true)
try_loadstring("\27LJ\2\nY\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\nscope\1\0\1\nscope\0\1\0\1\fenabled\1\nsetup\bibl\frequire\0", "config", "indent-blankline.nvim")
time([[Config for indent-blankline.nvim]], false)
-- Config for: lualine.nvim
time([[Config for lualine.nvim]], true)
try_loadstring("\27LJ\2\nº\1\0\0\n\0\f\0\0254\0\0\0006\1\0\0006\3\1\0009\3\2\0039\3\3\0035\5\4\0B\3\2\0A\1\0\4H\4\5€6\6\5\0009\6\6\6\18\b\0\0009\t\a\5B\6\3\1F\4\3\3R\4ù\127'\1\b\0006\2\5\0009\2\t\2\18\4\0\0'\5\n\0B\2\3\2'\3\v\0&\1\3\1L\1\2\0\6]\6 \vconcat\nï<EFBFBD>£ [\tname\vinsert\ntable\1\0\1\nbufnr\3\0\23get_active_clients\blsp\bvim\npairsÈ\5\1\0\b\0\29\0'3\0\0\0006\1\1\0'\3\2\0B\1\2\0029\1\3\0015\3\t\0005\4\4\0005\5\5\0=\5\6\0045\5\a\0=\5\b\4=\4\n\0035\4\14\0004\5\3\0005\6\v\0005\a\f\0=\a\r\6>\6\1\5=\5\15\0044\5\0\0=\5\16\0045\5\17\0=\5\18\0045\5\20\0>\0\1\0055\6\19\0>\6\2\5=\5\21\0045\5\22\0=\5\23\0045\5\24\0005\6\25\0005\a\26\0=\a\r\6>\6\2\5=\5\27\4=\4\28\3B\1\2\1K\0\1\0\rsections\14lualine_z\1\0\2\nright\bî‚´\tleft\b\1\2\1\0\rprogress\14separator\0\1\2\0\0\rlocation\14lualine_y\1\4\0\0\rencoding\15fileformat\rfiletype\14lualine_x\1\5\0\0\0\0\vbranch\tdiff\1\2\1\0\16diagnostics\18icons_enabled\2\14lualine_c\1\2\0\0\rfilename\14lualine_b\14lualine_a\1\0\6\14lualine_a\0\14lualine_y\0\14lualine_z\0\14lualine_x\0\14lualine_c\0\14lualine_b\0\14separator\1\0\2\nright\bî‚´\tleft\b\1\2\1\0\tmode\14separator\0\foptions\1\0\2\foptions\0\rsections\0\25component_separators\1\0\2\nright\5\tleft\5\23section_separators\1\0\2\nright\b\tleft\bî‚´\1\0\4\25component_separators\0\23section_separators\0\18icons_enabled\1\17globalstatus\2\nsetup\flualine\frequire\0\0", "config", "lualine.nvim")
time([[Config for lualine.nvim]], false)
-- Config for: alpha-nvim
time([[Config for alpha-nvim]], true)
try_loadstring("\27LJ\2\n`\0\0\5\0\5\0\n6\0\0\0'\2\1\0B\0\2\0029\0\2\0006\2\0\0'\4\3\0B\2\2\0029\2\4\2B\0\2\1K\0\1\0\vconfig\26alpha.themes.startify\nsetup\nalpha\frequire\0", "config", "alpha-nvim")
time([[Config for alpha-nvim]], false)
-- Config for: web-tools.nvim
time([[Config for web-tools.nvim]], true)
try_loadstring("\27LJ\2\n7\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\14web-tools\frequire\0", "config", "web-tools.nvim")
time([[Config for web-tools.nvim]], false)
-- Config for: leap.nvim
time([[Config for leap.nvim]], true)
try_loadstring("\27LJ\2\nA\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\25add_default_mappings\tleap\frequire\0", "config", "leap.nvim")
time([[Config for leap.nvim]], false)
-- Config for: gitsigns.nvim
time([[Config for gitsigns.nvim]], true)
try_loadstring("\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rgitsigns\frequire\0", "config", "gitsigns.nvim")
time([[Config for gitsigns.nvim]], false)
-- Config for: telescope-tabs
time([[Config for telescope-tabs]], true)
try_loadstring("\27LJ\2\n@\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\19telescope-tabs\frequire\0", "config", "telescope-tabs")
time([[Config for telescope-tabs]], false)
-- Config for: compiler-explorer.nvim
time([[Config for compiler-explorer.nvim]], true)
try_loadstring("\27LJ\2\nx\0\0\4\0\6\0\t6\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\4\0005\3\3\0=\3\5\2B\0\2\1K\0\1\0\fautocmd\1\0\1\fautocmd\0\1\0\2\venable\2\ahl\15Cursorline\nsetup\22compiler-explorer\frequire\0", "config", "compiler-explorer.nvim")
time([[Config for compiler-explorer.nvim]], false)
-- Config for: Comment.nvim
time([[Config for Comment.nvim]], true)
try_loadstring("\27LJ\2\n5\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\fComment\frequire\0", "config", "Comment.nvim")
time([[Config for Comment.nvim]], false)
-- Config for: nvim-ts-autotag
time([[Config for nvim-ts-autotag]], true)
try_loadstring("\27LJ\2\n=\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\20nvim-ts-autotag\frequire\0", "config", "nvim-ts-autotag")
time([[Config for nvim-ts-autotag]], false)
-- Config for: range-highlight.nvim
time([[Config for range-highlight.nvim]], true)
try_loadstring("\27LJ\2\nA\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\20range-highlight\frequire\0", "config", "range-highlight.nvim")
time([[Config for range-highlight.nvim]], false)
-- Config for: dim.lua
time([[Config for dim.lua]], true)
try_loadstring("\27LJ\2\n5\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\bdim\frequire\0", "config", "dim.lua")
time([[Config for dim.lua]], false)
-- Config for: LuaSnip
time([[Config for LuaSnip]], true)
try_loadstring("\27LJ\2\nM\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\14lazy_load luasnip.loaders.from_vscode\frequire\0", "config", "LuaSnip")
time([[Config for LuaSnip]], false)
-- Config for: nvim-surround
time([[Config for nvim-surround]], true)
try_loadstring("\27LJ\2\n?\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\18nvim-surround\frequire\0", "config", "nvim-surround")
time([[Config for nvim-surround]], false)
-- Config for: workspaces.nvim
time([[Config for workspaces.nvim]], true)
try_loadstring("\27LJ\2\n8\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\15workspaces\frequire\0", "config", "workspaces.nvim")
time([[Config for workspaces.nvim]], false)
-- Config for: twilight.nvim
time([[Config for twilight.nvim]], true)
try_loadstring("\27LJ\2\n:\0\0\3\0\3\0\a6\0\0\0'\2\1\0B\0\2\0029\0\2\0004\2\0\0B\0\2\1K\0\1\0\nsetup\rtwilight\frequire\0", "config", "twilight.nvim")
time([[Config for twilight.nvim]], false)
-- Load plugins in order defined by `after`
time([[Sequenced loading]], true)
vim.cmd [[ packadd nvim-web-devicons ]]
vim.cmd [[ packadd barbecue.nvim ]]
-- Config for: barbecue.nvim
try_loadstring("\27LJ\2\n6\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\rbarbecue\frequire\0", "config", "barbecue.nvim")
time([[Sequenced loading]], false)
-- Command lazy-loads
time([[Defining lazy-load commands]], true)
pcall(vim.api.nvim_create_user_command, 'DBUIRenameBuffer', function(cmdargs)
require('packer.load')({'vim-dadbod'}, { cmd = 'DBUIRenameBuffer', l1 = cmdargs.line1, l2 = cmdargs.line2, bang = cmdargs.bang, args = cmdargs.args, mods = cmdargs.mods }, _G.packer_plugins)
end,
{nargs = '*', range = true, bang = true, complete = function()
require('packer.load')({'vim-dadbod'}, {}, _G.packer_plugins)
return vim.fn.getcompletion('DBUIRenameBuffer ', 'cmdline')
end})
pcall(vim.api.nvim_create_user_command, 'DBUILastQueryInfo', function(cmdargs)
require('packer.load')({'vim-dadbod'}, { cmd = 'DBUILastQueryInfo', l1 = cmdargs.line1, l2 = cmdargs.line2, bang = cmdargs.bang, args = cmdargs.args, mods = cmdargs.mods }, _G.packer_plugins)
end,
{nargs = '*', range = true, bang = true, complete = function()
require('packer.load')({'vim-dadbod'}, {}, _G.packer_plugins)
return vim.fn.getcompletion('DBUILastQueryInfo ', 'cmdline')
end})
pcall(vim.api.nvim_create_user_command, 'DBUIToggle', function(cmdargs)
require('packer.load')({'vim-dadbod'}, { cmd = 'DBUIToggle', l1 = cmdargs.line1, l2 = cmdargs.line2, bang = cmdargs.bang, args = cmdargs.args, mods = cmdargs.mods }, _G.packer_plugins)
end,
{nargs = '*', range = true, bang = true, complete = function()
require('packer.load')({'vim-dadbod'}, {}, _G.packer_plugins)
return vim.fn.getcompletion('DBUIToggle ', 'cmdline')
end})
pcall(vim.api.nvim_create_user_command, 'DBUI', function(cmdargs)
require('packer.load')({'vim-dadbod'}, { cmd = 'DBUI', l1 = cmdargs.line1, l2 = cmdargs.line2, bang = cmdargs.bang, args = cmdargs.args, mods = cmdargs.mods }, _G.packer_plugins)
end,
{nargs = '*', range = true, bang = true, complete = function()
require('packer.load')({'vim-dadbod'}, {}, _G.packer_plugins)
return vim.fn.getcompletion('DBUI ', 'cmdline')
end})
pcall(vim.api.nvim_create_user_command, 'DBUIAddConnection', function(cmdargs)
require('packer.load')({'vim-dadbod'}, { cmd = 'DBUIAddConnection', l1 = cmdargs.line1, l2 = cmdargs.line2, bang = cmdargs.bang, args = cmdargs.args, mods = cmdargs.mods }, _G.packer_plugins)
end,
{nargs = '*', range = true, bang = true, complete = function()
require('packer.load')({'vim-dadbod'}, {}, _G.packer_plugins)
return vim.fn.getcompletion('DBUIAddConnection ', 'cmdline')
end})
pcall(vim.api.nvim_create_user_command, 'DBUIFindBuffer', function(cmdargs)
require('packer.load')({'vim-dadbod'}, { cmd = 'DBUIFindBuffer', l1 = cmdargs.line1, l2 = cmdargs.line2, bang = cmdargs.bang, args = cmdargs.args, mods = cmdargs.mods }, _G.packer_plugins)
end,
{nargs = '*', range = true, bang = true, complete = function()
require('packer.load')({'vim-dadbod'}, {}, _G.packer_plugins)
return vim.fn.getcompletion('DBUIFindBuffer ', 'cmdline')
end})
time([[Defining lazy-load commands]], false)
_G._packer.inside_compile = false
if _G._packer.needs_bufread == true then
vim.cmd("doautocmd BufRead")
end
_G._packer.needs_bufread = 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

8
.config/pavucontrol.ini Normal file
View File

@ -0,0 +1,8 @@
[window]
width=640
height=400
sinkInputType=1
sourceOutputType=1
sinkType=0
sourceType=1
showVolumeMeters=1

BIN
.config/pulse/cookie Normal file

Binary file not shown.

477
.config/ranger/scope.sh Executable file
View File

@ -0,0 +1,477 @@
#!/bin/bash
set -o noclobber -o noglob -o nounset -o pipefail
IFS=$'\n'
## If the option `use_preview_script` is set to `true`,
## then this script will be called and its output will be displayed in ranger.
## ANSI color codes are supported.
## STDIN is disabled, so interactive scripts won't work properly
## This script is considered a configuration file and must be updated manually.
## It will be left untouched if you upgrade ranger.
## Because of some automated testing we do on the script #'s for comments need
## to be doubled up. Code that is commented out, because it's an alternative for
## example, gets only one #.
## Meanings of exit codes:
## code | meaning | action of ranger
## -----+------------+-------------------------------------------
## 0 | success | Display stdout as preview
## 1 | no preview | Display no preview at all
## 2 | plain text | Display the plain content of the file
## 3 | fix width | Don't reload when width changes
## 4 | fix height | Don't reload when height changes
## 5 | fix both | Don't ever reload
## 6 | image | Display the image `$IMAGE_CACHE_PATH` points to as an image preview
## 7 | image | Display the file directly as an image
## Script arguments
FILE_PATH="${1}" # Full path of the highlighted file
PV_WIDTH="${2}" # Width of the preview pane (number of fitting characters)
## shellcheck disable=SC2034 # PV_HEIGHT is provided for convenience and unused
PV_HEIGHT="${3}" # Height of the preview pane (number of fitting characters)
IMAGE_CACHE_PATH="${4}" # Full path that should be used to cache image preview
PV_IMAGE_ENABLED="${5}" # 'True' if image previews are enabled, 'False' otherwise.
FILE_EXTENSION="${FILE_PATH##*.}"
FILE_EXTENSION_LOWER="$(printf "%s" "${FILE_EXTENSION}" | tr '[:upper:]' '[:lower:]')"
## Settings
HIGHLIGHT_SIZE_MAX=262143 # 256KiB
HIGHLIGHT_TABWIDTH="${HIGHLIGHT_TABWIDTH:-8}"
HIGHLIGHT_STYLE="${HIGHLIGHT_STYLE:-pablo}"
HIGHLIGHT_OPTIONS="--replace-tabs=${HIGHLIGHT_TABWIDTH} --style=${HIGHLIGHT_STYLE} ${HIGHLIGHT_OPTIONS:-}"
PYGMENTIZE_STYLE="${PYGMENTIZE_STYLE:-autumn}"
BAT_STYLE="${BAT_STYLE:-plain}"
OPENSCAD_IMGSIZE="${RNGR_OPENSCAD_IMGSIZE:-1000,1000}"
OPENSCAD_COLORSCHEME="${RNGR_OPENSCAD_COLORSCHEME:-Tomorrow Night}"
SQLITE_TABLE_LIMIT=20 # Display only the top <limit> tables in database, set to 0 for no exhaustive preview (only the sqlite_master table is displayed).
SQLITE_ROW_LIMIT=5 # Display only the first and the last (<limit> - 1) records in each table, set to 0 for no limits.
handle_extension() {
case "${FILE_EXTENSION_LOWER}" in
## Archive
a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\
rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)
atool --list -- "${FILE_PATH}" && exit 5
bsdtar --list --file "${FILE_PATH}" && exit 5
exit 1;;
rar)
## Avoid password prompt by providing empty password
unrar lt -p- -- "${FILE_PATH}" && exit 5
exit 1;;
7z)
## Avoid password prompt by providing empty password
7z l -p -- "${FILE_PATH}" && exit 5
exit 1;;
## PDF
pdf)
## Preview as text conversion
pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | \
fmt -w "${PV_WIDTH}" && exit 5
mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | \
fmt -w "${PV_WIDTH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## BitTorrent
torrent)
transmission-show -- "${FILE_PATH}" && exit 5
exit 1;;
## OpenDocument
odt|sxw)
## Preview as text conversion
odt2txt "${FILE_PATH}" && exit 5
## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
exit 1;;
ods|odp)
## Preview as text conversion (unsupported by pandoc for markdown)
odt2txt "${FILE_PATH}" && exit 5
exit 1;;
## XLSX
xlsx)
## Preview as csv conversion
## Uses: https://github.com/dilshod/xlsx2csv
xlsx2csv -- "${FILE_PATH}" && exit 5
exit 1;;
## HTML
htm|html|xhtml)
## Preview as text conversion
w3m -dump "${FILE_PATH}" && exit 5
lynx -dump -- "${FILE_PATH}" && exit 5
elinks -dump "${FILE_PATH}" && exit 5
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
;;
## JSON
json)
jq --color-output . "${FILE_PATH}" && exit 5
python -m json.tool -- "${FILE_PATH}" && exit 5
;;
## Jupyter Notebooks
ipynb)
jupyter nbconvert --to markdown "${FILE_PATH}" --stdout | env COLORTERM=8bit bat --color=always --style=plain --language=markdown && exit 5
jupyter nbconvert --to markdown "${FILE_PATH}" --stdout && exit 5
jq --color-output . "${FILE_PATH}" && exit 5
python -m json.tool -- "${FILE_PATH}" && exit 5
;;
## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected
## by file(1).
dff|dsf|wv|wvc)
mediainfo "${FILE_PATH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
;; # Continue with next handler on failure
esac
}
handle_image() {
## Size of the preview if there are multiple options or it has to be
## rendered from vector graphics. If the conversion program allows
## specifying only one dimension while keeping the aspect ratio, the width
## will be used.
local DEFAULT_SIZE="1920x1080"
local mimetype="${1}"
case "${mimetype}" in
## SVG
image/svg+xml|image/svg)
rsvg-convert --keep-aspect-ratio --width "${DEFAULT_SIZE%x*}" "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}.png" \
&& mv "${IMAGE_CACHE_PATH}.png" "${IMAGE_CACHE_PATH}" \
&& exit 6
exit 1;;
## DjVu
image/vnd.djvu)
ddjvu -format=tiff -quality=90 -page=1 -size="${DEFAULT_SIZE}" \
- "${IMAGE_CACHE_PATH}" < "${FILE_PATH}" \
&& exit 6 || exit 1;;
## Image
image/*)
local orientation
orientation="$( identify -format '%[EXIF:Orientation]\n' -- "${FILE_PATH}" )"
## If orientation data is present and the image actually
## needs rotating ("1" means no rotation)...
if [[ -n "$orientation" && "$orientation" != 1 ]]; then
## ...auto-rotate the image according to the EXIF data.
convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6
fi
## `w3mimgdisplay` will be called for all images (unless overridden
## as above), but might fail for unsupported types.
exit 7;;
## Video
# video/*)
# # Get embedded thumbnail
# ffmpeg -i "${FILE_PATH}" -map 0:v -map -0:V -c copy "${IMAGE_CACHE_PATH}" && exit 6
# # Get frame 10% into video
# ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6
# exit 1;;
## Audio
# audio/*)
# # Get embedded thumbnail
# ffmpeg -i "${FILE_PATH}" -map 0:v -map -0:V -c copy \
# "${IMAGE_CACHE_PATH}" && exit 6;;
## PDF
# application/pdf)
# pdftoppm -f 1 -l 1 \
# -scale-to-x "${DEFAULT_SIZE%x*}" \
# -scale-to-y -1 \
# -singlefile \
# -jpeg -tiffcompression jpeg \
# -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \
# && exit 6 || exit 1;;
## ePub, MOBI, FB2 (using Calibre)
# application/epub+zip|application/x-mobipocket-ebook|\
# application/x-fictionbook+xml)
# # ePub (using https://github.com/marianosimone/epub-thumbnailer)
# epub-thumbnailer "${FILE_PATH}" "${IMAGE_CACHE_PATH}" \
# "${DEFAULT_SIZE%x*}" && exit 6
# ebook-meta --get-cover="${IMAGE_CACHE_PATH}" -- "${FILE_PATH}" \
# >/dev/null && exit 6
# exit 1;;
## Font
application/font*|application/*opentype)
preview_png="/tmp/$(basename "${IMAGE_CACHE_PATH%.*}").png"
if fontimage -o "${preview_png}" \
--pixelsize "120" \
--fontname \
--pixelsize "80" \
--text " ABCDEFGHIJKLMNOPQRSTUVWXYZ " \
--text " abcdefghijklmnopqrstuvwxyz " \
--text " 0123456789.:,;(*!?') ff fl fi ffi ffl " \
--text " The quick brown fox jumps over the lazy dog. " \
"${FILE_PATH}";
then
convert -- "${preview_png}" "${IMAGE_CACHE_PATH}" \
&& rm "${preview_png}" \
&& exit 6
else
exit 1
fi
;;
## Preview archives using the first image inside.
## (Very useful for comic book collections for example.)
# application/zip|application/x-rar|application/x-7z-compressed|\
# application/x-xz|application/x-bzip2|application/x-gzip|application/x-tar)
# local fn=""; local fe=""
# local zip=""; local rar=""; local tar=""; local bsd=""
# case "${mimetype}" in
# application/zip) zip=1 ;;
# application/x-rar) rar=1 ;;
# application/x-7z-compressed) ;;
# *) tar=1 ;;
# esac
# { [ "$tar" ] && fn=$(tar --list --file "${FILE_PATH}"); } || \
# { fn=$(bsdtar --list --file "${FILE_PATH}") && bsd=1 && tar=""; } || \
# { [ "$rar" ] && fn=$(unrar lb -p- -- "${FILE_PATH}"); } || \
# { [ "$zip" ] && fn=$(zipinfo -1 -- "${FILE_PATH}"); } || return
#
# fn=$(echo "$fn" | python -c "from __future__ import print_function; \
# import sys; import mimetypes as m; \
# [ print(l, end='') for l in sys.stdin if \
# (m.guess_type(l[:-1])[0] or '').startswith('image/') ]" |\
# sort -V | head -n 1)
# [ "$fn" = "" ] && return
# [ "$bsd" ] && fn=$(printf '%b' "$fn")
#
# [ "$tar" ] && tar --extract --to-stdout \
# --file "${FILE_PATH}" -- "$fn" > "${IMAGE_CACHE_PATH}" && exit 6
# fe=$(echo -n "$fn" | sed 's/[][*?\]/\\\0/g')
# [ "$bsd" ] && bsdtar --extract --to-stdout \
# --file "${FILE_PATH}" -- "$fe" > "${IMAGE_CACHE_PATH}" && exit 6
# [ "$bsd" ] || [ "$tar" ] && rm -- "${IMAGE_CACHE_PATH}"
# [ "$rar" ] && unrar p -p- -inul -- "${FILE_PATH}" "$fn" > \
# "${IMAGE_CACHE_PATH}" && exit 6
# [ "$zip" ] && unzip -pP "" -- "${FILE_PATH}" "$fe" > \
# "${IMAGE_CACHE_PATH}" && exit 6
# [ "$rar" ] || [ "$zip" ] && rm -- "${IMAGE_CACHE_PATH}"
# ;;
esac
# openscad_image() {
# TMPPNG="$(mktemp -t XXXXXX.png)"
# openscad --colorscheme="${OPENSCAD_COLORSCHEME}" \
# --imgsize="${OPENSCAD_IMGSIZE/x/,}" \
# -o "${TMPPNG}" "${1}"
# mv "${TMPPNG}" "${IMAGE_CACHE_PATH}"
# }
case "${FILE_EXTENSION_LOWER}" in
## 3D models
## OpenSCAD only supports png image output, and ${IMAGE_CACHE_PATH}
## is hardcoded as jpeg. So we make a tempfile.png and just
## move/rename it to jpg. This works because image libraries are
## smart enough to handle it.
# csg|scad)
# openscad_image "${FILE_PATH}" && exit 6
# ;;
# 3mf|amf|dxf|off|stl)
# openscad_image <(echo "import(\"${FILE_PATH}\");") && exit 6
# ;;
drawio)
draw.io -x "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" \
--width "${DEFAULT_SIZE%x*}" && exit 6
exit 1;;
esac
}
handle_mime() {
local mimetype="${1}"
case "${mimetype}" in
## RTF and DOC
text/rtf|*msword)
## Preview as text conversion
## note: catdoc does not always work for .doc files
## catdoc: http://www.wagner.pp.ru/~vitus/software/catdoc/
catdoc -- "${FILE_PATH}" && exit 5
exit 1;;
## DOCX, ePub, FB2 (using markdown)
## You might want to remove "|epub" and/or "|fb2" below if you have
## uncommented other methods to preview those formats
*wordprocessingml.document|*/epub+zip|*/x-fictionbook+xml)
## Preview as markdown conversion
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
exit 1;;
## E-mails
message/rfc822)
## Parsing performed by mu: https://github.com/djcb/mu
mu view -- "${FILE_PATH}" && exit 5
exit 1;;
## XLS
*ms-excel)
## Preview as csv conversion
## xls2csv comes with catdoc:
## http://www.wagner.pp.ru/~vitus/software/catdoc/
xls2csv -- "${FILE_PATH}" && exit 5
exit 1;;
## SQLite
*sqlite3)
## Preview as text conversion
sqlite_tables="$( sqlite3 "file:${FILE_PATH}?mode=ro" '.tables' )" \
|| exit 1
[ -z "${sqlite_tables}" ] &&
{ echo "Empty SQLite database." && exit 5; }
sqlite_show_query() {
sqlite-utils query "${FILE_PATH}" "${1}" --table --fmt fancy_grid \
|| sqlite3 "file:${FILE_PATH}?mode=ro" "${1}" -header -column
}
## Display basic table information
sqlite_rowcount_query="$(
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
'SELECT group_concat(
"SELECT """ || name || """ AS tblname,
count(*) AS rowcount
FROM " || name,
" UNION ALL "
)
FROM sqlite_master
WHERE type="table" AND name NOT LIKE "sqlite_%";'
)"
sqlite_show_query \
"SELECT tblname AS 'table', rowcount AS 'count',
(
SELECT '(' || group_concat(name, ', ') || ')'
FROM pragma_table_info(tblname)
) AS 'columns',
(
SELECT '(' || group_concat(
upper(type) || (
CASE WHEN pk > 0 THEN ' PRIMARY KEY' ELSE '' END
),
', '
) || ')'
FROM pragma_table_info(tblname)
) AS 'types'
FROM (${sqlite_rowcount_query});"
if [ "${SQLITE_TABLE_LIMIT}" -gt 0 ] &&
[ "${SQLITE_ROW_LIMIT}" -ge 0 ]; then
## Do exhaustive preview
echo && printf '>%.0s' $( seq "${PV_WIDTH}" ) && echo
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
"SELECT name FROM sqlite_master
WHERE type='table' AND name NOT LIKE 'sqlite_%'
LIMIT ${SQLITE_TABLE_LIMIT};" |
while read -r sqlite_table; do
sqlite_rowcount="$(
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
"SELECT count(*) FROM ${sqlite_table}"
)"
echo
if [ "${SQLITE_ROW_LIMIT}" -gt 0 ] &&
[ "${SQLITE_ROW_LIMIT}" \
-lt "${sqlite_rowcount}" ]; then
echo "${sqlite_table} [${SQLITE_ROW_LIMIT} of ${sqlite_rowcount}]:"
sqlite_ellipsis_query="$(
sqlite3 "file:${FILE_PATH}?mode=ro" -noheader \
"SELECT 'SELECT ' || group_concat(
'''...''', ', '
)
FROM pragma_table_info(
'${sqlite_table}'
);"
)"
sqlite_show_query \
"SELECT * FROM (
SELECT * FROM ${sqlite_table} LIMIT 1
)
UNION ALL ${sqlite_ellipsis_query} UNION ALL
SELECT * FROM (
SELECT * FROM ${sqlite_table}
LIMIT (${SQLITE_ROW_LIMIT} - 1)
OFFSET (
${sqlite_rowcount}
- (${SQLITE_ROW_LIMIT} - 1)
)
);"
else
echo "${sqlite_table} [${sqlite_rowcount}]:"
sqlite_show_query "SELECT * FROM ${sqlite_table};"
fi
done
fi
exit 5;;
## Text
text/* | */xml)
## Syntax highlight
if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then
exit 2
fi
if [[ "$( tput colors )" -ge 256 ]]; then
local pygmentize_format='terminal'
local highlight_format='ansi'
else
local pygmentize_format='terminal'
local highlight_format='ansi'
fi
env HIGHLIGHT_OPTIONS="${HIGHLIGHT_OPTIONS}" highlight \
--out-format="${highlight_format}" \
--force -- "${FILE_PATH}" && exit 5
env COLORTERM=8bit bat --color=always --style="${BAT_STYLE}" \
-- "${FILE_PATH}" && exit 5
pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}"\
-- "${FILE_PATH}" && exit 5
exit 2;;
## DjVu
image/vnd.djvu)
## Preview as text conversion (requires djvulibre)
djvutxt "${FILE_PATH}" | fmt -w "${PV_WIDTH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## Image
image/*)
## Preview as text conversion
# img2txt --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## Video and audio
video/* | audio/*)
mediainfo "${FILE_PATH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
## ELF files (executables and shared objects)
application/x-executable | application/x-pie-executable | application/x-sharedlib)
readelf -WCa "${FILE_PATH}" && exit 5
exit 1;;
esac
}
handle_fallback() {
echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5
}
MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )"
if [[ "${PV_IMAGE_ENABLED}" == 'True' ]]; then
handle_image "${MIMETYPE}"
fi
handle_extension
handle_mime "${MIMETYPE}"
handle_fallback
exit 1

View File

@ -0,0 +1,17 @@
[[items]]
path = "https://github.com/tinted-theming/tinted-shell"
name = "base16-shell"
themes-dir = "scripts"
hook = ". %f"
[[items]]
path = "https://github.com/tinted-theming/tinted-tmux"
name = "tinted-tmux"
# Check if tmux is in use and if it is, reload the config file
hook = "test -n \"$TMUX\" && tmux source-file ~/.tmux.conf"
themes-dir = "colors"
[[items]]
path = "https://github.com/tinted-theming/tinted-fzf"
name = "tinted-fzf"
themes-dir = "sh"

144
.doom.d_/config.el Normal file
View File

@ -0,0 +1,144 @@
;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
;; Place your private configuration here! Remember, you do not need to run 'doom
;; sync' after modifying this file!
;; Some functionality uses this to identify you, e.g. GPG configuration, email
;; clients, file templates and snippets. It is optional.
;; (setq user-full-name "John Doe"
;; user-mail-address "john@doe.com")
;; Doom exposes five (optional) variables for controlling fonts in Doom:
;;
;; - `doom-font' -- the primary font to use
;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
;; presentations or streaming.
;; - `doom-symbol-font' -- for symbols
;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
;;
;; See 'C-h v doom-font' for documentation and more examples of what they
;; accept. For example:
;;
(setq doom-font (font-spec :family "Cascadia Code" :size 16)
doom-variable-pitch-font (font-spec :family "Cascadia Code" :size 16))
;;
;; If you or Emacs can't find your font, use 'M-x describe-font' to look them
;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to
;; refresh your font settings. If Emacs still can't find your font, it likely
;; wasn't installed correctly. Font issues are rarely Doom issues!
;; There are two ways to load a theme. Both assume the theme is installed and
;; available. You can either set `doom-theme' or manually load a theme with the
;; `load-theme' function. This is the default:
(setq doom-theme 'doom-monokai-classic)
;; This determines the style of line numbers in effect. If set to `nil', line
;; numbers are disabled. For relative line numbers, set this to `relative'.
(setq display-line-numbers-type 'relative)
;; If you use `org' and don't want your org files in the default location below,
;; change `org-directory'. It must be set before org loads!
(setq org-directory "~/org/")
;; Whenever you reconfigure a package, make sure to wrap your config in an
;; `after!' block, otherwise Doom's defaults may override your settings. E.g.
;;
;; (after! PACKAGE
;; (setq x y))
;;
;; The exceptions to this rule:
;;
;; - Setting file/directory variables (like `org-directory')
;; - Setting variables which explicitly tell you to set them before their
;; package is loaded (see 'C-h v VARIABLE' to look up their documentation).
;; - Setting doom variables (which start with 'doom-' or '+').
;;
;; Here are some additional functions/macros that will help you configure Doom.
;;
;; - `load!' for loading external *.el files relative to this one
;; - `use-package!' for configuring packages
;; - `after!' for running code after a package has loaded
;; - `add-load-path!' for adding directories to the `load-path', relative to
;; this file. Emacs searches the `load-path' when you load packages with
;; `require' or `use-package'.
;; - `map!' for binding new keys
;;
;; To get information about any of these functions/macros, move the cursor over
;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
;; This will open documentation for it, including demos of how they are used.
;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces,
;; etc).
;;
;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
;; they are implemented.
(setq elfeed-feeds
'(("https://phaazon.net/blog/feed")
("https://danielde.dev/rss.xml")
("https://sizeof.cat/index.xml")
("https://lukesmith.xyz/rss.xml")
("https://api.substack.com/feed/podcast/462466.rss")
("https://www.dailywire.com/feeds/rss.xml")
("https://feeds.simplecast.com/6c2VScgo")
("https://feeds.simplecast.com/pp_b9xO6")
("https://notrelated.xyz/rss")))
(setq elfeed-summary-settings
'((group
(:title . "Feeds")
(:elements
(query . :all)))))
(after! elfeed
(setq elfeed-search-filter ""))
(after! elfeed-summary
(setq elfeed-summary-default-filter ""))
(add-hook 'elfeed-summary-mode-hook
(lambda ()
(define-key elfeed-summary-mode-map
(kbd "RET")
'elfeed-summary--action-show-read)
(define-key elfeed-summary-mode-map
(kbd "<normal-state>RET")
'elfeed-summary--action-show-read)
(define-key elfeed-summary-mode-map
(kbd "<normal-state>h")
'elfeed-summary-quit-window)
(define-key elfeed-summary-mode-map
(kbd "<normal-state>l")
'elfeed-summary--action-show-read)))
(add-hook 'elfeed-search-mode-hook
(lambda ()
(define-key elfeed-search-mode-map
(kbd "<normal-state>h")
'elfeed-kill-buffer)
(define-key elfeed-search-mode-map
(kbd "<normal-state>l")
'elfeed-search-show-entry)))
(add-hook 'elfeed-show-mode-hook
(lambda ()
(define-key elfeed-show-mode-map
(kbd "<normal-state>h")
'elfeed-kill-buffer)
(define-key elfeed-show-mode-map
(kbd "C-n")
'View-scroll-line-forward)
(define-key elfeed-show-mode-map
(kbd "C-p")
'View-scroll-line-backward)))
(add-hook 'elfeed-show-mode-hook 'view-mode)
(defun elfeed-podcast-tagger (entry)
(when (elfeed-entry-enclosures entry)
(elfeed-tag entry 'podcast)))
;;(add-hook 'elfeed-new-entry-hook #'ime-elfeed-podcast-tagger)
(setq emms-source-file-default-directory "/mnt/c/Users/mchalupi/Music")
(global-tree-sitter-mode)
(add-hook 'tree-sitter-after-on-hook #'tree-sitter-hl-mode)
(require 'vlf-setup)

14
.doom.d_/custom.el Normal file
View File

@ -0,0 +1,14 @@
(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
'("b54376ec363568656d54578d28b95382854f62b74c32077821fdfd604268616a" "8d8207a39e18e2cc95ebddf62f841442d36fcba01a2a9451773d4ed30b632443" "aec7b55f2a13307a55517fdf08438863d694550565dee23181d2ebd973ebd6b8" "56044c5a9cc45b6ec45c0eb28df100d3f0a576f18eef33ff8ff5d32bac2d9700" "e3daa8f18440301f3e54f2093fe15f4fe951986a8628e98dcd781efbec7a46f2" "f5f80dd6588e59cfc3ce2f11568ff8296717a938edd448a947f9823a4e282b66" "37b6695bae243145fa2dfb41440c204cd22833c25cd1993b0f258905b9e65577" "e4a702e262c3e3501dfe25091621fe12cd63c7845221687e36a79e17cf3a67e0" default))
'(delete-selection-mode nil))
(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.
'(ts-fold-replacement-face ((t (:foreground unspecified :box nil :inherit font-lock-comment-face :weight light)))))

195
.doom.d_/init.el Normal file
View File

@ -0,0 +1,195 @@
;;; 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
;;(corfu +orderless) ; complete with cap(f), cape and a flying feather!
;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
;;ivy ; 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)
;;collab ; buffers with friends
;;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)
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 (featurep :system 'macos) 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 ; 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
;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional
;;python ; 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) ; emacs as an RSS reader
;;twitter ; twitter client https://twitter.com/vnought
:config
;;literate
(default +bindings +smartparens))

55
.doom.d_/packages.el Normal file
View File

@ -0,0 +1,55 @@
;; -*- 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! elfeed-summary)
(package! vlf)
(package! eat)
(package! sam
:recipe (:local-repo "/home/mikec/doom-emacs/.local/straight/repos/sam.el/"))

1
.scripts/add-project Executable file
View File

@ -0,0 +1 @@
echo "$(pwd) $1" >> ~/.scripts/projects

21
.scripts/bar.sh Executable file
View File

@ -0,0 +1,21 @@
#!/usr/bin/env bash
DATE=$(date +'%Y-%m-%d %I:%M:%S %p')
# BAT=$(cat /sys/class/power_supply/BAT1/capacity)
VOL=$(pactl get-sink-volume @DEFAULT_SINK@ | tr "," "\n" | grep \% | sed s/Volume\:// | sed 's/\%.*$//' | sed 's/^.*\///' | head -n1 | sed s/\ *//)
VOL="${VOL}%"
MUTED=$(pactl get-sink-mute @DEFAULT_SINK@ | cut -d\ -f2)
# BRIGHT=$(brightnessctl | tr "\n" " " | cut -d\ -f9 | tr -d "()%")
MEM=$(free -h | sed 's/[ ]\+/:/g' | cut -d\: -f4 | tr "\n" ":" | cut -d\: -f2)
USER=$(id -u -n)
HOST=$(cat /proc/sys/kernel/hostname)
# LAYOUT=$(swaymsg -t get_inputs | jq -r '.[] | select( .type == "keyboard") .xkb_active_layout_name' | tr "\n" ":" | cut -d\: -f1 | cut -d\ -f2| tr -d "()")
LAYOUT=$(setxkbmap -print -verbose 10 | grep layout | cut -d ":" -f 2 | tr -d " ")
# NETWORK_NAME=$(iwctl station wlan0 show | grep network | sed s/"Connected network"// | tr -d " ")
# IP=$(iwctl station wlan0 show | grep IPv4 | sed s/"IPv4 address"// | tr -d " ")
if [ $MUTED == 'yes' ]
then
VOL='muted'
fi
echo ${MEM} \| ${USER}\@${HOST} \| KB\: ${LAYOUT} \| ${NETWORK_NAME}\@${IP} \| V: ${VOL} \| ${BRIGHT}% Bl \| ${BAT}\% B \| ${DATE}

1
.scripts/build.sh Executable file
View File

@ -0,0 +1 @@
/usr/lib/jvm/java-11-openjdk/bin/javac -cp ./ $*

1
.scripts/buildtest.sh Executable file
View File

@ -0,0 +1 @@
/usr/lib/jvm/java-11-openjdk/bin/javac -cp .:/usr/share/java/junit.jar:/usr/share/java/hamcrest/core.jar $*

18206
.scripts/cloc Executable file

File diff suppressed because it is too large Load Diff

5
.scripts/cloc-git Executable file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
git clone --depth 1 "$1" temp-linecount-repo &&
printf "('temp-linecount-repo' will be deleted automatically)\n\n\n" &&
cloc temp-linecount-repo &&
rm -rf temp-linecount-repo

12
.scripts/enter-dev.sh Executable file
View File

@ -0,0 +1,12 @@
dir="$(cat ~/.scripts/projects | fzf | cut -d\ -f1)"
if [ -z "$dir" ]; then
return
fi
if [ -n "$(command -v tmux)" ] && [ -z "$TMUX" ]; then
tmux new-session -d -c $dir
tmux send-keys -t 0 C-z kak Enter
tmux attach
else
cd $dir
kak
fi

94
.scripts/fzf-ctags Executable file
View File

@ -0,0 +1,94 @@
#!/usr/bin/env bash
IFS=
# Allow ** glob and Bash extended globbing
shopt -s globstar extglob nullglob
# Set up the template variable.
helper_bin=fzf-ctags-helper
lib_src=fzf-ctags-lib
helper="%FZF_DIR%/bin/$helper_bin"
lib="%FZF_DIR%/bin/$lib_src"
# Setup the colorization preview helper.
if [[ $helper = %*%* ]]; then
# Find the helper if run directly, without installing.
help_dir=${0%/*}
[[ $0 != /* ]] && help_dir=$PWD/$help_dir
lib="$help_dir/$lib_src"
helper=$help_dir/$helper_bin
# Found? Try cat if not.
[[ ! -f $helper ]] && helper=cat
[[ ! -f $lib ]] && {
#printf "Library fzf-ctags-lib not found, exiting.\n"
exit 1
}
fi
# Load shared functions library.
source "$lib"
export FZF_CTAGS_LIB="$lib"
# Which mode? Symbol, or surrounding text?
if [[ $1 == symbol-only ]]; then
q=2
elif [[ -z $1 || $1 = text ]]; then
q=1
fi
typeset tags tags_path ptags="/tmp/.TAGS.z-$$"
get_tags && tags="$REPLY"
# Is there any TAGS file to read?
if [[ -z $tags || ! -f $tags ]]; then
#printf "No \e[38;5;208mTAGS\e[0m file found, exiting…\e[0m\n"
#printf "(\`univeral ctags\` is recommended tool to generate one;\n"
#printf "homepage: https://github.com/universal-ctags/ctags).\n"
exit 1
fi
tags_path="${tags%/TAGS}"
# Sort out the symbol to open at.
type &>/dev/null sed && sed=sed
type &>/dev/null ged && sed=gsed
command $sed -r -n $'/^\x0c$/ { n; s/,[^,]*$//;s/^/\x02/; h; d;}; G; y/\\n/,/; p' "$tags" > "$ptags"
line="$(fzf --preview="printf '%s' {} |$helper" --delimiter '\177' --with-nth $q < <( $sed -r -e 's/^\s+//' \
-e 's/[\x01\x02]/\x7f/g' $ptags ))"
ret=$?
command rm -f $ptags
# Check if anything has been picked.
if (( ret != 0 )) || [[ -z $line ]]; then
printf "\e[38;5;208mNo symbol has been picked out, nothing to do…\e[0m\n"
exit 1
fi
# Split the input.
q=$(cut -d$'\x7f' -f2 <<< $line)
nr=$(cut -d$'\x7f' -f3 <<< $line)
nr=${nr%%,*}
e=$(cut -d$'\x7f' -f4 <<< $line)
# Use the user's configured editor falling back to vim.
ed="${VISUAL:-${EDITOR:-vim}}"
type $ed &>/dev/null || ed=emacs
type $ed &>/dev/null || ed=nano
if ! type $ed &>/dev/null; then
#printf "\e[38;5;208mNo supported editor found, exiting…\e[0m\n"
exit 1
fi
#printf "\nPicked: \e[1;38;5;39m$q\e[0m, opening: \
#\e[1;38;5;70m$ed\e[0m with the file: \e[1;38;5;140m$e\e[0m:\e[38;5;208m$nr\e[0m\n"
# Run editor on the selected file and line.
# The one-time loop is to emphasize the final step.
while
( cd "$tags_path"; command "$ed" +"$nr" "$e"; )
false
do true; done

36
.scripts/fzf-ctags-helper Executable file
View File

@ -0,0 +1,36 @@
#!/usr/bin/env bash
# Set **/… globs.
shopt -s globstar nullglob extglob
# Load the library of shared functions.
source "$FZF_CTAGS_LIB"
# Prevent word split
IFS=
# Read the line of input.
builtin read -d '' -r q
# Split the input.
p=$(cut -d$'\x7f' -f3 <<< $q)
p=${p%%,*}
e=$(cut -d$'\x7f' -f4 <<< $q)
(( p --, p=p-LINES/2+4, p=p<0?0:p ))
# Preamble,
printf "Showing \e[1;38;5;208m««\e[1;38;5;70m$e\e[0m:\e[1;38;5;33m$p\e[1;38;5;208m»»\e[0m\\n"
eval "printf '—%.0s' {1..$COLUMNS}"
printf "\n"
get_tags && pth=${REPLY%/TAGS} || pth=
(
[[ -n $pth ]] && builtin cd $pth
if [[ -e $e ]]; then
colorize "$p" "$e"
else
printf "File $e not found\n"
fi
)
#less +${p%,*} **/"$e"

51
.scripts/fzf-ctags-lib Executable file
View File

@ -0,0 +1,51 @@
#!/usr/bin/env bash
get_tags() {
local d pth
#PWD=`pwd`
pth=`pwd`
while true; do
[[ -e $pth/TAGS || -z ${pth%/} ]] && break
pth=${pth%/*}
d+=/..
done
[[ -n ${pth#/} ]] && REPLY="$pth"/TAGS
# Explicit!ly testable.
return $?
}
colorize() {
local line="$1" file="$2" lines="$(tput lines 2>/dev/null)"
local sed tool opts end
# Lines to show.
[[ -z $lines ]] && lines="$LINES"
[[ -z $lines ]] && lines=10
((end=line+lines))
# Find sed binary to use.
if type sed &>/dev/null; then
sed=sed
elif type gsed &>/dev/null; then
sed-gsed
else
sed=cat
fi
# Find the tool to use. Prefer pygments for its speed.
if type pygmentize &>/dev/null; then
tool="$sed -e 1,${line}d $file | pygmentize -g | head -n $lines"
opts= file=
elif type pygmentize3 &>/dev/null; then
tool="$sed -e 1,${line}d $file | pygmentize3 -g | head -n $lines"
opts= file=
elif type source-highlight &>/dev/null; then
tool=source-highlight
opts="--line-range=$line-$end -f esc -o STDOUT -i"
else
tool="head -n $end $file | tail -n $lines"
opts= file=
fi
eval "$tool $opts $file"
}

3
.scripts/gb.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/GB -iname "*.zip" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || mgba "$GAMES"

3
.scripts/gba.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/GBA -iname "*.zip" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || mgba "$GAMES"

3
.scripts/gbc.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/GBC -iname "*.zip" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || mgba "$GAMES"

3
.scripts/genesis.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/Genesis -iname "*.zip" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || blastem "$GAMES"

BIN
.scripts/get_local_path Executable file

Binary file not shown.

17
.scripts/get_local_path.c Normal file
View File

@ -0,0 +1,17 @@
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
int main(int argc, char** argv) {
if (argc != 2) {
return -1;
}
bool rel = true;
if (argv[1][1] == '/') {
rel = false;
}
char* last = strrchr(argv[1], '/');
*last = '\0';
puts(argv[1]);
return 0;
}

3
.scripts/n64.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/N64 -iname "*.zip" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || mupen64plus "$GAMES"

3
.scripts/nes.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/NES/USA -iname "*.nes" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || fceux "$GAMES"

6
.scripts/open-note.sh Executable file
View File

@ -0,0 +1,6 @@
#!/bin/sh
FILE=$(rg --no-heading -n . | fzf)
FILEPATH=$(echo $FILE | sed 's/:.*//')
NUMBER=$(echo $FILE | cut -d':' -f2)
kak +$NUMBER $FILEPATH

9
.scripts/projects Normal file
View File

@ -0,0 +1,9 @@
/home/mikec
/mnt/c/Archive/FB/Product/Cmglobal
/mnt/c/Archive/FB
/mnt/c/Archive
/mnt/c/Archive/Common
/mnt/c/Archive/FB/Core
/mnt/c/Archive/FB/Product
/mnt/c/Archive/FB/Product/Cmglobal/Config
/mnt/c/Users/mchalupi/Documents/Notes

6
.scripts/pws.sh Executable file
View File

@ -0,0 +1,6 @@
(rg -uu --color=always --line-number --no-heading . > $1) & tail -n +1 -f $1 | \
fzf-tmux --cycle -p 175,45 < /dev/null \
--disabled --ansi \
--bind "change:reload:rg -uu --smart-case {q} $1 || :" \
--bind "enter:become(echo {1} {2})" \
--delimiter : ; pkill -P $$

5
.scripts/remove-project Executable file
View File

@ -0,0 +1,5 @@
proj="$(cat -n ~/.scripts/projects | fzf | cut -f 1 | tr -d ' ')"
if [ -z "$proj" ]; then
exit
fi
sed -i "$proj"d ~/.scripts/projects

8
.scripts/rfs.sh Executable file
View File

@ -0,0 +1,8 @@
rg -uu --color=always --line-number --no-heading --smart-case "${*:3}" "$1" | tr -d '\r' |
fzf-tmux --cycle -p 175,45 --ansi \
--color "hl:-1:underline,hl+:-1:underline:reverse" \
--delimiter : \
--preview "bat --theme='base16-256' --color=always $1 --highlight-line {1}" \
--bind "enter:become(echo \"$2\" '{1}')" \
--preview-window 'right,55%,+{1}+3/3,~3' \

8
.scripts/rfv.sh Executable file
View File

@ -0,0 +1,8 @@
rg -uu --color=always --line-number --no-heading --smart-case -H "${*:-}" | tr -d '\r' |
fzf-tmux --cycle -p 175,45 --ansi \
--color "hl:-1:underline,hl+:-1:underline:reverse" \
--delimiter : \
--preview 'bat --theme="base16-256" --color=always {1} --highlight-line {2}' \
--bind 'enter:become(echo "{1}" "{2}")' \
--preview-window 'right,55%,+{2}+3/3,~3' \
#--preview-window 'right,55%' \

8
.scripts/rfve.sh Executable file
View File

@ -0,0 +1,8 @@
rg --color=always --line-number --no-heading --smart-case "${*:-}" | tr -d '\r' |
fzf-tmux --cycle -p 175,45 --ansi +x -e\
--color "hl:-1:underline,hl+:-1:underline:reverse" \
--delimiter : \
--preview 'bat --theme="base16-256" --color=always {1} --highlight-line {2}' \
--bind 'enter:become(echo "{1}" "{2}")' \
--preview-window 'right,55%,+{2}+3/3,~3' \
#--preview-window 'right,55%' \

8
.scripts/rgfs.sh Executable file
View File

@ -0,0 +1,8 @@
(RELOAD='reload:rg -uu --color=always --line-number --no-heading --smart-case {q} || :'
fzf-tmux --cycle -p 175,45 < /dev/null \
--disabled --ansi \
--bind "start:$RELOAD" --bind "change:$RELOAD" \
--bind "enter:become(echo '{1}' '{2}')" \
--delimiter : \
--preview-window 'right,55%,+{2}+3/3,~3' \
--preview "bat --theme='base16-256' --color=always {1} --highlight-line {2}")

8
.scripts/rgrs.sh Executable file
View File

@ -0,0 +1,8 @@
(RELOAD="reload:rg -uu --color=always --pcre2 --line-number --no-heading --smart-case {q} $1|| :"
fzf-tmux --cycle -p 175,45 < /dev/null \
--disabled --ansi \
--bind "start:$RELOAD" --bind "change:$RELOAD" \
--bind "enter:become(echo \"$2\" '{1}')" \
--delimiter : \
--preview-window 'right,55%,+{1}+3/3,~3' \
--preview "bat --theme='base16-256' --color=always $1 --highlight-line {1}")

1
.scripts/run.sh Executable file
View File

@ -0,0 +1 @@
/usr/lib/jvm/java-11-openjdk/bin/java -cp ./ $*

1
.scripts/ryujinx.sh Executable file
View File

@ -0,0 +1 @@
/opt/ryujinx/Ryujinx.sh

3
.scripts/shutdown.sh Executable file
View File

@ -0,0 +1,3 @@
#! /bin/sh
killall startup.sh
killall xss-lock

3
.scripts/snes.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
GAMES=$(find /home/mikec/Documents/Games/ROMS/SNES/USA -iname "*.zip" | bemenu -i --fn "Cascadia Code 12")
[ -z "$GAMES" ] || snes9x-gtk "$GAMES"

6
.scripts/startup.sh Executable file
View File

@ -0,0 +1,6 @@
#! /bin/sh
while true; do
xsetroot -name "$(/home/mikec/.scripts/bar.sh)"
sleep 1
done &
xss-lock -- slock &

470
.scripts/styli.sh Executable file
View File

@ -0,0 +1,470 @@
#!/usr/bin/env bash
link="https://source.unsplash.com/random/"
if [ -z ${XDG_CONFIG_HOME+x} ]; then
XDG_CONFIG_HOME="${HOME}/.config"
fi
if [ -z ${XDG_HOME+x} ]; then
XDG_HOME="${HOME}"
fi
confdir="${XDG_CONFIG_HOME}/styli.sh"
if [ ! -d "${confdir}" ]; then
mkdir -p "${confdir}"
fi
cachedir="${XDG_HOME}/Pictures/wallpapers"
if [ ! -d "${cachedir}" ]; then
mkdir -p "${cachedir}"
fi
wallpaper="${cachedir}/wallpaper.jpg"
wallpath=""
die() {
printf "ERR: %s\n" "$1" >&2
exit 1
}
# https://github.com/egeesin/alacritty-color-export
alacritty_change() {
DEFAULT_MACOS_CONFIG="$HOME"/.config/alacritty/alacritty.yml
# Wal generates a shell script that defines color0..color15
SRC="$HOME"/.cache/wal/colors.sh
[ -e "$SRC" ] || die "Wal colors not found, exiting script. Have you executed Wal before?"
printf "Colors found, source ready.\n"
READLINK=$( command -v greadlink || command -v readlink )
# Get config file
if [ -n "$1" ]; then
[ -e "$1" ] || die "Selected config doesn't exist, exiting script."
printf "Config found, destination ready.\n"
CFG=$1
[ -L "$1" ] && {
printf "Following symlink to config...\n"
CFG=$($READLINK -f "$1")
}
else
# Default config path in Mac systems
[ -e "$DEFAULT_MACOS_CONFIG" ] || die "Alacritty config not found, exiting script."
CFG="$DEFAULT_MACOS_CONFIG"
[ -L "$DEFAULT_MACOS_CONFIG" ] && {
printf "Following symlink to config...\n"
CFG=$($READLINK -f "$DEFAULT_MACOS_CONFIG")
}
fi
# Get hex colors from Wal cache
# No need for shellcheck to check this, it comes from pywal
# shellcheck disable=SC1090
. "$SRC"
# Create temp file for sed results
tempfile=$(mktemp)
trap 'rm $tempfile' INT TERM EXIT
# Delete existing color declarations generated by this script
# If begin comment exists
if grep -q '^# BEGIN ACE' "$CFG"; then
# And if end comment exists
if grep -q '^# END ACE' "$CFG"; then
# Delete contents of the block
printf "Existing generated colors found, replacing new colors...\n"
sed '/^# BEGIN ACE/,/^# END ACE/ {
/^# BEGIN ACE/! { /^# END ACE/!d; }
}' "$CFG" > "$tempfile" \
&& cat "$tempfile" > "$CFG"
# If no end comment, don't do anything
else
die "No '# END ACE' comment found, please ensure it is present."
fi
# If no begin comment found
else
# Don't do anything and notify user if there's an end comment in the file
! grep -q '^# END ACE' "$CFG" || die "Found '# END ACE' comment, but no '# BEGIN ACE' comment found. Please ensure it is present."
printf "There's no existing 'generated' colors, adding comments...\n";
printf '# BEGIN ACE\n# END ACE' >> "$CFG";
fi
# Write new color definitions
# We know $colorX is unset, we set it by sourcing above
# shellcheck disable=SC2154
{ sed "/^# BEGIN ACE/ r /dev/stdin" "$CFG" > "$tempfile" <<EOP
colors:
primary:
background: '$color0'
foreground: '$color7'
cursor:
text: '$color0'
cursor: '$color7'
normal:
black: '$color0'
red: '$color1'
green: '$color2'
yellow: '$color3'
blue: '$color4'
magenta: '$color5'
cyan: '$color6'
white: '$color7'
bright:
black: '$color8'
red: '$color9'
green: '$color10'
yellow: '$color11'
blue: '$color12'
magenta: '$color13'
cyan: '$color14'
white: '$color15'
EOP
} && cat "$tempfile" > "$CFG" \
&& rm "$tempfile"
trap - INT TERM EXIT
printf "'%s' exported to '%s'\n" "$SRC" "$CFG"
}
reddit(){
useragent="thevinter"
timeout=60
sort=$2
top_time=$3
if [ -z $sort ]; then
sort="hot"
fi
if [ -z $top_time ]; then
top_time=""
fi
if [ ! -z $1 ]; then
sub=$1
else
if [ ! -f "${confdir}/subreddits" ]; then
echo "Please install the subreddits file in ${confdir}"
exit 2
fi
readarray subreddits < "${confdir}/subreddits"
a=${#subreddits[@]}
b=$(($RANDOM % $a))
sub=${subreddits[$b]}
sub="$(echo -e "${sub}" | tr -d '[:space:]')"
fi
url="https://www.reddit.com/r/$sub/$sort/.json?raw_json=1&t=$top_time"
content=`wget -T $timeout -U "$useragent" -q -O - $url`
urls=$(echo -n "$content"| jq -r '.data.children[]|select(.data.post_hint|test("image")?) | .data.preview.images[0].source.url')
names=$(echo -n "$content"| jq -r '.data.children[]|select(.data.post_hint|test("image")?) | .data.title')
ids=$(echo -n "$content"| jq -r '.data.children[]|select(.data.post_hint|test("image")?) | .data.id')
arrURLS=($urls)
arrNAMES=($names)
arrIDS=($ids)
wait # prevent spawning too many processes
size=${#arrURLS[@]}
if [ $size -eq 0 ]; then
echo The current subreddit is not valid.
exit 1
fi
idx=$(($RANDOM % $size))
target_url=${arrURLS[$idx]}
target_name=${arrNAMES[$idx]}
target_id=${arrIDS[$idx]}
ext=`echo -n "${target_url##*.}"|cut -d '?' -f 1`
newname=`echo $target_name | sed "s/^\///;s/\// /g"`_"$subreddit"_$target_id.$ext
wget -T $timeout -U "$useragent" --no-check-certificate -q -P down -O ${wallpaper} $target_url &>/dev/null
}
unsplash() {
local search="${search// /_}"
if [ ! -z $height ] || [ ! -z $width ]; then
link="${link}${width}x${height}";
else
link="${link}1920x1080";
fi
if [ ! -z $search ]; then
link="${link}/?${search}"
fi
wget -q -O ${wallpaper} $link
}
deviantart(){
client_id=16531
client_secret=68c00f3d0ceab95b0fac638b33a3368e
payload="grant_type=client_credentials&client_id=${client_id}&client_secret=${client_secret}"
access_token=`curl --silent -d $payload https://www.deviantart.com/oauth2/token | jq -r '.access_token'`
if [ ! -z $1 ]; then
artist=$1
url="https://www.deviantart.com/api/v1/oauth2/gallery/?username=${artist}&mode=popular&limit=24"
elif [ ! -z $search ]; then
[[ "$search" =~ ^(tag:)(.*)$ ]] && tag=${BASH_REMATCH[2]}
if [ ! -z $tag ]; then
url="https://www.deviantart.com/api/v1/oauth2/browse/tags?tag=$tag&offset=${RANDOM:0:2}&limit=24"
else
url="https://www.deviantart.com/api/v1/oauth2/browse/popular?q=$search&limit=24&timerange=1month"
fi
else
#url="https://www.deviantart.com/api/v1/oauth2/browse/hot?limit=24&offset=${offset}"
topics=( "adoptables" "artisan-crafts" "anthro" "comics" "drawings-and-paintings" "fan-art" "poetry" "stock-images" "sculpture" "science-fiction" "traditional-art" "street-photography" "street-art" "pixel-art" "wallpaper" "digital-art" "photo-manipulation" "science-fiction" "fractal" "game-art" "fantasy" "3d" "drawings-and-paintings" "game-art" )
rand=$[$RANDOM % ${#topics[@]}]
url="https://www.deviantart.com/api/v1/oauth2/browse/topic?limit=24&topic=${topics[$rand]}"
fi
content=`curl --silent -H "Authorization: Bearer ${access_token}" -H "Accept: application/json" -H "Content-Type: application/json" $url`
urls=$(echo -n $content | jq -r '.results[].content.src')
arrURLS=($urls)
size=${#arrURLS[@]}
idx=$(($RANDOM % $size))
target_url=${arrURLS[$idx]}
wget --no-check-certificate -q -P down -O ${wallpaper} $target_url &>/dev/null
}
usage(){
echo "Usage: styli.sh [-s | --search <string>]
[-h | --height <height>]
[-w | --width <width>]
[-b | --fehbg <feh bg opt>]
[-c | --fehopt <feh opt>]
[-a | --artist <deviant artist>]
[-r | --subreddit <subreddit>]
[-l | --link <source>]
[-p | --termcolor]
[-d | --directory]
[-k | --kde]
[-x | --xfce]
[-g | --gnome]
[-m | --monitors <monitor count (nitrogen)>]
[-n | --nitrogen]
"
exit 2
}
type_check() {
mime_types=("image/bmp" "image/jpeg" "image/gif" "image/png" "image/heic")
isType=false
for requiredType in "${mime_types[@]}"
do
if [ $dir ]; then
imageType=$(file --mime-type "$HOME/Pictures/wallpaper_dump/${wallpaper}" | sed 's/.*image/image/')
echo $imageType
if [ "$requiredType" = "$imageType" ]; then
isType=true
break
fi
else
imageType=$(file --mime-type ${wallpaper} | awk '{print $2}')
if [ "$requiredType" = "$imageType" ]; then
isType=true
break
fi
fi
done
if [ $isType = false ]; then
echo "MIME-Type missmatch. Downloaded file is not an image!"
exit 1
fi
}
select_random_wallpaper () {
wallpaper=$(ls $HOME/Pictures/wallpaper_dump | shuf -n 1)
}
pywal_cmd() {
if [ $pywal -eq 1 ]; then
wal -c
wal -i ${wallpaper} -n -q
if [ $TERM = alacritty ]; then
alacritty_change
fi
fi
}
sway_cmd() {
mode="fill"
if [ ! -z $dir ]; then
cp "$HOME/Pictures/wallpaper_dump/${wallpaper}" "$HOME/Pictures/wallpapers/wallpaper"
swaymsg output "*" bg "$HOME/Pictures/wallpaper_dump/${wallpaper}" "${mode}"
else
swaymsg output "*" bg "${wallpaper}" "${mode}"
fi
}
nitrogen_cmd() {
for ((monitor=0; monitor < $monitors; monitor++))
do
local nitrogen=(nitrogen --save --head=${monitor})
if [ ! -z $bgtype ]; then
if [ $bgtype == 'bg-center' ]; then
nitrogen+=(--set-centered)
fi
if [ $bgtype == 'bg-fill' ]; then
nitrogen+=(--set-zoom-fill)
fi
if [ $bgtype == 'bg-max' ]; then
nitrogen+=(--set-zoom)
fi
if [ $bgtype == 'bg-scale' ]; then
nitrogen+=(--set-scaled)
fi
if [ $bgtype == 'bg-tile' ]; then
nitrogen+=(--set-tiled)
fi
else
nitrogen+=(--set-scaled)
fi
if [ ! -z $custom ]; then
nitrogen+=($custom)
fi
nitrogen+=(${wallpaper})
"${nitrogen[@]}"
done
}
kde_cmd() {
if [ ! -z $dir ]; then
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "var allDesktops = desktops();print (allDesktops);for (i=0;i<allDesktops.length;i++) {d = allDesktops[i];d.wallpaperPlugin = \"org.kde.image\";d.currentConfigGroup = Array(\"Wallpaper\", \"org.kde.image\", \"General\");d.writeConfig(\"Image\", \"file:$HOME/Pictures/wallpaper_dump/${wallpaper}\")}"
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "var allDesktops = desktops();print (allDesktops);for (i=0;i<allDesktops.length;i++) {d = allDesktops[i];d.wallpaperPlugin = \"org.kde.image\";d.currentConfigGroup = Array(\"Wallpaper\", \"org.kde.image\", \"General\");d.writeConfig(\"Image\", \"file:$HOME/Pictures/wallpaper_dump/${wallpaper}\")}"
else
cp ${wallpaper} "${cachedir}/tmp.jpg"
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "var allDesktops = desktops();print (allDesktops);for (i=0;i<allDesktops.length;i++) {d = allDesktops[i];d.wallpaperPlugin = \"org.kde.image\";d.currentConfigGroup = Array(\"Wallpaper\", \"org.kde.image\", \"General\");d.writeConfig(\"Image\", \"file:${cachedir}/tmp.jpg\")}"
qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "var allDesktops = desktops();print (allDesktops);for (i=0;i<allDesktops.length;i++) {d = allDesktops[i];d.wallpaperPlugin = \"org.kde.image\";d.currentConfigGroup = Array(\"Wallpaper\", \"org.kde.image\", \"General\");d.writeConfig(\"Image\", \"file:${wallpaper}\")}"
rm "${cachedir}/tmp.jpg"
fi
}
xfce_cmd() {
connectedOutputs=$(xrandr | grep " connected" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/")
activeOutput=$(xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/")
connected=$(echo $connectedOutputs | wc -w)
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitor0/image-path -n -t string -s ~/Pictures/1.jpeg
xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitorLVDS1/workspace0/last-image -n -t string -s ~/Pictures/1.jpeg
for i in $(xfconf-query -c xfce4-desktop -p /backdrop -l|egrep -e "screen.*/monitor.*image-path$" -e "screen.*/monitor.*/last-image$"); do
xfconf-query -c xfce4-desktop -p $i -n -t string -s ${wallpaper}
xfconf-query -c xfce4-desktop -p $i -s ${wallpaper}
done
}
gnome_cmd() {
if [ ! -z $dir ]; then
gsettings set org.gnome.desktop.background picture-uri "file://$HOME/Pictures/wallpaper_dump/${wallpaper}"
gsettings set org.gnome.desktop.background picture-uri-dark "file://$HOME/Pictures/wallpaper_dump/${wallpaper}"
else
gsettings set org.gnome.desktop.background picture-uri "file://${wallpaper}"
gsettings set org.gnome.desktop.background picture-uri-dark "file://${wallpaper}"
fi
}
feh_cmd() {
local feh=(feh)
if [ ! -z $bgtype ]; then
if [ $bgtype == 'bg-center' ]; then
feh+=(--bg-center)
fi
if [ $bgtype == 'bg-fill' ]; then
feh+=(--bg-fill)
fi
if [ $bgtype == 'bg-max' ]; then
feh+=(--bg-max)
fi
if [ $bgtype == 'bg-scale' ]; then
feh+=(--bg-scale)
fi
if [ $bgtype == 'bg-tile' ]; then
feh+=(--bg-tile)
fi
else
feh+=(--bg-scale)
fi
if [ ! -z $custom ]; then
feh+=($custom)
fi
if [ ! -z $dir ]; then
cp "$HOME/Pictures/wallpaper_dump/${wallpaper}" "$HOME/Pictures/wallpapers/wallpaper"
feh+=("$HOME/Pictures/wallpaper_dump/${wallpaper}")
else
feh+=(${wallpaper})
fi
"${feh[@]}"
}
pywal=0
kde=false
xfce=false
gnome=false
nitrogen=false
sway=false
monitors=1
PARSED_ARGUMENTS=$(getopt -a -n $0 -o h:w:s:l:b:r:a:c:d:m:pknxgy --long search:,height:,width:,fehbg:,fehopt:,artist:,subreddit:,directory:,monitors:,termcolor:,kde,nitrogen,xfce,gnome,sway -- "$@")
VALID_ARGUMENTS=$?
if [ "$VALID_ARGUMENTS" != "0" ]; then
usage
exit
fi
while :
do
case "${1}" in
-b | --fehbg) bgtype=${2} ; shift 2 ;;
-s | --search) search=${2} ; shift 2 ;;
-h | --height) height=${2} ; shift 2 ;;
-w | --width) width=${2} ; shift 2 ;;
-l | --link) link=${2} ; shift 2 ;;
-r | --subreddit) sub=${2} ; shift 2 ;;
-a | --artist) artist=${2} ; shift 2 ;;
-c | --fehopt) custom=${2} ; shift 2 ;;
-m | --monitors) monitors=${2} ; shift 2 ;;
-n | --nitrogen) nitrogen=true ; shift ;;
-d | --directory) dir=${2} ; shift 2 ;;
-p | --termcolor) pywal=1 ; shift ;;
-k | --kde) kde=true ; shift ;;
-x | --xfce) xfce=true ; shift ;;
-g | --gnome) gnome=true ; shift ;;
-y | --sway) sway=true ; shift ;;
-- | '') shift; break ;;
*) echo "Unexpected option: $1 - this should not happen." ; usage ;;
esac
done
if [ ! -z $dir ]; then
select_random_wallpaper
elif [ $link = "reddit" ] || [ ! -z $sub ]; then
reddit "$sub"
elif [ $link = "deviantart" ] || [ ! -z $artist ]; then
deviantart "$artist"
else
unsplash
fi
echo $dir
type_check
if [ $kde = true ]; then
kde_cmd
elif [ $xfce = true ]; then
xfce_cmd
elif [ $gnome = true ]; then
gnome_cmd
elif [ $nitrogen = true ]; then
nitrogen_cmd
elif [ $sway = true ]; then
sway_cmd
else
feh_cmd
fi
pywal_cmd

1
.scripts/test.sh Executable file
View File

@ -0,0 +1 @@
/usr/lib/jvm/java-11-openjdk/bin/java -cp .:/usr/share/java/junit.jar:/usr/share/java/hamcrest/core.jar org.junit.runner.JUnitCore $*

20
.tmux.conf Normal file
View File

@ -0,0 +1,20 @@
# List of plugins
#set -g @plugin 'tmux-plugins/tpm'
#set -g @plugin 'tmux-plugins/tmux-sensible'
#set -g @plugin 'arcticicestudio/nord-tmux'
set -g default-terminal "xterm-256color"
set -ga terminal-overrides ",xterm*:Tc"
set -g mouse on
# Changes prefix key to control a instead of control b
unbind C-b
set-option -g prefix C-a
set -sg escape-time 25
setw -g mode-keys vi
# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin 'git@github.com:user/plugin'
# set -g @plugin 'git@bitbucket.com:user/plugin'
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
#run '~/.tmux/plugins/tpm/tpm'
run-shell "tmux source-file ~/.local/share/tinted-theming/tinty/repos/tinted-tmux/colors/base16-$BASE16_THEME.conf"

25
required_tools.txt Normal file
View File

@ -0,0 +1,25 @@
- kakoune (+config)
- git
- rust (tinty, kak-lsp, kak-tree-sitter)
- fzf
- bash (+config)
- tmux (+config)
- rg
- fd (probably)
- .scripts folder
- ctags (for good measure)
- bat
preferred
- lazygit
- lsp and tooling for needed languages
- eza
entertainment
- cmus (+music)
- newsboat (+config)
- sxiv (+wallpapers)
- curl
- mpv
try to use latest version of tools when possible