init
This commit is contained in:
commit
5d1b8d7a70
10
.bash_profile
Normal file
10
.bash_profile
Normal file
|
@ -0,0 +1,10 @@
|
|||
if [[ -f ~/.bashrc ]]; then
|
||||
. ~/.bashrc;
|
||||
fi
|
||||
|
||||
export EDITOR="nvim"
|
||||
export MANPAGER="nvim +Man!"
|
||||
|
||||
export LANG="en_US.UTF-8"
|
||||
export LC_ALL="en_US.UTF-8"
|
||||
export EDITOR="nvim" VISUAL="codium"
|
117
.bashrc
Normal file
117
.bashrc
Normal file
|
@ -0,0 +1,117 @@
|
|||
# ~/.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
|
||||
|
||||
# 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|*-256color) 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='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
|
||||
else
|
||||
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
|
||||
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="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
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
|
||||
|
||||
# colored GCC warnings and errors
|
||||
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
|
||||
|
||||
# some more ls aliases
|
||||
#alias ll='ls -l'
|
||||
#alias la='ls -A'
|
||||
#alias l='ls -CF'
|
||||
|
||||
# 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.
|
||||
|
||||
if [ -f ~/.bash_aliases ]; then
|
||||
. ~/.bash_aliases
|
||||
fi
|
||||
|
||||
# enable programmable completion features (you don't need to enable
|
||||
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
|
||||
# sources /etc/bash.bashrc).
|
||||
if ! shopt -oq posix; then
|
||||
if [ -f /usr/share/bash-completion/bash_completion ]; then
|
||||
. /usr/share/bash-completion/bash_completion
|
||||
elif [ -f /etc/bash_completion ]; then
|
||||
. /etc/bash_completion
|
||||
fi
|
||||
fi
|
||||
. "$HOME/.cargo/env"
|
||||
|
||||
# Only load liquidprompt in interactive shells, not from a script or from scp
|
||||
# echo $- | grep -q i 2>/dev/null && . /usr/share/liquidprompt/liquidprompt
|
38
.cache/starship/init.nu
Normal file
38
.cache/starship/init.nu
Normal file
|
@ -0,0 +1,38 @@
|
|||
# this file is both a valid
|
||||
# - overlay which can be loaded with `overlay use starship.nu`
|
||||
# - module which can be used with `use starship.nu`
|
||||
# - script which can be used with `source starship.nu`
|
||||
export-env { $env.STARSHIP_SHELL = "nu"; load-env {
|
||||
STARSHIP_SESSION_KEY: (random chars -l 16)
|
||||
PROMPT_MULTILINE_INDICATOR: (
|
||||
^/home/oliver/.cargo/bin/starship prompt --continuation
|
||||
)
|
||||
|
||||
# Does not play well with default character module.
|
||||
# TODO: Also Use starship vi mode indicators?
|
||||
PROMPT_INDICATOR: ""
|
||||
|
||||
PROMPT_COMMAND: {||
|
||||
# jobs are not supported
|
||||
(
|
||||
^/home/oliver/.cargo/bin/starship prompt
|
||||
--cmd-duration $env.CMD_DURATION_MS
|
||||
$"--status=($env.LAST_EXIT_CODE)"
|
||||
--terminal-width (term size).columns
|
||||
)
|
||||
}
|
||||
|
||||
config: ($env.config? | default {} | merge {
|
||||
render_right_prompt_on_last_line: true
|
||||
})
|
||||
|
||||
PROMPT_COMMAND_RIGHT: {||
|
||||
(
|
||||
^/home/oliver/.cargo/bin/starship prompt
|
||||
--right
|
||||
--cmd-duration $env.CMD_DURATION_MS
|
||||
$"--status=($env.LAST_EXIT_CODE)"
|
||||
--terminal-width (term size).columns
|
||||
)
|
||||
}
|
||||
}}
|
111
.config/alacritty/alacritty.yml
Normal file
111
.config/alacritty/alacritty.yml
Normal file
|
@ -0,0 +1,111 @@
|
|||
env:
|
||||
TERM: xterm-256color
|
||||
|
||||
shell:
|
||||
program: "/usr/bin/nu"
|
||||
args:
|
||||
- --interactive
|
||||
- --threads 4
|
||||
- --execute 'date now'
|
||||
|
||||
window:
|
||||
dimensions:
|
||||
columns: 75
|
||||
lines: 40
|
||||
|
||||
general:
|
||||
live_config_reload: true
|
||||
|
||||
font:
|
||||
normal:
|
||||
family: Inconsolata
|
||||
style: SemiBold
|
||||
bold:
|
||||
family: Inconsolata
|
||||
style: Bold
|
||||
size: 8
|
||||
|
||||
mouse:
|
||||
hide_when_typing: true
|
||||
double_click: { threshold: 300 }
|
||||
|
||||
mouse_bindings:
|
||||
- { mouse: Middle, action: PasteSelection }
|
||||
|
||||
selection:
|
||||
save_to_clipboard: true
|
||||
|
||||
cursor:
|
||||
style:
|
||||
shape: "Beam"
|
||||
blinking: "Always"
|
||||
|
||||
# import = ["/home/oliver/.config/alacritty/alacritty-theme/themes/afterglow.toml"]
|
||||
|
||||
# https://raw.githubusercontent.com/alacritty/alacritty-theme/master/themes/night_owlish_light.toml
|
||||
# Colors (Night Owlish Light)
|
||||
# colors:
|
||||
# primary:
|
||||
# background: '#ffffff'
|
||||
# foreground: '#403f53'
|
||||
|
||||
# normal:
|
||||
# black: '#011627'
|
||||
# red: '#d3423e'
|
||||
# green: '#2aa298'
|
||||
# yellow: '#daaa01'
|
||||
# blue: '#4876d6'
|
||||
# magenta: '#403f53'
|
||||
# cyan: '#08916a'
|
||||
# white: '#7a8181'
|
||||
|
||||
# bright:
|
||||
# black: '#7a8181'
|
||||
# red: '#f76e6e'
|
||||
# green: '#49d0c5'
|
||||
# yellow: '#dac26b'
|
||||
# blue: '#5ca7e4'
|
||||
# magenta: '#697098'
|
||||
# cyan: '#00c990'
|
||||
# white: '#989fb1'
|
||||
|
||||
# cursor:
|
||||
# cursor: '#403f53'
|
||||
# text: '#fbfbfb'
|
||||
|
||||
# selection:
|
||||
# background: '#f2f2f2'
|
||||
# text: '#403f53'
|
||||
|
||||
# https://raw.githubusercontent.com/alacritty/alacritty-theme/master/themes/alabaster_dark.toml
|
||||
colors:
|
||||
primary:
|
||||
background: '#0E1415'
|
||||
foreground: '#CECECE'
|
||||
|
||||
cursor:
|
||||
text: '#0E1415'
|
||||
cursor: '#CECECE'
|
||||
|
||||
normal:
|
||||
black: '#0E1415'
|
||||
red: '#e25d56'
|
||||
green: '#73ca50'
|
||||
yellow: '#e9bf57'
|
||||
blue: '#4a88e4'
|
||||
magenta: '#915caf'
|
||||
cyan: '#23acdd'
|
||||
white: '#f0f0f0'
|
||||
|
||||
bright:
|
||||
black: '#777777'
|
||||
red: '#f36868'
|
||||
green: '#88db3f'
|
||||
yellow: '#f0bf7a'
|
||||
blue: '#6f8fdb'
|
||||
magenta: '#e987e9'
|
||||
cyan: '#4ac9e2'
|
||||
white: '#FFFFFF'
|
||||
|
||||
opacity: 0.95
|
||||
|
2
.config/bat/bat.conf
Normal file
2
.config/bat/bat.conf
Normal file
|
@ -0,0 +1,2 @@
|
|||
--style="numbers,changes"
|
||||
--tabs=2
|
843
.config/nushell/config.nu
Normal file
843
.config/nushell/config.nu
Normal file
|
@ -0,0 +1,843 @@
|
|||
# Nushell Config File
|
||||
#
|
||||
# version = "0.91.0"
|
||||
|
||||
# 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
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
# 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: false # enables terminal shell integration. Off by default, as some terminals have issues with this.
|
||||
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.
|
||||
|
||||
plugins: {} # Per-plugin configuration. See https://www.nushell.sh/contributor-book/plugins.html#configuration.
|
||||
|
||||
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 }
|
||||
}
|
||||
{
|
||||
name: copy_selection
|
||||
modifier: control_shift
|
||||
keycode: char_c
|
||||
mode: emacs
|
||||
event: { edit: copyselection }
|
||||
}
|
||||
{
|
||||
name: cut_selection
|
||||
modifier: control_shift
|
||||
keycode: char_x
|
||||
mode: emacs
|
||||
event: { edit: cutselection }
|
||||
}
|
||||
{
|
||||
name: select_all
|
||||
modifier: control_shift
|
||||
keycode: char_a
|
||||
mode: emacs
|
||||
event: { edit: selectall }
|
||||
}
|
||||
{
|
||||
name: paste
|
||||
modifier: control_shift
|
||||
keycode: char_v
|
||||
mode: emacs
|
||||
event: { edit: pastecutbufferbefore }
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
use ~/.cache/starship/init.nu
|
1
.config/nushell/custom.nu
Normal file
1
.config/nushell/custom.nu
Normal file
|
@ -0,0 +1 @@
|
|||
alias cat = bat
|
107
.config/nushell/env.nu
Normal file
107
.config/nushell/env.nu
Normal file
|
@ -0,0 +1,107 @@
|
|||
# Nushell Environment Config File
|
||||
#
|
||||
# version = "0.91.0"
|
||||
load-env { "BAT_CONFIG_PATH": "~/.config/bat/bat.conf",
|
||||
"BAT_THEME": "1337" }
|
||||
|
||||
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')
|
||||
|
||||
$env.PATH = ($env.PATH | prepend '~/.cargo/bin')
|
||||
|
||||
mkdir ~/.cache/starship
|
||||
starship init nu | save -f ~/.cache/starship/init.nu
|
3
.config/nvim/ftplugin/html.lua
Normal file
3
.config/nvim/ftplugin/html.lua
Normal file
|
@ -0,0 +1,3 @@
|
|||
vim.opt_local.smartindent = true
|
||||
vim.opt_local.shiftwidth = 2
|
||||
vim.opt_local.tabstop = 2
|
18
.config/nvim/init.lua
Normal file
18
.config/nvim/init.lua
Normal file
|
@ -0,0 +1,18 @@
|
|||
-- Set options
|
||||
require("setopts")
|
||||
|
||||
-- Install plugins
|
||||
require("lazy-init")
|
||||
|
||||
-- Custom keybindings
|
||||
require("mappings")
|
||||
|
||||
-- Other custom settings
|
||||
require("misc")
|
||||
|
||||
indent_type = "Spaces"
|
||||
indent_width = 4
|
||||
column_width = 100
|
||||
quote_style = "AutoPreferDouble"
|
||||
call_parentheses = "NoSingleTable"
|
||||
|
1
.config/nvim/init.vim
Normal file
1
.config/nvim/init.vim
Normal file
|
@ -0,0 +1 @@
|
|||
source ~/.vimrc
|
24
.config/nvim/lua/lazy-init.lua
Normal file
24
.config/nvim/lua/lazy-init.lua
Normal file
|
@ -0,0 +1,24 @@
|
|||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
|
||||
-- Bootstrap package manager
|
||||
if not vim.loop.fs_stat(lazypath) then
|
||||
vim.fn.system {
|
||||
"git",
|
||||
"clone",
|
||||
"--filter=blob:none",
|
||||
"https://github.com/folke/lazy.nvim.git",
|
||||
"--branch=stable", -- latest stable release
|
||||
lazypath,
|
||||
}
|
||||
end
|
||||
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
-- Let's load some plugins!
|
||||
require("lazy").setup("plugins", {
|
||||
ui = {
|
||||
border = "rounded",
|
||||
}
|
||||
})
|
||||
|
||||
vim.cmd.colorscheme("catppuccin")
|
44
.config/nvim/lua/mappings.lua
Normal file
44
.config/nvim/lua/mappings.lua
Normal file
|
@ -0,0 +1,44 @@
|
|||
-- Better line nav
|
||||
vim.keymap.set({ "n", "v" }, "H", "^")
|
||||
vim.keymap.set({ "n", "v" }, "L", "$")
|
||||
|
||||
-- Buffers
|
||||
vim.keymap.set("n", "<leader>bc", ":bdelete<CR>", { silent = true, desc = "Close buffer" })
|
||||
vim.keymap.set("n", "<leader>bn", ":bnext<CR>", { silent = true, desc = "Next buffer" })
|
||||
vim.keymap.set("n", "<leader>bp", ":bprevious<CR>", { silent = true, desc = "Previous buffer" })
|
||||
|
||||
-- Tabs
|
||||
vim.keymap.set("n", "<leader>tt", ":tabnew<CR>", { silent = true, desc = "New Tab" })
|
||||
vim.keymap.set("n", "<leader>tc", ":tabclose<CR>", { silent = true, desc = "Close Tab" })
|
||||
vim.keymap.set("n", "<leader>tn", ":tabnext<CR>", { silent = true, desc = "Next Tab" })
|
||||
vim.keymap.set("n", "<leader>tp", ":tabprevious<CR>", { silent = true, desc = "Previous Tab" })
|
||||
vim.keymap.set("n", "<M-[>", ":tabprevious<CR>", { silent = true })
|
||||
vim.keymap.set("n", "<M-]>", ":tabnext<CR>", { silent = true })
|
||||
|
||||
-- Clear search highlights
|
||||
vim.keymap.set("n", "<BS>", ":nohlsearch<CR>", { silent = true })
|
||||
|
||||
-- Quick wrapt
|
||||
vim.keymap.set("n", "<C-q>", "gqip", { silent = true, desc = "Wrap current paragraph" })
|
||||
|
||||
-- Tab through search results
|
||||
vim.cmd([[
|
||||
set wildcharm=<C-z>
|
||||
cnoremap <expr><Tab> getcmdtype() =~ '[\/?]' ? "<C-g>" : "<C-z>"
|
||||
cnoremap <expr><S-Tab> getcmdtype() =~ '[\/?]' ? "<C-t>" : "<S-Tab>"
|
||||
]])
|
||||
|
||||
-- Make x not yank
|
||||
vim.keymap.set({ "n", "v" }, "x", '"_x')
|
||||
vim.keymap.set({ "n", "v" }, "X", '"_X')
|
||||
|
||||
-- Swap apostrophe and backtick
|
||||
vim.keymap.set({ "n", "v" }, "'", "`")
|
||||
vim.keymap.set({ "n", "v" }, "`", "'")
|
||||
|
||||
-- Quick edit all like this (budget multicursor)
|
||||
vim.keymap.set("n", "<C-s>", "*Ncgn", { desc = "Change all like this" })
|
||||
vim.keymap.set("v", "<C-s>", "y/<C-r>0<CR>Ncgn", { desc = "Change all like this" })
|
||||
|
||||
-- Easier exit from terminal mode
|
||||
vim.keymap.set("t", "<C-g>", "<C-\\><C-n>", { silent = true })
|
10
.config/nvim/lua/misc.lua
Normal file
10
.config/nvim/lua/misc.lua
Normal file
|
@ -0,0 +1,10 @@
|
|||
-- Highlighted yank
|
||||
local highlight_group = vim.api.nvim_create_augroup("highlight_yank", { clear = true })
|
||||
|
||||
vim.api.nvim_create_autocmd("TextYankPost", {
|
||||
callback = function()
|
||||
vim.highlight.on_yank()
|
||||
end,
|
||||
group = highlight_group,
|
||||
pattern = "*",
|
||||
})
|
45
.config/nvim/lua/setops.lua
Normal file
45
.config/nvim/lua/setops.lua
Normal file
|
@ -0,0 +1,45 @@
|
|||
vim.o.number = true
|
||||
vim.o.relativenumber = true
|
||||
vim.o.mouse = "a"
|
||||
vim.o.breakindent = true
|
||||
vim.o.undofile = true
|
||||
vim.o.ignorecase = true
|
||||
vim.o.smartcase = true
|
||||
vim.o.updatetime = 250
|
||||
vim.o.laststatus = 3
|
||||
vim.o.showmode = false
|
||||
vim.o.autochdir = true
|
||||
vim.o.autoread = true
|
||||
vim.o.backspace = "indent,eol,start"
|
||||
vim.wo.signcolumn = "yes:2"
|
||||
vim.wo.cursorline = true
|
||||
|
||||
vim.o.autoindent = true
|
||||
vim.o.smartindent = true
|
||||
vim.o.expandtab = true
|
||||
vim.o.smarttab = true
|
||||
vim.o.softtabstop = 4
|
||||
vim.o.tabstop = 4
|
||||
vim.o.shiftwidth = 4
|
||||
|
||||
vim.o.splitbelow = true
|
||||
vim.o.splitright = true
|
||||
|
||||
vim.o.foldmethod = "expr"
|
||||
vim.o.foldexpr = "nvim_treesitter#foldexpr()"
|
||||
vim.o.foldlevelstart = 999
|
||||
|
||||
vim.wo.scrolloff = 1
|
||||
|
||||
vim.o.termguicolors = true
|
||||
vim.o.background = "dark"
|
||||
|
||||
vim.o.completeopt = "menuone,noinsert,noselect"
|
||||
|
||||
vim.g.mapleader = " "
|
||||
vim.g.maplocalleader = ","
|
||||
|
||||
vim.o.winblend = 10
|
||||
vim.o.pumblend = 10
|
||||
|
||||
vim.opt.clipboard:append { 'unnamed', 'unnamedplus' }
|
0
.config/nvim/lua/utils.lua
Normal file
0
.config/nvim/lua/utils.lua
Normal file
51
.config/starship.toml
Normal file
51
.config/starship.toml
Normal file
|
@ -0,0 +1,51 @@
|
|||
# Inserts a blank line between shell prompts
|
||||
add_newline = true
|
||||
|
||||
[custom.direnv]
|
||||
command = 'echo "[missing: direnv allow]"'
|
||||
style = 'bold yellow'
|
||||
when = ''' [[ $(direnv status) =~ "Found RC allowed 1" ]] '''
|
||||
|
||||
# Replace the '❯' symbol in the prompt with '➜'
|
||||
[character] # The name of the module we are configuring is 'character'
|
||||
success_symbol = '[➜](bold green)' # The 'success_symbol' segment is being set to '➜' with the color 'bold green'
|
||||
|
||||
# Disable the package module, hiding it from the prompt completely
|
||||
[package]
|
||||
disabled = true
|
||||
|
||||
[git_branch]
|
||||
symbol = '🌱 '
|
||||
truncation_length = 20
|
||||
truncation_symbol = ''
|
||||
|
||||
[git_commit]
|
||||
commit_hash_length = 8
|
||||
tag_symbol = '🔖 '
|
||||
|
||||
[git_state]
|
||||
format = '[\($state( $progress_current of $progress_total)\)]($style) '
|
||||
cherry_pick = '[🍒 PICKING](bold red)'
|
||||
|
||||
[git_metrics]
|
||||
added_style = 'bold blue'
|
||||
format = '[+$added]($added_style)/[-$deleted]($deleted_style) '
|
||||
|
||||
[git_status]
|
||||
conflicted = '🏳'
|
||||
ahead = '🏎💨'
|
||||
behind = '😰'
|
||||
diverged = '😵'
|
||||
up_to_date = '✓'
|
||||
untracked = '🤷'
|
||||
stashed = '📦'
|
||||
modified = '📝'
|
||||
staged = '[++\($count\)](green)'
|
||||
renamed = '👅'
|
||||
deleted = '🗑'
|
||||
|
||||
[gradle]
|
||||
symbol = '🐘 '
|
||||
|
||||
[nodejs]
|
||||
format = 'via [🤖 $version](bold green) '
|
696178
.config/transmission/blocklists/blocklist
Normal file
696178
.config/transmission/blocklists/blocklist
Normal file
File diff suppressed because one or more lines are too long
BIN
.config/transmission/blocklists/blocklist.bin
Normal file
BIN
.config/transmission/blocklists/blocklist.bin
Normal file
Binary file not shown.
118
.config/transmission/settings.json
Normal file
118
.config/transmission/settings.json
Normal file
|
@ -0,0 +1,118 @@
|
|||
{
|
||||
"alt-speed-down": 50,
|
||||
"alt-speed-enabled": false,
|
||||
"alt-speed-time-begin": 540,
|
||||
"alt-speed-time-day": 127,
|
||||
"alt-speed-time-enabled": false,
|
||||
"alt-speed-time-end": 1020,
|
||||
"alt-speed-up": 50,
|
||||
"announce-ip": "",
|
||||
"announce-ip-enabled": false,
|
||||
"anti-brute-force-enabled": false,
|
||||
"anti-brute-force-threshold": 100,
|
||||
"bind-address-ipv4": "0.0.0.0",
|
||||
"bind-address-ipv6": "::",
|
||||
"blocklist-date": 1713754169,
|
||||
"blocklist-enabled": true,
|
||||
"blocklist-updates-enabled": true,
|
||||
"blocklist-url": "https://github.com/Naunter/BT_BlockLists/raw/master/bt_blocklists.gz",
|
||||
"cache-size-mb": 4,
|
||||
"compact-view": true,
|
||||
"default-trackers": "",
|
||||
"details-window-height": 554,
|
||||
"details-window-width": 700,
|
||||
"dht-enabled": true,
|
||||
"download-dir": "/home/oliver/Archive",
|
||||
"download-queue-enabled": true,
|
||||
"download-queue-size": 5,
|
||||
"encryption": 2,
|
||||
"idle-seeding-limit": 30,
|
||||
"idle-seeding-limit-enabled": false,
|
||||
"incomplete-dir": "/home/oliver/Downloads",
|
||||
"incomplete-dir-enabled": false,
|
||||
"inhibit-desktop-hibernation": false,
|
||||
"lpd-enabled": false,
|
||||
"main-window-height": 500,
|
||||
"main-window-is-maximized": 0,
|
||||
"main-window-width": 579,
|
||||
"main-window-x": 26,
|
||||
"main-window-y": 23,
|
||||
"message-level": 2,
|
||||
"open-dialog-dir": "/home/oliver",
|
||||
"peer-congestion-algorithm": "",
|
||||
"peer-id-ttl-hours": 6,
|
||||
"peer-limit-global": 200,
|
||||
"peer-limit-per-torrent": 50,
|
||||
"peer-port": 51413,
|
||||
"peer-port-random-high": 65535,
|
||||
"peer-port-random-low": 49152,
|
||||
"peer-port-random-on-start": false,
|
||||
"peer-socket-tos": "le",
|
||||
"pex-enabled": true,
|
||||
"port-forwarding-enabled": true,
|
||||
"preallocation": 1,
|
||||
"prefetch-enabled": true,
|
||||
"queue-stalled-enabled": true,
|
||||
"queue-stalled-minutes": 30,
|
||||
"ratio-limit": 2,
|
||||
"ratio-limit-enabled": false,
|
||||
"recent-download-dir-1": "/home/oliver/Archive",
|
||||
"rename-partial-files": true,
|
||||
"rpc-authentication-required": false,
|
||||
"rpc-bind-address": "0.0.0.0",
|
||||
"rpc-enabled": false,
|
||||
"rpc-host-whitelist": "",
|
||||
"rpc-host-whitelist-enabled": true,
|
||||
"rpc-password": "{a8bd1b183d1edd4b2d5b6ed1c02a7257827bf8f0CXwRV4hR",
|
||||
"rpc-port": 9091,
|
||||
"rpc-socket-mode": "0750",
|
||||
"rpc-url": "/transmission/",
|
||||
"rpc-username": "",
|
||||
"rpc-whitelist": "127.0.0.1,::1",
|
||||
"rpc-whitelist-enabled": true,
|
||||
"scrape-paused-torrents-enabled": true,
|
||||
"script-torrent-added-enabled": false,
|
||||
"script-torrent-added-filename": "",
|
||||
"script-torrent-done-enabled": false,
|
||||
"script-torrent-done-filename": "",
|
||||
"script-torrent-done-seeding-enabled": false,
|
||||
"script-torrent-done-seeding-filename": "",
|
||||
"seed-queue-enabled": false,
|
||||
"seed-queue-size": 10,
|
||||
"show-backup-trackers": false,
|
||||
"show-extra-peer-details": false,
|
||||
"show-filterbar": true,
|
||||
"show-notification-area-icon": false,
|
||||
"show-options-window": true,
|
||||
"show-statusbar": true,
|
||||
"show-toolbar": false,
|
||||
"show-tracker-scrapes": false,
|
||||
"sort-mode": "sort-by-ratio",
|
||||
"sort-reversed": false,
|
||||
"speed-limit-down": 100,
|
||||
"speed-limit-down-enabled": true,
|
||||
"speed-limit-up": 100,
|
||||
"speed-limit-up-enabled": false,
|
||||
"start-added-torrents": true,
|
||||
"statusbar-stats": "total-ratio",
|
||||
"tcp-enabled": true,
|
||||
"torrent-added-notification-enabled": true,
|
||||
"torrent-added-verify-mode": "fast",
|
||||
"torrent-complete-notification-enabled": true,
|
||||
"torrent-complete-sound-command": [
|
||||
"canberra-gtk-play",
|
||||
"-i",
|
||||
"complete-download",
|
||||
"-d",
|
||||
"transmission torrent downloaded"
|
||||
],
|
||||
"torrent-complete-sound-enabled": true,
|
||||
"trash-can-enabled": true,
|
||||
"trash-original-torrent-files": true,
|
||||
"umask": "022",
|
||||
"upload-slots-per-torrent": 14,
|
||||
"user-has-given-informed-consent": true,
|
||||
"utp-enabled": true,
|
||||
"watch-dir": "/home/oliver/Downloads",
|
||||
"watch-dir-enabled": false
|
||||
}
|
14
.gitconfig
Normal file
14
.gitconfig
Normal file
|
@ -0,0 +1,14 @@
|
|||
[color]
|
||||
ui = true
|
||||
|
||||
[merge]
|
||||
tool = nvim
|
||||
|
||||
[mergetool "nvim"]
|
||||
cmd = nvim -f -c \"DiffviewOpen\"
|
||||
|
||||
[mergetool]
|
||||
prompt = true
|
||||
|
||||
[init]
|
||||
defaultBranch = main
|
10
.gitignore
vendored
Normal file
10
.gitignore
vendored
Normal file
|
@ -0,0 +1,10 @@
|
|||
.DS_Store
|
||||
|
||||
# Log files
|
||||
*.log
|
||||
*.log.*
|
||||
|
||||
# Vim cache files
|
||||
Session.vim
|
||||
.netrwhist
|
||||
nvim/.config/nvim/lazy-lock.json
|
0
.mozilla/firefox/default-dev/.parentlock
Normal file
0
.mozilla/firefox/default-dev/.parentlock
Normal file
1216
.mozilla/firefox/default-dev/user.js
Normal file
1216
.mozilla/firefox/default-dev/user.js
Normal file
File diff suppressed because it is too large
Load diff
0
.mozilla/firefox/default/.parentlock
Normal file
0
.mozilla/firefox/default/.parentlock
Normal file
1216
.mozilla/firefox/default/user.js
Normal file
1216
.mozilla/firefox/default/user.js
Normal file
File diff suppressed because it is too large
Load diff
29
.zsh_aliases
Normal file
29
.zsh_aliases
Normal file
|
@ -0,0 +1,29 @@
|
|||
# ZSH Aliases
|
||||
alias l="ls -l"
|
||||
alias dirs="dirs -v"
|
||||
alias chmod="chmod -v"
|
||||
alias chown="chown -v"
|
||||
alias cp="cp -v"
|
||||
alias ln="ln -v"
|
||||
alias mkdir="mkdir -v"
|
||||
alias mv="mv -v"
|
||||
alias rm="rm -v"
|
||||
alias rmdir="rmdir -v"
|
||||
alias xz="xz -v"
|
||||
|
||||
#alias alacritty="alacritty --config-file ~/.config/alacritty.toml"
|
||||
#alias ls="exa"
|
||||
alias cat="bat"
|
||||
alias rm="bleachbit -o"
|
||||
|
||||
alias ls="ls --color=auto"
|
||||
alias l="ls -CF"
|
||||
alias ll="ls -lav --gnore=.."
|
||||
alias la="ls -A"
|
||||
alias reload="exec bash"
|
||||
alias ..="cd .."
|
||||
|
||||
# git aliases
|
||||
alias gitacp="git add . && git commit -m 'updates' && git push"
|
||||
alias gitinit="git init && git add . && git commit -m 'init'"
|
||||
alias gits="git status --show-stash"
|
101
.zshrc
Normal file
101
.zshrc
Normal file
|
@ -0,0 +1,101 @@
|
|||
. "$HOME/.zsh_aliases"
|
||||
. "$HOME/.cargo/env"
|
||||
|
||||
# ZSH has a quirk where `preexec` is only run if a command is actually run (i.e
|
||||
# pressing ENTER at an empty command line will not cause preexec to fire). This
|
||||
# can cause timing issues, as a user who presses "ENTER" without running a command
|
||||
# will see the time to the start of the last command, which may be very large.
|
||||
|
||||
# To fix this, we create STARSHIP_START_TIME upon preexec() firing, and destroy it
|
||||
# after drawing the prompt. This ensures that the timing for one command is only
|
||||
# ever drawn once (for the prompt immediately after it is run).
|
||||
|
||||
zmodload zsh/parameter # Needed to access jobstates variable for STARSHIP_JOBS_COUNT
|
||||
|
||||
# Defines a function `__starship_get_time` that sets the time since epoch in millis in STARSHIP_CAPTURED_TIME.
|
||||
if [[ $ZSH_VERSION == ([1-4]*) ]]; then
|
||||
# ZSH <= 5; Does not have a built-in variable so we will rely on Starship's inbuilt time function.
|
||||
__starship_get_time() {
|
||||
STARSHIP_CAPTURED_TIME=$(/home/oliver/.cargo/bin/starship time)
|
||||
}
|
||||
else
|
||||
zmodload zsh/datetime
|
||||
zmodload zsh/mathfunc
|
||||
__starship_get_time() {
|
||||
(( STARSHIP_CAPTURED_TIME = int(rint(EPOCHREALTIME * 1000)) ))
|
||||
}
|
||||
fi
|
||||
|
||||
# The two functions below follow the naming convention `prompt_<theme>_<hook>`
|
||||
# for compatibility with Zsh's prompt system. See
|
||||
# https://github.com/zsh-users/zsh/blob/2876c25a28b8052d6683027998cc118fc9b50157/Functions/Prompts/promptinit#L155
|
||||
|
||||
# Runs before each new command line.
|
||||
prompt_starship_precmd() {
|
||||
# Save the status, because subsequent commands in this function will change $?
|
||||
STARSHIP_CMD_STATUS=$? STARSHIP_PIPE_STATUS=(${pipestatus[@]})
|
||||
|
||||
# Calculate duration if a command was executed
|
||||
if (( ${+STARSHIP_START_TIME} )); then
|
||||
__starship_get_time && (( STARSHIP_DURATION = STARSHIP_CAPTURED_TIME - STARSHIP_START_TIME ))
|
||||
unset STARSHIP_START_TIME
|
||||
# Drop status and duration otherwise
|
||||
else
|
||||
unset STARSHIP_DURATION STARSHIP_CMD_STATUS STARSHIP_PIPE_STATUS
|
||||
fi
|
||||
|
||||
# Use length of jobstates array as number of jobs. Expansion fails inside
|
||||
# quotes so we set it here and then use the value later on.
|
||||
STARSHIP_JOBS_COUNT=${#jobstates}
|
||||
}
|
||||
|
||||
# Runs after the user submits the command line, but before it is executed and
|
||||
# only if there's an actual command to run
|
||||
prompt_starship_preexec() {
|
||||
__starship_get_time && STARSHIP_START_TIME=$STARSHIP_CAPTURED_TIME
|
||||
}
|
||||
|
||||
# Add hook functions
|
||||
autoload -Uz add-zsh-hook
|
||||
add-zsh-hook precmd prompt_starship_precmd
|
||||
add-zsh-hook preexec prompt_starship_preexec
|
||||
|
||||
# Set up a function to redraw the prompt if the user switches vi modes
|
||||
starship_zle-keymap-select() {
|
||||
zle reset-prompt
|
||||
}
|
||||
|
||||
## Check for existing keymap-select widget.
|
||||
# zle-keymap-select is a special widget so it'll be "user:fnName" or nothing. Let's get fnName only.
|
||||
__starship_preserved_zle_keymap_select=${widgets[zle-keymap-select]#user:}
|
||||
if [[ -z $__starship_preserved_zle_keymap_select ]]; then
|
||||
zle -N zle-keymap-select starship_zle-keymap-select;
|
||||
else
|
||||
# Define a wrapper fn to call the original widget fn and then Starship's.
|
||||
starship_zle-keymap-select-wrapped() {
|
||||
$__starship_preserved_zle_keymap_select "$@";
|
||||
starship_zle-keymap-select "$@";
|
||||
}
|
||||
zle -N zle-keymap-select starship_zle-keymap-select-wrapped;
|
||||
fi
|
||||
|
||||
export STARSHIP_SHELL="zsh"
|
||||
|
||||
# Set up the session key that will be used to store logs
|
||||
STARSHIP_SESSION_KEY="$RANDOM$RANDOM$RANDOM$RANDOM$RANDOM"; # Random generates a number b/w 0 - 32767
|
||||
STARSHIP_SESSION_KEY="${STARSHIP_SESSION_KEY}0000000000000000" # Pad it to 16+ chars.
|
||||
export STARSHIP_SESSION_KEY=${STARSHIP_SESSION_KEY:0:16}; # Trim to 16-digits if excess.
|
||||
|
||||
VIRTUAL_ENV_DISABLE_PROMPT=1
|
||||
|
||||
setopt promptsubst
|
||||
|
||||
PROMPT='$(/home/oliver/.cargo/bin/starship prompt --terminal-width="$COLUMNS" --keymap="${KEYMAP:-}" --status="$STARSHIP_CMD_STATUS" --pipestatus="${STARSHIP_PIPE_STATUS[*]}" --cmd-duration="${STARSHIP_DURATION:-}" --jobs="$STARSHIP_JOBS_COUNT")'
|
||||
|
||||
RPROMPT='$(/home/oliver/.cargo/bin/starship prompt --right --terminal-width="$COLUMNS" --keymap="${KEYMAP:-}" --status="$STARSHIP_CMD_STATUS" --pipestatus="${STARSHIP_PIPE_STATUS[*]}" --cmd-duration="${STARSHIP_DURATION:-}" --jobs="$STARSHIP_JOBS_COUNT")'
|
||||
|
||||
PROMPT2="$(/home/oliver/.cargo/bin/starship prompt --continuation)"
|
||||
|
||||
# Only load liquidprompt in interactive shells, not from a script or from scp
|
||||
# echo $- | grep -q i 2>/dev/null && . /usr/share/liquidprompt/liquidprompt
|
||||
|
123
CAD_CoreSettings.json
Normal file
123
CAD_CoreSettings.json
Normal file
|
@ -0,0 +1,123 @@
|
|||
{
|
||||
"settings": [
|
||||
{
|
||||
"name": "activeMode",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "cacheCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "cleanCookiesFromOpenTabsOnStartup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "cleanExpiredCookies",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "contextMenus",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "contextualIdentities",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "contextualIdentitiesAutoRemove",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "debugMode",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "delayBeforeClean",
|
||||
"value": 15
|
||||
},
|
||||
{
|
||||
"name": "discardedCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "domainChangeCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "enableGreyListCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "enableNewVersionPopup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"id": "DEPRECATED - use default expressions",
|
||||
"name": "greyCleanLocalstorage",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "indexedDBCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "keepDefaultIcon",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"id": "DEPRECATED - use localStorageCleanup",
|
||||
"name": "localstorageCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "localStorageCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "manualNotifications",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "notificationOnScreen",
|
||||
"value": 3
|
||||
},
|
||||
{
|
||||
"name": "pluginDataCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "serviceWorkersCleanup",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "showNotificationAfterCleanup",
|
||||
"value": false
|
||||
},
|
||||
{
|
||||
"name": "showNumOfCookiesInIcon",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "siteDataEmptyOnEnable",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"name": "sizePopup",
|
||||
"value": 16
|
||||
},
|
||||
{
|
||||
"name": "sizeSetting",
|
||||
"value": 16
|
||||
},
|
||||
{
|
||||
"name": "statLogging",
|
||||
"value": true
|
||||
},
|
||||
{
|
||||
"id": "DEPRECATED - use default expressions",
|
||||
"name": "whiteCleanLocalstorage",
|
||||
"value": false
|
||||
}
|
||||
]
|
||||
}
|
121
LICENSE
Normal file
121
LICENSE
Normal file
|
@ -0,0 +1,121 @@
|
|||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
44
MyThunderbirdFeeds-Feeds.opml
Normal file
44
MyThunderbirdFeeds-Feeds.opml
Normal file
|
@ -0,0 +1,44 @@
|
|||
<opml version="1.0" xmlns:fz="urn:forumzilla:">
|
||||
<head>
|
||||
<title>Thunderbird OPML Export - Feeds</title>
|
||||
<dateCreated>Tue, 23 Apr 2024 00:57:27 GMT</dateCreated>
|
||||
</head>
|
||||
<body>
|
||||
<outline title="The Thunderbird Blog">
|
||||
<outline type="rss" title="The Thunderbird Blog" text="The Thunderbird Blog" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636048,"lastDownloadTime":1713548509861,"updatePeriod":"hourly","updateFrequency":"1","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://blog.thunderbird.net/feed/" htmlUrl="https://blog.thunderbird.net/"/></outline>
|
||||
<outline title="juliabloggerscom">
|
||||
<outline type="rss" title="juliabloggers.com" text="juliabloggers.com" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636279,"lastDownloadTime":1713548511654,"updatePeriod":"hourly","updateFrequency":"1","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://www.juliabloggers.com/feed/" htmlUrl="https://www.juliabloggers.com"/></outline>
|
||||
<outline title="dthompson">
|
||||
<outline type="rss" title="dthompson" text="dthompson" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636064,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://dthompson.us/feed.xml" htmlUrl=""/></outline>
|
||||
<outline title="Forgejo News">
|
||||
<outline type="rss" title="Forgejo News" text="Forgejo News" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829638952,"lastDownloadTime":1713473122040,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://forgejo.org/rss.xml" htmlUrl="https://forgejo.org/"/></outline>
|
||||
<outline title="Debian micronews">
|
||||
<outline type="rss" title="Debian micronews" text="Debian micronews" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636053,"lastDownloadTime":1713581416152,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://micronews.debian.org/feeds/feed.rss" htmlUrl="https://micronews.debian.org/"/></outline>
|
||||
<outline title="flypigcouk - News">
|
||||
<outline type="rss" title="flypig.co.uk - News" text="flypig.co.uk - News" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636983,"lastDownloadTime":1713829636983,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://www.flypig.co.uk/rss.php?list=gecko" htmlUrl="https://www.flypig.co.uk/home?"/></outline>
|
||||
<outline title="Ludovic Henry">
|
||||
<outline type="rss" title="Ludovic Henry" text="Ludovic Henry" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829635817,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://blog.ludovic.dev/feed.xml" htmlUrl="https://blog.ludovic.dev/feed.xml"/></outline>
|
||||
<outline title="reproducible-buildsorg">
|
||||
<outline type="rss" title="reproducible-builds.org" text="reproducible-builds.org" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636454,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://reproducible-builds.org/blog/index.rss" htmlUrl="https://reproducible-builds.org/blog/"/></outline>
|
||||
<outline title="Guillaume Gomez's blog">
|
||||
<outline type="rss" title="Guillaume Gomez's blog" text="Guillaume Gomez's blog" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713832459054,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://blog.guillaume-gomez.fr/atom" htmlUrl="https://blog.guillaume-gomez.fr/atom"/></outline>
|
||||
<outline title="Nikolai Vazquez">
|
||||
<outline type="rss" title="Nikolai Vazquez" text="Nikolai Vazquez" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636347,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://nikolaivazquez.com/rss.xml" htmlUrl="https://nikolaivazquez.com/"/></outline>
|
||||
<outline title="Codeberg News">
|
||||
<outline type="rss" title="Codeberg News" text="Codeberg News" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636455,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://blog.codeberg.org/feeds/all.atom.xml" htmlUrl="https://blog.codeberg.org/feeds/all.atom.xml"/></outline>
|
||||
<outline title="Planet Debian">
|
||||
<outline type="rss" title="Planet Debian" text="Planet Debian" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829639716,"lastDownloadTime":1713829639716,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://planet.debian.org/rss20.xml" htmlUrl="https://planet.debian.org/"/></outline>
|
||||
<outline title="The Modos Blog">
|
||||
<outline type="rss" title="The Modos Blog" text="The Modos Blog" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829637090,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://www.modos.tech/rss" htmlUrl="https://www.modos.tech"/></outline>
|
||||
<outline title="This Week in Rust">
|
||||
<outline type="rss" title="This Week in Rust" text="This Week in Rust" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636898,"lastDownloadTime":1713401773564,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://this-week-in-rust.org/rss.xml" htmlUrl="https://this-week-in-rust.org/"/></outline>
|
||||
<outline title="Debian News">
|
||||
<outline type="rss" title="Debian News" text="Debian News" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636137,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://www.debian.org/News/news" htmlUrl="https://www.debian.org/News/"/></outline>
|
||||
<outline title="Pluralistic Daily links from Cory Doctorow">
|
||||
<outline type="rss" title="Pluralistic: Daily links from Cory Doctorow" text="Pluralistic: Daily links from Cory Doctorow" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636386,"lastDownloadTime":1713773246275,"updatePeriod":"hourly","updateFrequency":"1","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://pluralistic.net/feed/" htmlUrl="https://pluralistic.net"/></outline>
|
||||
<outline title="Bits from Debian">
|
||||
<outline type="rss" title="Bits from Debian" text="Bits from Debian" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829651486,"lastDownloadTime":null,"updatePeriod":"","updateFrequency":"","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://bits.debian.org/feeds/feed.rss" htmlUrl="https://bits.debian.org/"/></outline>
|
||||
<outline title="Drops of wisdom, knowledge and news from OpenSIPS">
|
||||
<outline type="rss" title="Drops of wisdom, knowledge and news from OpenSIPS" text="Drops of wisdom, knowledge and news from OpenSIPS" version="RSS" fz:quickMode="false" fz:options="{"version":2,"updates":{"enabled":true,"updateMinutes":100,"updateUnits":"min","lastUpdateTime":1713829636524,"lastDownloadTime":null,"updatePeriod":"hourly","updateFrequency":"1","updateBase":""},"category":{"enabled":false,"prefixEnabled":false,"prefix":""}}" xmlUrl="https://blog.opensips.org/feed/" htmlUrl="https://blog.opensips.org"/></outline>
|
||||
</body>
|
||||
</opml>
|
24
README.md
Normal file
24
README.md
Normal file
|
@ -0,0 +1,24 @@
|
|||
# dot-files
|
||||
|
||||
[Firefox Color](https://color.firefox.com/?theme=XQAAAAJpAwAAAAAAAABBqYhm849SCicxcUPhLCuG_ebZUZXOFrRzar2gz38UVMJdZT4ZZKwD5YjAOOvXu7885V_JlWR_dREELdCG2ZHQcuSpt7u7nnj-oR5jyKgddzAKBrw1jOO8I8O4tM45oP_qDvlKTS1QGgE0h4nvq2f-lLLOteAUFrBWZhi6MrrR5glIymB0TmY6qfHddi_zkG1vN_U8k9elFzus08rzaLtRdsaGDFB1r27_odAogPI4q4ev28o7ZUp1VIVVOuCU_5vnozX0PO0b7YlgCAt0oI5G9lEGPUATiCOenh6zBmLozBfDYpSZD3RorGj4dUurs-JqcMdI-VZPShnnUbO6pNrjSpkLiO87tbF602Y9IuQDn2K5g_vQsMEGW3l8EB0nQ7PxJqLV7MYQUjRtOPAYLcN8z6FN1AkjEm6sJjlHtSpX9I9MmRiNiPwysQWwszldnY7B8h_UZ6x7U6zrsvAhfGhltgBg1dvJUeigRd_92Xo8)
|
||||
|
||||
[Contents of `dot-files` are CC0 No Rights Reserved (C) 2024 h759bkyo4
|
||||
h759bkyo4@mozmail.com](https://codeberg.org/h759bkyo4/dot-files/LICENSE)
|
||||
|
||||
The Following (*) Are Exceptions:
|
||||
|
||||
* fonts/Ligconsolata-Bold.ttf
|
||||
* fonts/Inconsolata-SemiBold.otf
|
||||
* fonts/Inconsolata-SemiBold.ttf
|
||||
* fonts/Inconsolata[wdth,wght].ttf
|
||||
* fonts/Ligconsolata-Regular.ttf
|
||||
|
||||
Copyright 2006 The Inconsolata Project Authors
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is available in fonts/, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
* .config/firefox/user.js
|
||||
|
||||
[Copyright (c) 2020 arkenfox](https://github.com/arkenfox/user.js/blob/master/LICENSE.txt)
|
54
crates
Normal file
54
crates
Normal file
|
@ -0,0 +1,54 @@
|
|||
bat v0.24.0:
|
||||
bat
|
||||
bottom v0.9.6:
|
||||
btm
|
||||
broot v1.36.1:
|
||||
broot
|
||||
cargo-machete v0.6.1:
|
||||
cargo-machete
|
||||
cargo-update v13.3.0:
|
||||
cargo-install-update
|
||||
cargo-install-update-config
|
||||
cargo-watch v8.5.2:
|
||||
cargo-watch
|
||||
dua v1.1.0:
|
||||
dua
|
||||
exa v0.10.1:
|
||||
exa
|
||||
fd-find v9.0.0:
|
||||
fd
|
||||
fend v1.4.5:
|
||||
fend
|
||||
flamegraph v0.6.5:
|
||||
cargo-flamegraph
|
||||
flamegraph
|
||||
hyperfine v1.18.0:
|
||||
hyperfine
|
||||
mdbook v0.4.37:
|
||||
mdbook
|
||||
mdbook-linkcheck v0.7.7:
|
||||
mdbook-linkcheck
|
||||
mdbook-mermaid v0.13.0:
|
||||
mdbook-mermaid
|
||||
mdbook-toc v0.14.2:
|
||||
mdbook-toc
|
||||
nu v0.91.0:
|
||||
nu
|
||||
procs v0.14.5:
|
||||
procs
|
||||
ripgrep v14.1.0:
|
||||
rg
|
||||
so v0.4.9:
|
||||
so
|
||||
srgn v0.11.0:
|
||||
srgn
|
||||
starship v1.17.1:
|
||||
starship
|
||||
tokei v12.1.2:
|
||||
tokei
|
||||
typst-cli v0.11.0 (https://github.com/typst/typst#e6f7cc12):
|
||||
typst
|
||||
ytop v0.6.2:
|
||||
ytop
|
||||
zellij v0.39.2:
|
||||
zellij
|
BIN
fonts/Inconsolata-SemiBold.otf
Normal file
BIN
fonts/Inconsolata-SemiBold.otf
Normal file
Binary file not shown.
BIN
fonts/Inconsolata-SemiBold.ttf
Normal file
BIN
fonts/Inconsolata-SemiBold.ttf
Normal file
Binary file not shown.
BIN
fonts/Inconsolata[wdth,wght].ttf
Normal file
BIN
fonts/Inconsolata[wdth,wght].ttf
Normal file
Binary file not shown.
BIN
fonts/Ligconsolata-Bold.ttf
Normal file
BIN
fonts/Ligconsolata-Bold.ttf
Normal file
Binary file not shown.
BIN
fonts/Ligconsolata-Regular.ttf
Normal file
BIN
fonts/Ligconsolata-Regular.ttf
Normal file
Binary file not shown.
93
fonts/OFL.txt
Normal file
93
fonts/OFL.txt
Normal file
|
@ -0,0 +1,93 @@
|
|||
Copyright 2006 The Inconsolata Project Authors
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
1
profile.code-profile
Normal file
1
profile.code-profile
Normal file
File diff suppressed because one or more lines are too long
8
update.sh
Executable file
8
update.sh
Executable file
|
@ -0,0 +1,8 @@
|
|||
echo "Start apt, cargo and rustup upgrade:\n"
|
||||
sudo apt update && sudo apt upgrade -y
|
||||
echo "\nDone apt starting cargo\n"
|
||||
cargo-install-update install-update --all
|
||||
echo "\nDone cargo starting rustup\n"
|
||||
rustup self update
|
||||
rustup update
|
||||
echo "\nFinished updates."
|
Loading…
Reference in a new issue