Adds Arch Linux dotfiles
19
.gitignore
vendored
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
/Code
|
||||||
|
aseprite/
|
||||||
|
Thunar/
|
||||||
|
KDE/
|
||||||
|
kde.org/
|
||||||
|
kdedefaults/
|
||||||
|
kdeglobals
|
||||||
|
kdfrc
|
||||||
|
kfontviewrc
|
||||||
|
kglobalshortcutsrc
|
||||||
|
khotkey
|
||||||
|
khtml/
|
||||||
|
bruno/
|
||||||
|
discord/
|
||||||
|
google-chrome/
|
||||||
|
inkscape/
|
||||||
|
kate/
|
||||||
|
libaccounts-glib/
|
||||||
|
kwinrc
|
||||||
7
fish/completions/fisher.fish
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
complete --command fisher --exclusive --long help --description "Print help"
|
||||||
|
complete --command fisher --exclusive --long version --description "Print version"
|
||||||
|
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments install --description "Install plugins"
|
||||||
|
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments update --description "Update installed plugins"
|
||||||
|
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments remove --description "Remove installed plugins"
|
||||||
|
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments list --description "List installed plugins matching regex"
|
||||||
|
complete --command fisher --exclusive --condition "__fish_seen_subcommand_from update remove" --arguments "(fisher list)"
|
||||||
8
fish/completions/fzf_configure_bindings.fish
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
complete fzf_configure_bindings --no-files
|
||||||
|
complete fzf_configure_bindings --long help --short h --description "Print help" --condition "not __fish_seen_argument --help -h"
|
||||||
|
complete fzf_configure_bindings --long directory --description "Change the key binding for Search Directory" --condition "not __fish_seen_argument --directory"
|
||||||
|
complete fzf_configure_bindings --long git_log --description "Change the key binding for Search Git Log" --condition "not __fish_seen_argument --git_log"
|
||||||
|
complete fzf_configure_bindings --long git_status --description "Change the key binding for Search Git Status" --condition "not __fish_seen_argument --git_status"
|
||||||
|
complete fzf_configure_bindings --long history --description "Change the key binding for Search History" --condition "not __fish_seen_argument --history"
|
||||||
|
complete fzf_configure_bindings --long processes --description "Change the key binding for Search Processes" --condition "not __fish_seen_argument --processes"
|
||||||
|
complete fzf_configure_bindings --long variables --description "Change the key binding for Search Variables" --condition "not __fish_seen_argument --variables"
|
||||||
21
fish/completions/nvm.fish
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
complete --command nvm --exclusive
|
||||||
|
complete --command nvm --exclusive --long version --description "Print version"
|
||||||
|
complete --command nvm --exclusive --long help --description "Print help"
|
||||||
|
complete --command nvm --long silent --description "Suppress standard output"
|
||||||
|
|
||||||
|
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments install --description "Download and activate the specified Node version"
|
||||||
|
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments use --description "Activate the specified Node version in the current shell"
|
||||||
|
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list --description "List installed Node versions"
|
||||||
|
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list-remote --description "List available Node versions to install"
|
||||||
|
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments current --description "Print the currently-active Node version"
|
||||||
|
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from install" --arguments "(
|
||||||
|
test -e $nvm_data && string split ' ' <$nvm_data/.index
|
||||||
|
)"
|
||||||
|
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use" --arguments "(_nvm_list | string split ' ')"
|
||||||
|
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments uninstall --description "Uninstall the specified Node version"
|
||||||
|
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from uninstall" --arguments "(
|
||||||
|
_nvm_list | string split ' ' | string replace system ''
|
||||||
|
)"
|
||||||
|
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use uninstall" --arguments "(
|
||||||
|
set --query nvm_default_version && echo default
|
||||||
|
)"
|
||||||
28
fish/conf.d/fzf.fish
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# fzf.fish is only meant to be used in interactive mode. If not in interactive mode and not in CI, skip the config to speed up shell startup
|
||||||
|
if not status is-interactive && test "$CI" != true
|
||||||
|
exit
|
||||||
|
end
|
||||||
|
|
||||||
|
# Because of scoping rules, to capture the shell variables exactly as they are, we must read
|
||||||
|
# them before even executing _fzf_search_variables. We use psub to store the
|
||||||
|
# variables' info in temporary files and pass in the filenames as arguments.
|
||||||
|
# This variable is global so that it can be referenced by fzf_configure_bindings and in tests
|
||||||
|
set --global _fzf_search_vars_command '_fzf_search_variables (set --show | psub) (set --names | psub)'
|
||||||
|
|
||||||
|
|
||||||
|
# Install the default bindings, which are mnemonic and minimally conflict with fish's preset bindings
|
||||||
|
fzf_configure_bindings
|
||||||
|
|
||||||
|
# Doesn't erase autoloaded _fzf_* functions because they are not easily accessible once key bindings are erased
|
||||||
|
function _fzf_uninstall --on-event fzf_uninstall
|
||||||
|
_fzf_uninstall_bindings
|
||||||
|
|
||||||
|
set --erase _fzf_search_vars_command
|
||||||
|
functions --erase _fzf_uninstall _fzf_migration_message _fzf_uninstall_bindings fzf_configure_bindings
|
||||||
|
complete --erase fzf_configure_bindings
|
||||||
|
|
||||||
|
set_color cyan
|
||||||
|
echo "fzf.fish uninstalled."
|
||||||
|
echo "You may need to manually remove fzf_configure_bindings from your config.fish if you were using custom key bindings."
|
||||||
|
set_color normal
|
||||||
|
end
|
||||||
28
fish/conf.d/nvm.fish
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
set --query nvm_mirror || set --global nvm_mirror https://nodejs.org/dist
|
||||||
|
set --query XDG_DATA_HOME || set --local XDG_DATA_HOME ~/.local/share
|
||||||
|
set --global nvm_data $XDG_DATA_HOME/nvm
|
||||||
|
|
||||||
|
function _nvm_install --on-event nvm_install
|
||||||
|
test ! -d $nvm_data && command mkdir -p $nvm_data
|
||||||
|
echo "Downloading the Node distribution index..." 2>/dev/null
|
||||||
|
_nvm_index_update
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_update --on-event nvm_update
|
||||||
|
set --query --universal nvm_data && set --erase --universal nvm_data
|
||||||
|
set --query --universal nvm_mirror && set --erase --universal nvm_mirror
|
||||||
|
set --query nvm_mirror || set --global nvm_mirror https://nodejs.org/dist
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_uninstall --on-event nvm_uninstall
|
||||||
|
command rm -rf $nvm_data
|
||||||
|
|
||||||
|
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
|
||||||
|
|
||||||
|
set --names | string replace --filter --regex -- "^nvm" "set --erase nvm" | source
|
||||||
|
functions --erase (functions --all | string match --entire --regex -- "^_nvm_")
|
||||||
|
end
|
||||||
|
|
||||||
|
if status is-interactive && set --query nvm_default_version && ! set --query nvm_current_version
|
||||||
|
nvm use --silent $nvm_default_version
|
||||||
|
end
|
||||||
1
fish/conf.d/rustup.fish
Normal file
@@ -0,0 +1 @@
|
|||||||
|
source "$HOME/.cargo/env.fish"
|
||||||
5
fish/config.fish
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
if status is-interactive
|
||||||
|
# Commands to run in interactive sessions can go here
|
||||||
|
end
|
||||||
|
|
||||||
|
alias open_file='fzf --preview "less {}" | xargs -o vim'
|
||||||
3
fish/fish_plugins
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
jorgebucaran/fisher
|
||||||
|
jorgebucaran/nvm.fish
|
||||||
|
patrickf1/fzf.fish
|
||||||
36
fish/fish_variables
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
# This file contains fish universal variable definitions.
|
||||||
|
# VERSION: 3.0
|
||||||
|
SETUVAR __fish_initialized:3400
|
||||||
|
SETUVAR _fisher_jorgebucaran_2F_fisher_files:\x7e/\x2econfig/fish/functions/fisher\x2efish\x1e\x7e/\x2econfig/fish/completions/fisher\x2efish
|
||||||
|
SETUVAR _fisher_jorgebucaran_2F_nvm_2E_fish_files:\x7e/\x2econfig/fish/functions/_nvm_index_update\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_list\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_activate\x2efish\x1e\x7e/\x2econfig/fish/functions/_nvm_version_deactivate\x2efish\x1e\x7e/\x2econfig/fish/functions/nvm\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/nvm\x2efish\x1e\x7e/\x2econfig/fish/completions/nvm\x2efish
|
||||||
|
SETUVAR _fisher_patrickf1_2F_fzf_2E_fish_files:\x7e/\x2econfig/fish/functions/_fzf_configure_bindings_help\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_extract_var_info\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_preview_changed_file\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_preview_file\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_report_diff_type\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_report_file_type\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_directory\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_git_log\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_git_status\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_history\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_processes\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_search_variables\x2efish\x1e\x7e/\x2econfig/fish/functions/_fzf_wrapper\x2efish\x1e\x7e/\x2econfig/fish/functions/fzf_configure_bindings\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/fzf\x2efish\x1e\x7e/\x2econfig/fish/completions/fzf_configure_bindings\x2efish
|
||||||
|
SETUVAR _fisher_plugins:jorgebucaran/fisher\x1ejorgebucaran/nvm\x2efish\x1epatrickf1/fzf\x2efish
|
||||||
|
SETUVAR _fisher_upgraded_to_4_4:\x1d
|
||||||
|
SETUVAR fish_color_autosuggestion:brblack
|
||||||
|
SETUVAR fish_color_cancel:\x2dr
|
||||||
|
SETUVAR fish_color_command:blue
|
||||||
|
SETUVAR fish_color_comment:red
|
||||||
|
SETUVAR fish_color_cwd:green
|
||||||
|
SETUVAR fish_color_cwd_root:red
|
||||||
|
SETUVAR fish_color_end:green
|
||||||
|
SETUVAR fish_color_error:brred
|
||||||
|
SETUVAR fish_color_escape:brcyan
|
||||||
|
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||||
|
SETUVAR fish_color_host:normal
|
||||||
|
SETUVAR fish_color_host_remote:yellow
|
||||||
|
SETUVAR fish_color_normal:normal
|
||||||
|
SETUVAR fish_color_operator:brcyan
|
||||||
|
SETUVAR fish_color_param:cyan
|
||||||
|
SETUVAR fish_color_quote:yellow
|
||||||
|
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
|
||||||
|
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
|
||||||
|
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
||||||
|
SETUVAR fish_color_status:red
|
||||||
|
SETUVAR fish_color_user:brgreen
|
||||||
|
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||||
|
SETUVAR fish_key_bindings:fish_default_key_bindings
|
||||||
|
SETUVAR fish_pager_color_completion:normal
|
||||||
|
SETUVAR fish_pager_color_description:yellow\x1e\x2di
|
||||||
|
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||||
|
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||||
|
SETUVAR fish_pager_color_selected_background:\x2dr
|
||||||
43
fish/functions/_fzf_configure_bindings_help.fish
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
function _fzf_configure_bindings_help --description "Prints the help message for fzf_configure_bindings."
|
||||||
|
echo "\
|
||||||
|
USAGE:
|
||||||
|
fzf_configure_bindings [--COMMAND=[KEY_SEQUENCE]...]
|
||||||
|
|
||||||
|
DESCRIPTION
|
||||||
|
fzf_configure_bindings installs key bindings for fzf.fish's commands and erases any bindings it
|
||||||
|
previously installed. It installs bindings for both default and insert modes. fzf.fish executes
|
||||||
|
it without options on fish startup to install the out-of-the-box key bindings.
|
||||||
|
|
||||||
|
By default, commands are bound to a mnemonic key sequence, shown below. Each command's binding
|
||||||
|
can be configured using a namesake corresponding option:
|
||||||
|
COMMAND | DEFAULT KEY SEQUENCE | CORRESPONDING OPTION
|
||||||
|
Search Directory | Ctrl+Alt+F (F for file) | --directory
|
||||||
|
Search Git Log | Ctrl+Alt+L (L for log) | --git_log
|
||||||
|
Search Git Status | Ctrl+Alt+S (S for status) | --git_status
|
||||||
|
Search History | Ctrl+R (R for reverse) | --history
|
||||||
|
Search Processes | Ctrl+Alt+P (P for process) | --processes
|
||||||
|
Search Variables | Ctrl+V (V for variable) | --variables
|
||||||
|
Override a command's binding by specifying its corresponding option with the desired key
|
||||||
|
sequence. Disable a command's binding by specifying its corresponding option with no value.
|
||||||
|
|
||||||
|
Because fzf_configure_bindings erases bindings it previously installed, it can be cleanly
|
||||||
|
executed multiple times. Once the desired fzf_configure_bindings command has been found, add it
|
||||||
|
to your config.fish in order to persist the customized bindings.
|
||||||
|
|
||||||
|
In terms of validation, fzf_configure_bindings fails if passed unknown options. It expects an
|
||||||
|
equals sign between an option's name and value. However, it does not validate key sequences.
|
||||||
|
|
||||||
|
Pass -h or --help to print this help message and exit.
|
||||||
|
|
||||||
|
EXAMPLES
|
||||||
|
Default bindings but bind Search Directory to Ctrl+F and Search Variables to Ctrl+Alt+V
|
||||||
|
\$ fzf_configure_bindings --directory=\cf --variables=\e\cv
|
||||||
|
Default bindings but disable Search History
|
||||||
|
\$ fzf_configure_bindings --history=
|
||||||
|
An agglomeration of different options
|
||||||
|
\$ fzf_configure_bindings --git_status=\cg --history=\ch --variables= --processes=
|
||||||
|
|
||||||
|
SEE Also
|
||||||
|
To learn more about fish key bindings, see bind(1) and fish_key_reader(1).
|
||||||
|
"
|
||||||
|
end
|
||||||
15
fish/functions/_fzf_extract_var_info.fish
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# helper function for _fzf_search_variables
|
||||||
|
function _fzf_extract_var_info --argument-names variable_name set_show_output --description "Extract and reformat lines pertaining to \$variable_name from \$set_show_output."
|
||||||
|
# Extract only the lines about the variable, all of which begin with either
|
||||||
|
# $variable_name: ...or... $variable_name[
|
||||||
|
string match --regex "^\\\$$variable_name(?::|\[).*" <$set_show_output |
|
||||||
|
|
||||||
|
# Strip the variable name prefix, including ": " for scope info lines
|
||||||
|
string replace --regex "^\\\$$variable_name(?:: )?" '' |
|
||||||
|
|
||||||
|
# Distill the lines of values, replacing...
|
||||||
|
# [1]: |value|
|
||||||
|
# ...with...
|
||||||
|
# [1] value
|
||||||
|
string replace --regex ": \|(.*)\|" ' $1'
|
||||||
|
end
|
||||||
49
fish/functions/_fzf_preview_changed_file.fish
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
# helper for _fzf_search_git_status
|
||||||
|
# arg should be a line from git status --short, e.g.
|
||||||
|
# MM functions/_fzf_preview_changed_file.fish
|
||||||
|
# D README.md
|
||||||
|
# R LICENSE -> "New License"
|
||||||
|
function _fzf_preview_changed_file --argument-names path_status --description "Show the git diff of the given file."
|
||||||
|
# remove quotes because they'll be interpreted literally by git diff
|
||||||
|
# no need to requote when referencing $path because fish does not perform word splitting
|
||||||
|
# https://fishshell.com/docs/current/fish_for_bash_users.html
|
||||||
|
set -f path (string unescape (string sub --start 4 $path_status))
|
||||||
|
# first letter of short format shows index, second letter shows working tree
|
||||||
|
# https://git-scm.com/docs/git-status/2.35.0#_short_format
|
||||||
|
set -f index_status (string sub --length 1 $path_status)
|
||||||
|
set -f working_tree_status (string sub --start 2 --length 1 $path_status)
|
||||||
|
|
||||||
|
set -f diff_opts --color=always
|
||||||
|
|
||||||
|
if test $index_status = '?'
|
||||||
|
_fzf_report_diff_type Untracked
|
||||||
|
_fzf_preview_file $path
|
||||||
|
else if contains {$index_status}$working_tree_status DD AU UD UA DU AA UU
|
||||||
|
# Unmerged statuses taken directly from git status help's short format table
|
||||||
|
# Unmerged statuses are mutually exclusive with other statuses, so if we see
|
||||||
|
# these, then safe to assume the path is unmerged
|
||||||
|
_fzf_report_diff_type Unmerged
|
||||||
|
git diff $diff_opts -- $path
|
||||||
|
else
|
||||||
|
if test $index_status != ' '
|
||||||
|
_fzf_report_diff_type Staged
|
||||||
|
|
||||||
|
# renames are only detected in the index, never working tree, so only need to test for it here
|
||||||
|
# https://stackoverflow.com/questions/73954214
|
||||||
|
if test $index_status = R
|
||||||
|
# diff the post-rename path with the original path, otherwise the diff will show the entire file as being added
|
||||||
|
set -f orig_and_new_path (string split --max 1 -- ' -> ' $path)
|
||||||
|
git diff --staged $diff_opts -- $orig_and_new_path[1] $orig_and_new_path[2]
|
||||||
|
# path currently has the form of "original -> current", so we need to correct it before it's used below
|
||||||
|
set path $orig_and_new_path[2]
|
||||||
|
else
|
||||||
|
git diff --staged $diff_opts -- $path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if test $working_tree_status != ' '
|
||||||
|
_fzf_report_diff_type Unstaged
|
||||||
|
git diff $diff_opts -- $path
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
43
fish/functions/_fzf_preview_file.fish
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
# helper function for _fzf_search_directory and _fzf_search_git_status
|
||||||
|
function _fzf_preview_file --description "Print a preview for the given file based on its file type."
|
||||||
|
# because there's no way to guarantee that _fzf_search_directory passes the path to _fzf_preview_file
|
||||||
|
# as one argument, we collect all the arguments into one single variable and treat that as the path
|
||||||
|
set -f file_path $argv
|
||||||
|
|
||||||
|
if test -L "$file_path" # symlink
|
||||||
|
# notify user and recurse on the target of the symlink, which can be any of these file types
|
||||||
|
set -l target_path (realpath "$file_path")
|
||||||
|
|
||||||
|
set_color yellow
|
||||||
|
echo "'$file_path' is a symlink to '$target_path'."
|
||||||
|
set_color normal
|
||||||
|
|
||||||
|
_fzf_preview_file "$target_path"
|
||||||
|
else if test -f "$file_path" # regular file
|
||||||
|
if set --query fzf_preview_file_cmd
|
||||||
|
# need to escape quotes to make sure eval receives file_path as a single arg
|
||||||
|
eval "$fzf_preview_file_cmd '$file_path'"
|
||||||
|
else
|
||||||
|
bat --style=numbers --color=always "$file_path"
|
||||||
|
end
|
||||||
|
else if test -d "$file_path" # directory
|
||||||
|
if set --query fzf_preview_dir_cmd
|
||||||
|
# see above
|
||||||
|
eval "$fzf_preview_dir_cmd '$file_path'"
|
||||||
|
else
|
||||||
|
# -A list hidden files as well, except for . and ..
|
||||||
|
# -F helps classify files by appending symbols after the file name
|
||||||
|
command ls -A -F "$file_path"
|
||||||
|
end
|
||||||
|
else if test -c "$file_path"
|
||||||
|
_fzf_report_file_type "$file_path" "character device file"
|
||||||
|
else if test -b "$file_path"
|
||||||
|
_fzf_report_file_type "$file_path" "block device file"
|
||||||
|
else if test -S "$file_path"
|
||||||
|
_fzf_report_file_type "$file_path" socket
|
||||||
|
else if test -p "$file_path"
|
||||||
|
_fzf_report_file_type "$file_path" "named pipe"
|
||||||
|
else
|
||||||
|
echo "$file_path doesn't exist." >&2
|
||||||
|
end
|
||||||
|
end
|
||||||
18
fish/functions/_fzf_report_diff_type.fish
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
# helper for _fzf_preview_changed_file
|
||||||
|
# prints out something like
|
||||||
|
# ╭────────╮
|
||||||
|
# │ Staged │
|
||||||
|
# ╰────────╯
|
||||||
|
function _fzf_report_diff_type --argument-names diff_type --description "Print a distinct colored header meant to preface a git patch."
|
||||||
|
# number of "-" to draw is the length of the string to box + 2 for padding
|
||||||
|
set -f repeat_count (math 2 + (string length $diff_type))
|
||||||
|
set -f line (string repeat --count $repeat_count ─)
|
||||||
|
set -f top_border ╭$line╮
|
||||||
|
set -f btm_border ╰$line╯
|
||||||
|
|
||||||
|
set_color yellow
|
||||||
|
echo $top_border
|
||||||
|
echo "│ $diff_type │"
|
||||||
|
echo $btm_border
|
||||||
|
set_color normal
|
||||||
|
end
|
||||||
6
fish/functions/_fzf_report_file_type.fish
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# helper function for _fzf_preview_file
|
||||||
|
function _fzf_report_file_type --argument-names file_path file_type --description "Explain the file type for a file."
|
||||||
|
set_color red
|
||||||
|
echo "Cannot preview '$file_path': it is a $file_type."
|
||||||
|
set_color normal
|
||||||
|
end
|
||||||
33
fish/functions/_fzf_search_directory.fish
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
function _fzf_search_directory --description "Search the current directory. Replace the current token with the selected file paths."
|
||||||
|
# Directly use fd binary to avoid output buffering delay caused by a fd alias, if any.
|
||||||
|
# Debian-based distros install fd as fdfind and the fd package is something else, so
|
||||||
|
# check for fdfind first. Fall back to "fd" for a clear error message.
|
||||||
|
set -f fd_cmd (command -v fdfind || command -v fd || echo "fd")
|
||||||
|
set -f --append fd_cmd --color=always $fzf_fd_opts
|
||||||
|
|
||||||
|
set -f fzf_arguments --multi --ansi $fzf_directory_opts
|
||||||
|
set -f token (commandline --current-token)
|
||||||
|
# expand any variables or leading tilde (~) in the token
|
||||||
|
set -f expanded_token (eval echo -- $token)
|
||||||
|
# unescape token because it's already quoted so backslashes will mess up the path
|
||||||
|
set -f unescaped_exp_token (string unescape -- $expanded_token)
|
||||||
|
|
||||||
|
# If the current token is a directory and has a trailing slash,
|
||||||
|
# then use it as fd's base directory.
|
||||||
|
if string match --quiet -- "*/" $unescaped_exp_token && test -d "$unescaped_exp_token"
|
||||||
|
set --append fd_cmd --base-directory=$unescaped_exp_token
|
||||||
|
# use the directory name as fzf's prompt to indicate the search is limited to that directory
|
||||||
|
set --prepend fzf_arguments --prompt="Directory $unescaped_exp_token> " --preview="_fzf_preview_file $expanded_token{}"
|
||||||
|
set -f file_paths_selected $unescaped_exp_token($fd_cmd 2>/dev/null | _fzf_wrapper $fzf_arguments)
|
||||||
|
else
|
||||||
|
set --prepend fzf_arguments --prompt="Directory> " --query="$unescaped_exp_token" --preview='_fzf_preview_file {}'
|
||||||
|
set -f file_paths_selected ($fd_cmd 2>/dev/null | _fzf_wrapper $fzf_arguments)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
if test $status -eq 0
|
||||||
|
commandline --current-token --replace -- (string escape -- $file_paths_selected | string join ' ')
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
end
|
||||||
36
fish/functions/_fzf_search_git_log.fish
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
function _fzf_search_git_log --description "Search the output of git log and preview commits. Replace the current token with the selected commit hash."
|
||||||
|
if not git rev-parse --git-dir >/dev/null 2>&1
|
||||||
|
echo '_fzf_search_git_log: Not in a git repository.' >&2
|
||||||
|
else
|
||||||
|
if not set --query fzf_git_log_format
|
||||||
|
# %h gives you the abbreviated commit hash, which is useful for saving screen space, but we will have to expand it later below
|
||||||
|
set -f fzf_git_log_format '%C(bold blue)%h%C(reset) - %C(cyan)%ad%C(reset) %C(yellow)%d%C(reset) %C(normal)%s%C(reset) %C(dim normal)[%an]%C(reset)'
|
||||||
|
end
|
||||||
|
|
||||||
|
set -f preview_cmd 'git show --color=always --stat --patch {1}'
|
||||||
|
if set --query fzf_diff_highlighter
|
||||||
|
set preview_cmd "$preview_cmd | $fzf_diff_highlighter"
|
||||||
|
end
|
||||||
|
|
||||||
|
set -f selected_log_lines (
|
||||||
|
git log --no-show-signature --color=always --format=format:$fzf_git_log_format --date=short | \
|
||||||
|
_fzf_wrapper --ansi \
|
||||||
|
--multi \
|
||||||
|
--scheme=history \
|
||||||
|
--prompt="Git Log> " \
|
||||||
|
--preview=$preview_cmd \
|
||||||
|
--query=(commandline --current-token) \
|
||||||
|
$fzf_git_log_opts
|
||||||
|
)
|
||||||
|
if test $status -eq 0
|
||||||
|
for line in $selected_log_lines
|
||||||
|
set -f abbreviated_commit_hash (string split --field 1 " " $line)
|
||||||
|
set -f full_commit_hash (git rev-parse $abbreviated_commit_hash)
|
||||||
|
set -f --append commit_hashes $full_commit_hash
|
||||||
|
end
|
||||||
|
commandline --current-token --replace (string join ' ' $commit_hashes)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
end
|
||||||
41
fish/functions/_fzf_search_git_status.fish
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
function _fzf_search_git_status --description "Search the output of git status. Replace the current token with the selected file paths."
|
||||||
|
if not git rev-parse --git-dir >/dev/null 2>&1
|
||||||
|
echo '_fzf_search_git_status: Not in a git repository.' >&2
|
||||||
|
else
|
||||||
|
set -f preview_cmd '_fzf_preview_changed_file {}'
|
||||||
|
if set --query fzf_diff_highlighter
|
||||||
|
set preview_cmd "$preview_cmd | $fzf_diff_highlighter"
|
||||||
|
end
|
||||||
|
|
||||||
|
set -f selected_paths (
|
||||||
|
# Pass configuration color.status=always to force status to use colors even though output is sent to a pipe
|
||||||
|
git -c color.status=always status --short |
|
||||||
|
_fzf_wrapper --ansi \
|
||||||
|
--multi \
|
||||||
|
--prompt="Git Status> " \
|
||||||
|
--query=(commandline --current-token) \
|
||||||
|
--preview=$preview_cmd \
|
||||||
|
--nth="2.." \
|
||||||
|
$fzf_git_status_opts
|
||||||
|
)
|
||||||
|
if test $status -eq 0
|
||||||
|
# git status --short automatically escapes the paths of most files for us so not going to bother trying to handle
|
||||||
|
# the few edges cases of weird file names that should be extremely rare (e.g. "this;needs;escaping")
|
||||||
|
set -f cleaned_paths
|
||||||
|
|
||||||
|
for path in $selected_paths
|
||||||
|
if test (string sub --length 1 $path) = R
|
||||||
|
# path has been renamed and looks like "R LICENSE -> LICENSE.md"
|
||||||
|
# extract the path to use from after the arrow
|
||||||
|
set --append cleaned_paths (string split -- "-> " $path)[-1]
|
||||||
|
else
|
||||||
|
set --append cleaned_paths (string sub --start=4 $path)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --current-token --replace -- (string join ' ' $cleaned_paths)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
end
|
||||||
39
fish/functions/_fzf_search_history.fish
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
function _fzf_search_history --description "Search command history. Replace the command line with the selected command."
|
||||||
|
# history merge incorporates history changes from other fish sessions
|
||||||
|
# it errors out if called in private mode
|
||||||
|
if test -z "$fish_private_mode"
|
||||||
|
builtin history merge
|
||||||
|
end
|
||||||
|
|
||||||
|
if not set --query fzf_history_time_format
|
||||||
|
# Reference https://devhints.io/strftime to understand strftime format symbols
|
||||||
|
set -f fzf_history_time_format "%m-%d %H:%M:%S"
|
||||||
|
end
|
||||||
|
|
||||||
|
# Delinate time from command in history entries using the vertical box drawing char (U+2502).
|
||||||
|
# Then, to get raw command from history entries, delete everything up to it. The ? on regex is
|
||||||
|
# necessary to make regex non-greedy so it won't match into commands containing the char.
|
||||||
|
set -f time_prefix_regex '^.*? │ '
|
||||||
|
# Delinate commands throughout pipeline using null rather than newlines because commands can be multi-line
|
||||||
|
set -f commands_selected (
|
||||||
|
builtin history --null --show-time="$fzf_history_time_format │ " |
|
||||||
|
_fzf_wrapper --read0 \
|
||||||
|
--print0 \
|
||||||
|
--multi \
|
||||||
|
--scheme=history \
|
||||||
|
--prompt="History> " \
|
||||||
|
--query=(commandline) \
|
||||||
|
--preview="string replace --regex '$time_prefix_regex' '' -- {} | fish_indent --ansi" \
|
||||||
|
--preview-window="bottom:3:wrap" \
|
||||||
|
$fzf_history_opts |
|
||||||
|
string split0 |
|
||||||
|
# remove timestamps from commands selected
|
||||||
|
string replace --regex $time_prefix_regex ''
|
||||||
|
)
|
||||||
|
|
||||||
|
if test $status -eq 0
|
||||||
|
commandline --replace -- $commands_selected
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
end
|
||||||
32
fish/functions/_fzf_search_processes.fish
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
function _fzf_search_processes --description "Search all running processes. Replace the current token with the pid of the selected process."
|
||||||
|
# Directly use ps command because it is often aliased to a different command entirely
|
||||||
|
# or with options that dirty the search results and preview output
|
||||||
|
set -f ps_cmd (command -v ps || echo "ps")
|
||||||
|
# use all caps to be consistent with ps default format
|
||||||
|
# snake_case because ps doesn't seem to allow spaces in the field names
|
||||||
|
set -f ps_preview_fmt (string join ',' 'pid' 'ppid=PARENT' 'user' '%cpu' 'rss=RSS_IN_KB' 'start=START_TIME' 'command')
|
||||||
|
set -f processes_selected (
|
||||||
|
$ps_cmd -A -opid,command | \
|
||||||
|
_fzf_wrapper --multi \
|
||||||
|
--prompt="Processes> " \
|
||||||
|
--query (commandline --current-token) \
|
||||||
|
--ansi \
|
||||||
|
# first line outputted by ps is a header, so we need to mark it as so
|
||||||
|
--header-lines=1 \
|
||||||
|
# ps uses exit code 1 if the process was not found, in which case show an message explaining so
|
||||||
|
--preview="$ps_cmd -o '$ps_preview_fmt' -p {1} || echo 'Cannot preview {1} because it exited.'" \
|
||||||
|
--preview-window="bottom:4:wrap" \
|
||||||
|
$fzf_processes_opts
|
||||||
|
)
|
||||||
|
|
||||||
|
if test $status -eq 0
|
||||||
|
for process in $processes_selected
|
||||||
|
set -f --append pids_selected (string split --no-empty --field=1 -- " " $process)
|
||||||
|
end
|
||||||
|
|
||||||
|
# string join to replace the newlines outputted by string split with spaces
|
||||||
|
commandline --current-token --replace -- (string join ' ' $pids_selected)
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
end
|
||||||
47
fish/functions/_fzf_search_variables.fish
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
# This function expects the following two arguments:
|
||||||
|
# argument 1 = output of (set --show | psub), i.e. a file with the scope info and values of all variables
|
||||||
|
# argument 2 = output of (set --names | psub), i.e. a file with all variable names
|
||||||
|
function _fzf_search_variables --argument-names set_show_output set_names_output --description "Search and preview shell variables. Replace the current token with the selected variable."
|
||||||
|
if test -z "$set_names_output"
|
||||||
|
printf '%s\n' '_fzf_search_variables requires 2 arguments.' >&2
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
return 22 # 22 means invalid argument in POSIX
|
||||||
|
end
|
||||||
|
|
||||||
|
# Exclude the history variable from being piped into fzf because
|
||||||
|
# 1. it's not included in $set_names_output
|
||||||
|
# 2. it tends to be a very large value => increases computation time
|
||||||
|
# 3._fzf_search_history is a much better way to examine history anyway
|
||||||
|
set -f all_variable_names (string match --invert history <$set_names_output)
|
||||||
|
|
||||||
|
set -f current_token (commandline --current-token)
|
||||||
|
# Use the current token to pre-populate fzf's query. If the current token begins
|
||||||
|
# with a $, remove it from the query so that it will better match the variable names
|
||||||
|
set -f cleaned_curr_token (string replace -- '$' '' $current_token)
|
||||||
|
|
||||||
|
set -f variable_names_selected (
|
||||||
|
printf '%s\n' $all_variable_names |
|
||||||
|
_fzf_wrapper --preview "_fzf_extract_var_info {} $set_show_output" \
|
||||||
|
--prompt="Variables> " \
|
||||||
|
--preview-window="wrap" \
|
||||||
|
--multi \
|
||||||
|
--query=$cleaned_curr_token \
|
||||||
|
$fzf_variables_opts
|
||||||
|
)
|
||||||
|
|
||||||
|
if test $status -eq 0
|
||||||
|
# If the current token begins with a $, do not overwrite the $ when
|
||||||
|
# replacing the current token with the selected variable.
|
||||||
|
# Uses brace expansion to prepend $ to each variable name.
|
||||||
|
commandline --current-token --replace (
|
||||||
|
if string match --quiet -- '$*' $current_token
|
||||||
|
string join " " \${$variable_names_selected}
|
||||||
|
else
|
||||||
|
string join " " $variable_names_selected
|
||||||
|
end
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
commandline --function repaint
|
||||||
|
end
|
||||||
21
fish/functions/_fzf_wrapper.fish
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
function _fzf_wrapper --description "Prepares some environment variables before executing fzf."
|
||||||
|
# Make sure fzf uses fish to execute preview commands, some of which
|
||||||
|
# are autoloaded fish functions so don't exist in other shells.
|
||||||
|
# Use --function so that it doesn't clobber SHELL outside this function.
|
||||||
|
set -f --export SHELL (command --search fish)
|
||||||
|
|
||||||
|
# If neither FZF_DEFAULT_OPTS nor FZF_DEFAULT_OPTS_FILE are set, then set some sane defaults.
|
||||||
|
# See https://github.com/junegunn/fzf#environment-variables
|
||||||
|
set --query FZF_DEFAULT_OPTS FZF_DEFAULT_OPTS_FILE
|
||||||
|
if test $status -eq 2
|
||||||
|
# cycle allows jumping between the first and last results, making scrolling faster
|
||||||
|
# layout=reverse lists results top to bottom, mimicking the familiar layouts of git log, history, and env
|
||||||
|
# border shows where the fzf window begins and ends
|
||||||
|
# height=90% leaves space to see the current command and some scrollback, maintaining context of work
|
||||||
|
# preview-window=wrap wraps long lines in the preview window, making reading easier
|
||||||
|
# marker=* makes the multi-select marker more distinguishable from the pointer (since both default to >)
|
||||||
|
set --export FZF_DEFAULT_OPTS '--cycle --layout=reverse --border --height=90% --preview-window=wrap --marker="*"'
|
||||||
|
end
|
||||||
|
|
||||||
|
fzf $argv
|
||||||
|
end
|
||||||
20
fish/functions/_nvm_index_update.fish
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
function _nvm_index_update
|
||||||
|
test ! -d $nvm_data && command mkdir -p $nvm_data
|
||||||
|
|
||||||
|
set --local index $nvm_data/.index
|
||||||
|
|
||||||
|
if not command curl -q --location --silent $nvm_mirror/index.tab >$index.temp
|
||||||
|
command rm -f $index.temp
|
||||||
|
echo "nvm: Can't update index, host unavailable: \"$nvm_mirror\"" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
command awk -v OFS=\t '
|
||||||
|
/v0.9.12/ { exit } # Unsupported
|
||||||
|
NR > 1 {
|
||||||
|
print $1 (NR == 2 ? " latest" : $10 != "-" ? " lts/" tolower($10) : "")
|
||||||
|
}
|
||||||
|
' $index.temp >$index
|
||||||
|
|
||||||
|
command rm -f $index.temp
|
||||||
|
end
|
||||||
11
fish/functions/_nvm_list.fish
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
function _nvm_list
|
||||||
|
set --local versions $nvm_data/*
|
||||||
|
set --query versions[1] &&
|
||||||
|
string match --entire --regex -- (string match --regex -- "v\d.+" $versions |
|
||||||
|
string escape --style=regex |
|
||||||
|
string join "|"
|
||||||
|
) <$nvm_data/.index
|
||||||
|
|
||||||
|
command --all node |
|
||||||
|
string match --quiet --invert --regex -- "^$nvm_data" && echo system
|
||||||
|
end
|
||||||
4
fish/functions/_nvm_version_activate.fish
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
function _nvm_version_activate --argument-names ver
|
||||||
|
set --global --export nvm_current_version $ver
|
||||||
|
set --prepend PATH $nvm_data/$ver/bin
|
||||||
|
end
|
||||||
5
fish/functions/_nvm_version_deactivate.fish
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
function _nvm_version_deactivate --argument-names ver
|
||||||
|
test "$nvm_current_version" = "$ver" && set --erase nvm_current_version
|
||||||
|
set --local index (contains --index -- $nvm_data/$ver/bin $PATH) &&
|
||||||
|
set --erase PATH[$index]
|
||||||
|
end
|
||||||
240
fish/functions/fisher.fish
Normal file
@@ -0,0 +1,240 @@
|
|||||||
|
function fisher --argument-names cmd --description "A plugin manager for Fish"
|
||||||
|
set --query fisher_path || set --local fisher_path $__fish_config_dir
|
||||||
|
set --local fisher_version 4.4.4
|
||||||
|
set --local fish_plugins $__fish_config_dir/fish_plugins
|
||||||
|
|
||||||
|
switch "$cmd"
|
||||||
|
case -v --version
|
||||||
|
echo "fisher, version $fisher_version"
|
||||||
|
case "" -h --help
|
||||||
|
echo "Usage: fisher install <plugins...> Install plugins"
|
||||||
|
echo " fisher remove <plugins...> Remove installed plugins"
|
||||||
|
echo " fisher update <plugins...> Update installed plugins"
|
||||||
|
echo " fisher update Update all installed plugins"
|
||||||
|
echo " fisher list [<regex>] List installed plugins matching regex"
|
||||||
|
echo "Options:"
|
||||||
|
echo " -v, --version Print version"
|
||||||
|
echo " -h, --help Print this help message"
|
||||||
|
echo "Variables:"
|
||||||
|
echo " \$fisher_path Plugin installation path. Default: $__fish_config_dir" | string replace --regex -- $HOME \~
|
||||||
|
case ls list
|
||||||
|
string match --entire --regex -- "$argv[2]" $_fisher_plugins
|
||||||
|
case install update remove
|
||||||
|
isatty || read --local --null --array stdin && set --append argv $stdin
|
||||||
|
|
||||||
|
set --local install_plugins
|
||||||
|
set --local update_plugins
|
||||||
|
set --local remove_plugins
|
||||||
|
set --local arg_plugins $argv[2..-1]
|
||||||
|
set --local old_plugins $_fisher_plugins
|
||||||
|
set --local new_plugins
|
||||||
|
|
||||||
|
test -e $fish_plugins && set --local file_plugins (string match --regex -- '^[^\s]+$' <$fish_plugins)
|
||||||
|
|
||||||
|
if ! set --query argv[2]
|
||||||
|
if test "$cmd" != update
|
||||||
|
echo "fisher: Not enough arguments for command: \"$cmd\"" >&2 && return 1
|
||||||
|
else if ! set --query file_plugins
|
||||||
|
echo "fisher: \"$fish_plugins\" file not found: \"$cmd\"" >&2 && return 1
|
||||||
|
end
|
||||||
|
set arg_plugins $file_plugins
|
||||||
|
end
|
||||||
|
|
||||||
|
for plugin in $arg_plugins
|
||||||
|
set plugin (test -e "$plugin" && realpath $plugin || string lower -- $plugin)
|
||||||
|
contains -- "$plugin" $new_plugins || set --append new_plugins $plugin
|
||||||
|
end
|
||||||
|
|
||||||
|
if set --query argv[2]
|
||||||
|
for plugin in $new_plugins
|
||||||
|
if contains -- "$plugin" $old_plugins
|
||||||
|
test "$cmd" = remove &&
|
||||||
|
set --append remove_plugins $plugin ||
|
||||||
|
set --append update_plugins $plugin
|
||||||
|
else if test "$cmd" = install
|
||||||
|
set --append install_plugins $plugin
|
||||||
|
else
|
||||||
|
echo "fisher: Plugin not installed: \"$plugin\"" >&2 && return 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
for plugin in $new_plugins
|
||||||
|
contains -- "$plugin" $old_plugins &&
|
||||||
|
set --append update_plugins $plugin ||
|
||||||
|
set --append install_plugins $plugin
|
||||||
|
end
|
||||||
|
|
||||||
|
for plugin in $old_plugins
|
||||||
|
contains -- "$plugin" $new_plugins || set --append remove_plugins $plugin
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
set --local pid_list
|
||||||
|
set --local source_plugins
|
||||||
|
set --local fetch_plugins $update_plugins $install_plugins
|
||||||
|
set --local fish_path (status fish-path)
|
||||||
|
|
||||||
|
echo (set_color --bold)fisher $cmd version $fisher_version(set_color normal)
|
||||||
|
|
||||||
|
for plugin in $fetch_plugins
|
||||||
|
set --local source (command mktemp -d)
|
||||||
|
set --append source_plugins $source
|
||||||
|
|
||||||
|
command mkdir -p $source/{completions,conf.d,themes,functions}
|
||||||
|
|
||||||
|
$fish_path --command "
|
||||||
|
if test -e $plugin
|
||||||
|
command cp -Rf $plugin/* $source
|
||||||
|
else
|
||||||
|
set temp (command mktemp -d)
|
||||||
|
set repo (string split -- \@ $plugin) || set repo[2] HEAD
|
||||||
|
|
||||||
|
if set path (string replace --regex -- '^(https://)?gitlab.com/' '' \$repo[1])
|
||||||
|
set name (string split -- / \$path)[-1]
|
||||||
|
set url https://gitlab.com/\$path/-/archive/\$repo[2]/\$name-\$repo[2].tar.gz
|
||||||
|
else
|
||||||
|
set url https://api.github.com/repos/\$repo[1]/tarball/\$repo[2]
|
||||||
|
end
|
||||||
|
|
||||||
|
echo Fetching (set_color --underline)\$url(set_color normal)
|
||||||
|
|
||||||
|
if command curl -q --silent -L \$url | command tar -xzC \$temp -f - 2>/dev/null
|
||||||
|
command cp -Rf \$temp/*/* $source
|
||||||
|
else
|
||||||
|
echo fisher: Invalid plugin name or host unavailable: \\\"$plugin\\\" >&2
|
||||||
|
command rm -rf $source
|
||||||
|
end
|
||||||
|
|
||||||
|
command rm -rf \$temp
|
||||||
|
end
|
||||||
|
|
||||||
|
set files $source/* && string match --quiet --regex -- .+\.fish\\\$ \$files
|
||||||
|
" &
|
||||||
|
|
||||||
|
set --append pid_list (jobs --last --pid)
|
||||||
|
end
|
||||||
|
|
||||||
|
wait $pid_list 2>/dev/null
|
||||||
|
|
||||||
|
for plugin in $fetch_plugins
|
||||||
|
if set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)] && test ! -e $source
|
||||||
|
if set --local index (contains --index -- "$plugin" $install_plugins)
|
||||||
|
set --erase install_plugins[$index]
|
||||||
|
else
|
||||||
|
set --erase update_plugins[(contains --index -- "$plugin" $update_plugins)]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
for plugin in $update_plugins $remove_plugins
|
||||||
|
if set --local index (contains --index -- "$plugin" $_fisher_plugins)
|
||||||
|
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
|
||||||
|
|
||||||
|
if contains -- "$plugin" $remove_plugins
|
||||||
|
for name in (string replace --filter --regex -- '.+/conf\.d/([^/]+)\.fish$' '$1' $$plugin_files_var)
|
||||||
|
emit {$name}_uninstall
|
||||||
|
end
|
||||||
|
printf "%s\n" Removing\ (set_color red --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
|
||||||
|
set --erase _fisher_plugins[$index]
|
||||||
|
end
|
||||||
|
|
||||||
|
command rm -rf (string replace -- \~ ~ $$plugin_files_var)
|
||||||
|
|
||||||
|
functions --erase (string replace --filter --regex -- '.+/functions/([^/]+)\.fish$' '$1' $$plugin_files_var)
|
||||||
|
|
||||||
|
for name in (string replace --filter --regex -- '.+/completions/([^/]+)\.fish$' '$1' $$plugin_files_var)
|
||||||
|
complete --erase --command $name
|
||||||
|
end
|
||||||
|
|
||||||
|
set --erase $plugin_files_var
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if set --query update_plugins[1] || set --query install_plugins[1]
|
||||||
|
command mkdir -p $fisher_path/{functions,themes,conf.d,completions}
|
||||||
|
end
|
||||||
|
|
||||||
|
for plugin in $update_plugins $install_plugins
|
||||||
|
set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)]
|
||||||
|
set --local files $source/{functions,themes,conf.d,completions}/*
|
||||||
|
|
||||||
|
if set --local index (contains --index -- $plugin $install_plugins)
|
||||||
|
set --local user_files $fisher_path/{functions,themes,conf.d,completions}/*
|
||||||
|
set --local conflict_files
|
||||||
|
|
||||||
|
for file in (string replace -- $source/ $fisher_path/ $files)
|
||||||
|
contains -- $file $user_files && set --append conflict_files $file
|
||||||
|
end
|
||||||
|
|
||||||
|
if set --query conflict_files[1] && set --erase install_plugins[$index]
|
||||||
|
echo -s "fisher: Cannot install \"$plugin\": please remove or move conflicting files first:" \n" "$conflict_files >&2
|
||||||
|
continue
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
for file in (string replace -- $source/ "" $files)
|
||||||
|
command cp -RLf $source/$file $fisher_path/$file
|
||||||
|
end
|
||||||
|
|
||||||
|
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
|
||||||
|
|
||||||
|
set --query files[1] && set --universal $plugin_files_var (string replace -- $source $fisher_path $files | string replace -- ~ \~)
|
||||||
|
|
||||||
|
contains -- $plugin $_fisher_plugins || set --universal --append _fisher_plugins $plugin
|
||||||
|
contains -- $plugin $install_plugins && set --local event install || set --local event update
|
||||||
|
|
||||||
|
printf "%s\n" Installing\ (set_color --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
|
||||||
|
|
||||||
|
for file in (string match --regex -- '.+/[^/]+\.fish$' $$plugin_files_var | string replace -- \~ ~)
|
||||||
|
source $file
|
||||||
|
if set --local name (string replace --regex -- '.+conf\.d/([^/]+)\.fish$' '$1' $file)
|
||||||
|
emit {$name}_$event
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
command rm -rf $source_plugins
|
||||||
|
|
||||||
|
if set --query _fisher_plugins[1]
|
||||||
|
set --local commit_plugins
|
||||||
|
|
||||||
|
for plugin in $file_plugins
|
||||||
|
contains -- (string lower -- $plugin) (string lower -- $_fisher_plugins) && set --append commit_plugins $plugin
|
||||||
|
end
|
||||||
|
|
||||||
|
for plugin in $_fisher_plugins
|
||||||
|
contains -- (string lower -- $plugin) (string lower -- $commit_plugins) || set --append commit_plugins $plugin
|
||||||
|
end
|
||||||
|
|
||||||
|
printf "%s\n" $commit_plugins >$fish_plugins
|
||||||
|
else
|
||||||
|
set --erase _fisher_plugins
|
||||||
|
command rm -f $fish_plugins
|
||||||
|
end
|
||||||
|
|
||||||
|
set --local total (count $install_plugins) (count $update_plugins) (count $remove_plugins)
|
||||||
|
|
||||||
|
test "$total" != "0 0 0" && echo (string join ", " (
|
||||||
|
test $total[1] = 0 || echo "Installed $total[1]") (
|
||||||
|
test $total[2] = 0 || echo "Updated $total[2]") (
|
||||||
|
test $total[3] = 0 || echo "Removed $total[3]")
|
||||||
|
) plugin/s
|
||||||
|
case \*
|
||||||
|
echo "fisher: Unknown command: \"$cmd\"" >&2 && return 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if ! set --query _fisher_upgraded_to_4_4
|
||||||
|
set --universal _fisher_upgraded_to_4_4
|
||||||
|
if functions --query _fisher_list
|
||||||
|
set --query XDG_DATA_HOME[1] || set --local XDG_DATA_HOME ~/.local/share
|
||||||
|
command rm -rf $XDG_DATA_HOME/fisher
|
||||||
|
functions --erase _fisher_{list,plugin_parse}
|
||||||
|
fisher update >/dev/null 2>/dev/null
|
||||||
|
else
|
||||||
|
for var in (set --names | string match --entire --regex '^_fisher_.+_files$')
|
||||||
|
set $var (string replace -- ~ \~ $$var)
|
||||||
|
end
|
||||||
|
functions --erase _fisher_fish_postexec
|
||||||
|
end
|
||||||
|
end
|
||||||
46
fish/functions/fzf_configure_bindings.fish
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
# Always installs bindings for insert and default mode for simplicity and b/c it has almost no side-effect
|
||||||
|
# https://gitter.im/fish-shell/fish-shell?at=60a55915ee77a74d685fa6b1
|
||||||
|
function fzf_configure_bindings --description "Installs the default key bindings for fzf.fish with user overrides passed as options."
|
||||||
|
# no need to install bindings if not in interactive mode or running tests
|
||||||
|
status is-interactive || test "$CI" = true; or return
|
||||||
|
|
||||||
|
set -f options_spec h/help 'directory=?' 'git_log=?' 'git_status=?' 'history=?' 'processes=?' 'variables=?'
|
||||||
|
argparse --max-args=0 --ignore-unknown $options_spec -- $argv 2>/dev/null
|
||||||
|
if test $status -ne 0
|
||||||
|
echo "Invalid option or a positional argument was provided." >&2
|
||||||
|
_fzf_configure_bindings_help
|
||||||
|
return 22
|
||||||
|
else if set --query _flag_help
|
||||||
|
_fzf_configure_bindings_help
|
||||||
|
return
|
||||||
|
else
|
||||||
|
# Initialize with default key sequences and then override or disable them based on flags
|
||||||
|
# index 1 = directory, 2 = git_log, 3 = git_status, 4 = history, 5 = processes, 6 = variables
|
||||||
|
set -f key_sequences \e\cf \e\cl \e\cs \cr \e\cp \cv # \c = control, \e = escape
|
||||||
|
set --query _flag_directory && set key_sequences[1] "$_flag_directory"
|
||||||
|
set --query _flag_git_log && set key_sequences[2] "$_flag_git_log"
|
||||||
|
set --query _flag_git_status && set key_sequences[3] "$_flag_git_status"
|
||||||
|
set --query _flag_history && set key_sequences[4] "$_flag_history"
|
||||||
|
set --query _flag_processes && set key_sequences[5] "$_flag_processes"
|
||||||
|
set --query _flag_variables && set key_sequences[6] "$_flag_variables"
|
||||||
|
|
||||||
|
# If fzf bindings already exists, uninstall it first for a clean slate
|
||||||
|
if functions --query _fzf_uninstall_bindings
|
||||||
|
_fzf_uninstall_bindings
|
||||||
|
end
|
||||||
|
|
||||||
|
for mode in default insert
|
||||||
|
test -n $key_sequences[1] && bind --mode $mode $key_sequences[1] _fzf_search_directory
|
||||||
|
test -n $key_sequences[2] && bind --mode $mode $key_sequences[2] _fzf_search_git_log
|
||||||
|
test -n $key_sequences[3] && bind --mode $mode $key_sequences[3] _fzf_search_git_status
|
||||||
|
test -n $key_sequences[4] && bind --mode $mode $key_sequences[4] _fzf_search_history
|
||||||
|
test -n $key_sequences[5] && bind --mode $mode $key_sequences[5] _fzf_search_processes
|
||||||
|
test -n $key_sequences[6] && bind --mode $mode $key_sequences[6] "$_fzf_search_vars_command"
|
||||||
|
end
|
||||||
|
|
||||||
|
function _fzf_uninstall_bindings --inherit-variable key_sequences
|
||||||
|
bind --erase -- $key_sequences
|
||||||
|
bind --erase --mode insert -- $key_sequences
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
234
fish/functions/nvm.fish
Normal file
@@ -0,0 +1,234 @@
|
|||||||
|
function nvm --description "Node version manager"
|
||||||
|
for silent in --silent -s
|
||||||
|
if set --local index (contains --index -- $silent $argv)
|
||||||
|
set --erase argv[$index] && break
|
||||||
|
end
|
||||||
|
set --erase silent
|
||||||
|
end
|
||||||
|
|
||||||
|
set --local cmd $argv[1]
|
||||||
|
set --local ver $argv[2]
|
||||||
|
|
||||||
|
if set --query silent && ! set --query cmd[1]
|
||||||
|
echo "nvm: Version number not specified (see nvm -h for usage)" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
if ! set --query ver[1] && contains -- "$cmd" install use
|
||||||
|
for file in .nvmrc .node-version
|
||||||
|
set file (_nvm_find_up $PWD $file) && read ver <$file && break
|
||||||
|
end
|
||||||
|
|
||||||
|
if ! set --query ver[1]
|
||||||
|
echo "nvm: Invalid version or missing \".nvmrc\" file" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
set --local their_version $ver
|
||||||
|
|
||||||
|
switch "$cmd"
|
||||||
|
case -v --version
|
||||||
|
echo "nvm, version 2.2.14"
|
||||||
|
case "" -h --help
|
||||||
|
echo "Usage: nvm install <version> Download and activate the specified Node version"
|
||||||
|
echo " nvm install Install the version specified in the nearest .nvmrc file"
|
||||||
|
echo " nvm use <version> Activate the specified Node version in the current shell"
|
||||||
|
echo " nvm use Activate the version specified in the nearest .nvmrc file"
|
||||||
|
echo " nvm list List installed Node versions"
|
||||||
|
echo " nvm list-remote List available Node versions to install"
|
||||||
|
echo " nvm list-remote <regex> List Node versions matching a given regex pattern"
|
||||||
|
echo " nvm current Print the currently-active Node version"
|
||||||
|
echo " nvm uninstall <version> Uninstall the specified Node version"
|
||||||
|
echo "Options:"
|
||||||
|
echo " -s, --silent Suppress standard output"
|
||||||
|
echo " -v, --version Print the version of nvm"
|
||||||
|
echo " -h, --help Print this help message"
|
||||||
|
echo "Variables:"
|
||||||
|
echo " nvm_arch Override architecture, e.g. x64-musl"
|
||||||
|
echo " nvm_mirror Use a mirror for downloading Node binaries"
|
||||||
|
echo " nvm_default_version Set the default version for new shells"
|
||||||
|
echo " nvm_default_packages Install a list of packages every time a Node version is installed"
|
||||||
|
echo "Examples:"
|
||||||
|
echo " nvm install latest Install the latest version of Node"
|
||||||
|
echo " nvm use 14.15.1 Use Node version 14.15.1"
|
||||||
|
echo " nvm use system Activate the system's Node version"
|
||||||
|
|
||||||
|
case install
|
||||||
|
_nvm_index_update
|
||||||
|
|
||||||
|
string match --entire --regex -- (_nvm_version_match $ver) <$nvm_data/.index | read ver alias
|
||||||
|
|
||||||
|
if ! set --query ver[1]
|
||||||
|
echo "nvm: Invalid version number or alias: \"$their_version\"" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
if test ! -e $nvm_data/$ver
|
||||||
|
set --local os (command uname -s | string lower)
|
||||||
|
set --local ext tar.gz
|
||||||
|
set --local arch (command uname -m)
|
||||||
|
|
||||||
|
switch $os
|
||||||
|
case aix
|
||||||
|
set arch ppc64
|
||||||
|
case sunos
|
||||||
|
case linux
|
||||||
|
case darwin
|
||||||
|
case {MSYS_NT,MINGW\*_NT}\*
|
||||||
|
set os win
|
||||||
|
set ext zip
|
||||||
|
case \*
|
||||||
|
echo "nvm: Unsupported operating system: \"$os\"" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
switch $arch
|
||||||
|
case i\*86
|
||||||
|
set arch x86
|
||||||
|
case x86_64
|
||||||
|
set arch x64
|
||||||
|
case arm64
|
||||||
|
string match --regex --quiet "v(?<major>\d+)" $ver
|
||||||
|
if test "$os" = darwin -a $major -lt 16
|
||||||
|
set arch x64
|
||||||
|
end
|
||||||
|
case armv6 armv6l
|
||||||
|
set arch armv6l
|
||||||
|
case armv7 armv7l
|
||||||
|
set arch armv7l
|
||||||
|
case armv8 armv8l aarch64
|
||||||
|
set arch arm64
|
||||||
|
end
|
||||||
|
|
||||||
|
set --query nvm_arch && set arch $nvm_arch
|
||||||
|
|
||||||
|
set --local dir "node-$ver-$os-$arch"
|
||||||
|
set --local url $nvm_mirror/$ver/$dir.$ext
|
||||||
|
|
||||||
|
command mkdir -p $nvm_data/$ver
|
||||||
|
|
||||||
|
if ! set --query silent
|
||||||
|
echo -e "Installing Node \x1b[1m$ver\x1b[22m $alias"
|
||||||
|
echo -e "Fetching \x1b[4m$url\x1b[24m\x1b[7m"
|
||||||
|
end
|
||||||
|
|
||||||
|
if ! command curl -q $silent --progress-bar --location $url |
|
||||||
|
command tar --extract --gzip --directory $nvm_data/$ver 2>/dev/null
|
||||||
|
command rm -rf $nvm_data/$ver
|
||||||
|
echo -e "\033[F\33[2K\x1b[0mnvm: Invalid mirror or host unavailable: \"$url\"" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
set --query silent || echo -en "\033[F\33[2K\x1b[0m"
|
||||||
|
|
||||||
|
if test "$os" = win
|
||||||
|
command mv $nvm_data/$ver/$dir $nvm_data/$ver/bin
|
||||||
|
else
|
||||||
|
command mv $nvm_data/$ver/$dir/* $nvm_data/$ver
|
||||||
|
command rm -rf $nvm_data/$ver/$dir
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if test $ver != "$nvm_current_version"
|
||||||
|
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
|
||||||
|
_nvm_version_activate $ver
|
||||||
|
|
||||||
|
set --query nvm_default_packages[1] && npm install --global $silent $nvm_default_packages
|
||||||
|
end
|
||||||
|
|
||||||
|
set --query silent || printf "Now using Node %s (npm %s) %s\n" (_nvm_node_info)
|
||||||
|
case use
|
||||||
|
test $ver = default && set ver $nvm_default_version
|
||||||
|
_nvm_list | string match --entire --regex -- (_nvm_version_match $ver) | read ver __
|
||||||
|
|
||||||
|
if ! set --query ver[1]
|
||||||
|
echo "nvm: Can't use Node \"$their_version\", version must be installed first" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
if test $ver != "$nvm_current_version"
|
||||||
|
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
|
||||||
|
test $ver != system && _nvm_version_activate $ver
|
||||||
|
end
|
||||||
|
|
||||||
|
set --query silent || printf "Now using Node %s (npm %s) %s\n" (_nvm_node_info)
|
||||||
|
case uninstall
|
||||||
|
if test -z "$ver"
|
||||||
|
echo "nvm: Not enough arguments for command: \"$cmd\"" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
test $ver = default && test ! -z "$nvm_default_version" && set ver $nvm_default_version
|
||||||
|
|
||||||
|
_nvm_list | string match --entire --regex -- (_nvm_version_match $ver) | read ver __
|
||||||
|
|
||||||
|
if ! set -q ver[1]
|
||||||
|
echo "nvm: Node version not installed or invalid: \"$their_version\"" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
|
||||||
|
set --query silent || printf "Uninstalling Node %s %s\n" $ver (string replace ~ \~ "$nvm_data/$ver/bin/node")
|
||||||
|
|
||||||
|
_nvm_version_deactivate $ver
|
||||||
|
|
||||||
|
command rm -rf $nvm_data/$ver
|
||||||
|
case current
|
||||||
|
_nvm_current
|
||||||
|
case ls list
|
||||||
|
_nvm_list | _nvm_list_format (_nvm_current) $argv[2]
|
||||||
|
case lsr {ls,list}-remote
|
||||||
|
_nvm_index_update || return
|
||||||
|
_nvm_list | command awk '
|
||||||
|
FILENAME == "-" && (is_local[$1] = FNR == NR) { next } {
|
||||||
|
print $0 (is_local[$1] ? " ✓" : "")
|
||||||
|
}
|
||||||
|
' - $nvm_data/.index | _nvm_list_format (_nvm_current) $argv[2]
|
||||||
|
case \*
|
||||||
|
echo "nvm: Unknown command or option: \"$cmd\" (see nvm -h for usage)" >&2
|
||||||
|
return 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_find_up --argument-names path file
|
||||||
|
test -e "$path/$file" && echo $path/$file || begin
|
||||||
|
test ! -z "$path" || return
|
||||||
|
_nvm_find_up (string replace --regex -- '/[^/]*$' "" $path) $file
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_version_match --argument-names ver
|
||||||
|
string replace --regex -- '^v?(\d+|\d+\.\d+)$' 'v$1.' $ver |
|
||||||
|
string replace --filter --regex -- '^v?(\d+)' 'v$1' |
|
||||||
|
string escape --style=regex || string lower '\b'$ver'(?:/\w+)?$'
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_list_format --argument-names current regex
|
||||||
|
command awk -v current="$current" -v regex="$regex" '
|
||||||
|
$0 ~ regex {
|
||||||
|
aliases[versions[i++] = $1] = $2 " " $3
|
||||||
|
pad = (n = length($1)) > pad ? n : pad
|
||||||
|
}
|
||||||
|
END {
|
||||||
|
if (!i) exit 1
|
||||||
|
while (i--)
|
||||||
|
printf((current == versions[i] ? " ▶ " : " ") "%"pad"s %s\n",
|
||||||
|
versions[i], aliases[versions[i]])
|
||||||
|
}
|
||||||
|
'
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_current
|
||||||
|
command --search --quiet node || return
|
||||||
|
set --query nvm_current_version && echo $nvm_current_version || echo system
|
||||||
|
end
|
||||||
|
|
||||||
|
function _nvm_node_info
|
||||||
|
set --local npm_path (string replace bin/npm-cli.js "" (realpath (command --search npm)))
|
||||||
|
test -f $npm_path/package.json || set --local npm_version_default (command npm --version)
|
||||||
|
command node --eval "
|
||||||
|
console.log(process.version)
|
||||||
|
console.log('$npm_version_default' ? '$npm_version_default': require('$npm_path/package.json').version)
|
||||||
|
console.log(process.execPath)
|
||||||
|
" | string replace -- ~ \~
|
||||||
|
end
|
||||||
30
foot/catppuccin-frappe.ini
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
[colors]
|
||||||
|
foreground=c6d0f5
|
||||||
|
background=303446
|
||||||
|
|
||||||
|
regular0=51576d
|
||||||
|
regular1=e78284
|
||||||
|
regular2=a6d189
|
||||||
|
regular3=e5c890
|
||||||
|
regular4=8caaee
|
||||||
|
regular5=f4b8e4
|
||||||
|
regular6=81c8be
|
||||||
|
regular7=b5bfe2
|
||||||
|
|
||||||
|
bright0=626880
|
||||||
|
bright1=e78284
|
||||||
|
bright2=a6d189
|
||||||
|
bright3=e5c890
|
||||||
|
bright4=8caaee
|
||||||
|
bright5=f4b8e4
|
||||||
|
bright6=81c8be
|
||||||
|
bright7=a5adce
|
||||||
|
|
||||||
|
selection-foreground=c6d0f5
|
||||||
|
selection-background=4f5369
|
||||||
|
|
||||||
|
search-box-no-match=232634 e78284
|
||||||
|
search-box-match=c6d0f5 414559
|
||||||
|
|
||||||
|
jump-labels=232634 ef9f76
|
||||||
|
urls=8caaee
|
||||||
30
foot/catppuccin-latte.ini
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
[colors]
|
||||||
|
foreground=4c4f69
|
||||||
|
background=eff1f5
|
||||||
|
|
||||||
|
regular0=5c5f77
|
||||||
|
regular1=d20f39
|
||||||
|
regular2=40a02b
|
||||||
|
regular3=df8e1d
|
||||||
|
regular4=1e66f5
|
||||||
|
regular5=ea76cb
|
||||||
|
regular6=179299
|
||||||
|
regular7=acb0be
|
||||||
|
|
||||||
|
bright0=6c6f85
|
||||||
|
bright1=d20f39
|
||||||
|
bright2=40a02b
|
||||||
|
bright3=df8e1d
|
||||||
|
bright4=1e66f5
|
||||||
|
bright5=ea76cb
|
||||||
|
bright6=179299
|
||||||
|
bright7=bcc0cc
|
||||||
|
|
||||||
|
selection-foreground=4c4f69
|
||||||
|
selection-background=ccced7
|
||||||
|
|
||||||
|
search-box-no-match=dce0e8 d20f39
|
||||||
|
search-box-match=4c4f69 ccd0da
|
||||||
|
|
||||||
|
jump-labels=dce0e8 fe640b
|
||||||
|
urls=1e66f5
|
||||||
30
foot/catppuccin-macchiato.ini
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
[colors]
|
||||||
|
foreground=cad3f5
|
||||||
|
background=24273a
|
||||||
|
|
||||||
|
regular0=494d64
|
||||||
|
regular1=ed8796
|
||||||
|
regular2=a6da95
|
||||||
|
regular3=eed49f
|
||||||
|
regular4=8aadf4
|
||||||
|
regular5=f5bde6
|
||||||
|
regular6=8bd5ca
|
||||||
|
regular7=b8c0e0
|
||||||
|
|
||||||
|
bright0=5b6078
|
||||||
|
bright1=ed8796
|
||||||
|
bright2=a6da95
|
||||||
|
bright3=eed49f
|
||||||
|
bright4=8aadf4
|
||||||
|
bright5=f5bde6
|
||||||
|
bright6=8bd5ca
|
||||||
|
bright7=a5adcb
|
||||||
|
|
||||||
|
selection-foreground=cad3f5
|
||||||
|
selection-background=454a5f
|
||||||
|
|
||||||
|
search-box-no-match=181926 ed8796
|
||||||
|
search-box-match=cad3f5 363a4f
|
||||||
|
|
||||||
|
jump-labels=181926 f5a97f
|
||||||
|
urls=8aadf4
|
||||||
30
foot/catppuccin-mocha.ini
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
[colors]
|
||||||
|
foreground=cdd6f4
|
||||||
|
background=1e1e2e
|
||||||
|
|
||||||
|
regular0=45475a
|
||||||
|
regular1=f38ba8
|
||||||
|
regular2=a6e3a1
|
||||||
|
regular3=f9e2af
|
||||||
|
regular4=89b4fa
|
||||||
|
regular5=f5c2e7
|
||||||
|
regular6=94e2d5
|
||||||
|
regular7=bac2de
|
||||||
|
|
||||||
|
bright0=585b70
|
||||||
|
bright1=f38ba8
|
||||||
|
bright2=a6e3a1
|
||||||
|
bright3=f9e2af
|
||||||
|
bright4=89b4fa
|
||||||
|
bright5=f5c2e7
|
||||||
|
bright6=94e2d5
|
||||||
|
bright7=a6adc8
|
||||||
|
|
||||||
|
selection-foreground=cdd6f4
|
||||||
|
selection-background=414356
|
||||||
|
|
||||||
|
search-box-no-match=11111b f38ba8
|
||||||
|
search-box-match=cdd6f4 313244
|
||||||
|
|
||||||
|
jump-labels=11111b fab387
|
||||||
|
urls=89b4fa
|
||||||
14
foot/foot.ini
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
[main]
|
||||||
|
|
||||||
|
font=EnvyCodeR Nerd Font Mono:size=10
|
||||||
|
include=/usr/share/foot/themes/neon
|
||||||
|
|
||||||
|
[url]
|
||||||
|
osc8-underline=always
|
||||||
|
|
||||||
|
[cursor]
|
||||||
|
style=block
|
||||||
|
blink=yes
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
alpha=0.9
|
||||||
39
gtk-3.0/assets/close-active.svg
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,10.2875 C713.663,10.2875 917.788,214.413 917.788,466.208 C917.788,718.009 713.663,922.133 461.867,922.133 C210.063,922.133 5.9375,718.009 5.9375,466.208 C5.9375,214.413 210.063,10.2875 461.867,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,49.0625 C692.245,49.0625 879.008,235.829 879.008,466.208 C879.008,696.596 692.245,883.358 461.867,883.358 C231.479,883.358 44.7167,696.596 44.7167,466.208 C44.7167,235.829 231.479,49.0625 461.867,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M246.821,304.842 L623.233,681.25 C637.801,695.821 661.633,695.821 676.208,681.25 L676.905,680.55 C691.475,665.983 691.475,642.146 676.909,627.579 L300.496,251.171 C285.925,236.601 262.092,236.601 247.525,251.171 L246.821,251.867 C232.254,266.437 232.254,290.271 246.821,304.842 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M300.496,681.25 L676.905,304.842 C691.471,290.275 691.471,266.437 676.905,251.867 L676.204,251.171 C661.633,236.601 637.801,236.601 623.233,251.171 L246.821,627.579 C232.25,642.146 232.25,665.983 246.821,680.55 L247.521,681.25 C262.092,695.821 285.925,695.821 300.496,681.25 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.6 KiB |
39
gtk-3.0/assets/close-backdrop-active.svg
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,10.2875 C713.663,10.2875 917.788,214.413 917.788,466.208 C917.788,718.009 713.663,922.133 461.867,922.133 C210.063,922.133 5.9375,718.009 5.9375,466.208 C5.9375,214.413 210.063,10.2875 461.867,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,49.0625 C692.245,49.0625 879.008,235.829 879.008,466.208 C879.008,696.596 692.245,883.358 461.867,883.358 C231.479,883.358 44.7167,696.596 44.7167,466.208 C44.7167,235.829 231.479,49.0625 461.867,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M246.821,304.842 L623.233,681.25 C637.801,695.821 661.633,695.821 676.208,681.25 L676.905,680.55 C691.475,665.983 691.475,642.146 676.909,627.579 L300.496,251.171 C285.925,236.601 262.092,236.601 247.525,251.171 L246.821,251.867 C232.254,266.437 232.254,290.271 246.821,304.842 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.325575,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M300.496,681.25 L676.905,304.842 C691.471,290.275 691.471,266.437 676.905,251.867 L676.204,251.171 C661.633,236.601 637.801,236.601 623.233,251.171 L246.821,627.579 C232.25,642.146 232.25,665.983 246.821,680.55 L247.521,681.25 C262.092,695.821 285.925,695.821 300.496,681.25 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.6 KiB |
39
gtk-3.0/assets/close-backdrop-hover.svg
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,4.6375 C713.663,4.6375 917.788,208.763 917.788,460.562 C917.788,712.363 713.663,916.487 461.867,916.487 C210.063,916.487 5.9375,712.363 5.9375,460.562 C5.9375,208.763 210.063,4.6375 461.867,4.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,43.4125 C692.245,43.4125 879.008,230.179 879.008,460.562 C879.008,690.946 692.245,877.709 461.867,877.709 C231.479,877.709 44.7167,690.946 44.7167,460.562 C44.7167,230.179 231.479,43.4125 461.867,43.4125 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M246.821,299.191 L623.233,675.604 C637.801,690.171 661.633,690.171 676.208,675.604 L676.905,674.9 C691.475,660.334 691.475,636.5 676.909,621.93 L300.496,245.521 C285.925,230.95 262.092,230.95 247.525,245.521 L246.821,246.217 C232.254,260.787 232.254,284.625 246.821,299.191 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M300.496,675.604 L676.905,299.191 C691.471,284.625 691.471,260.787 676.905,246.221 L676.204,245.521 C661.633,230.95 637.801,230.95 623.233,245.521 L246.821,621.93 C232.25,636.5 232.25,660.334 246.821,674.905 L247.521,675.604 C262.092,690.175 285.925,690.175 300.496,675.604 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
27
gtk-3.0/assets/close-backdrop-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.161987,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M458.879,4.875 C710.679,4.875 914.804,208.996 914.804,460.8 C914.804,712.596 710.679,916.721 458.879,916.721 C207.079,916.721 2.95417,712.596 2.95417,460.8 C2.95417,208.996 207.079,4.875 458.879,4.875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.161987,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M458.879,43.65 C689.263,43.65 876.029,230.413 876.029,460.8 C876.029,691.179 689.263,877.946 458.879,877.946 C228.496,877.946 41.7292,691.179 41.7292,460.8 C41.7292,230.413 228.496,43.65 458.879,43.65 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
39
gtk-3.0/assets/close-hover.svg
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,4.6375 C713.663,4.6375 917.788,208.763 917.788,460.562 C917.788,712.363 713.663,916.487 461.867,916.487 C210.063,916.487 5.9375,712.363 5.9375,460.562 C5.9375,208.763 210.063,4.6375 461.867,4.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.867,43.4125 C692.245,43.4125 879.008,230.179 879.008,460.562 C879.008,690.946 692.245,877.709 461.867,877.709 C231.479,877.709 44.7167,690.946 44.7167,460.562 C44.7167,230.179 231.479,43.4125 461.867,43.4125 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M246.821,299.191 L623.233,675.604 C637.801,690.171 661.633,690.171 676.208,675.604 L676.905,674.9 C691.475,660.334 691.475,636.5 676.909,621.93 L300.496,245.521 C285.925,230.95 262.092,230.95 247.525,245.521 L246.821,246.217 C232.254,260.787 232.254,284.625 246.821,299.191 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.325575,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M300.496,675.604 L676.905,299.191 C691.471,284.625 691.471,260.787 676.905,246.221 L676.204,245.521 C661.633,230.95 637.801,230.95 623.233,245.521 L246.821,621.93 C232.25,636.5 232.25,660.334 246.821,674.905 L247.521,675.604 C262.092,690.175 285.925,690.175 300.496,675.604 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
27
gtk-3.0/assets/close-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#ff4f84" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.161988,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M458.879,7.85834 C710.679,7.85834 914.8,211.983 914.8,463.788 C914.8,715.583 710.679,919.709 458.879,919.709 C207.079,919.709 2.95417,715.583 2.95417,463.788 C2.95417,211.983 207.079,7.85834 458.879,7.85834 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#e43d6e" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.161988,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M458.879,46.6375 C689.263,46.6375 876.025,233.401 876.025,463.788 C876.025,694.166 689.263,880.929 458.879,880.929 C228.496,880.929 41.7292,694.166 41.7292,463.788 C41.7292,233.401 228.496,46.6375 458.879,46.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
33
gtk-3.0/assets/maximize-active.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
33
gtk-3.0/assets/maximize-backdrop-active.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
33
gtk-3.0/assets/maximize-backdrop-hover.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
27
gtk-3.0/assets/maximize-backdrop-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,4.875 C713.705,4.875 917.829,208.996 917.829,460.8 C917.829,712.596 713.705,916.721 461.904,916.721 C210.105,916.721 5.97917,712.596 5.97917,460.8 C5.97917,208.996 210.105,4.875 461.904,4.875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,43.65 C692.288,43.65 879.05,230.413 879.05,460.8 C879.05,691.179 692.288,877.946 461.904,877.946 C231.521,877.946 44.7541,691.179 44.7541,460.8 C44.7541,230.413 231.521,43.65 461.904,43.65 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
33
gtk-3.0/assets/maximize-hover.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
27
gtk-3.0/assets/maximize-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#2e85f7" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M463.15,7.85834 C714.95,7.85834 919.071,211.983 919.071,463.788 C919.071,715.583 714.95,919.709 463.15,919.709 C211.35,919.709 7.225,715.583 7.225,463.788 C7.225,211.983 211.35,7.85834 463.15,7.85834 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M463.15,46.6375 C693.534,46.6375 880.3,233.401 880.3,463.788 C880.3,694.166 693.534,880.929 463.15,880.929 C232.767,880.929 46,694.166 46,463.788 C46,233.401 232.767,46.6375 463.15,46.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
33
gtk-3.0/assets/maximized-active.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
33
gtk-3.0/assets/maximized-backdrop-active.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,10.2875 C717.934,10.2875 922.059,214.413 922.059,466.208 C922.059,718.009 717.934,922.133 466.138,922.133 C214.334,922.133 10.2083,718.009 10.2083,466.208 C10.2083,214.413 214.334,10.2875 466.138,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,49.0625 C696.521,49.0625 883.283,235.829 883.283,466.208 C883.283,696.596 696.521,883.358 466.138,883.358 C235.75,883.358 48.9875,696.596 48.9875,466.208 C48.9875,235.829 235.75,49.0625 466.138,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.559759,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,698.854 L627.804,698.854 C665.755,698.854 696.809,667.804 696.809,629.85 L696.809,344.842 L342.791,698.854 M590.604,233.567 L304.467,233.567 C266.512,233.567 235.462,264.617 235.462,302.571 L235.462,588.708 L590.604,233.567"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
33
gtk-3.0/assets/maximized-backdrop-hover.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
27
gtk-3.0/assets/maximized-backdrop-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,4.875 C713.705,4.875 917.829,208.996 917.829,460.8 C917.829,712.596 713.705,916.721 461.904,916.721 C210.105,916.721 5.97917,712.596 5.97917,460.8 C5.97917,208.996 210.105,4.875 461.904,4.875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,43.65 C692.288,43.65 879.05,230.413 879.05,460.8 C879.05,691.179 692.288,877.946 461.904,877.946 C231.521,877.946 44.7541,691.179 44.7541,460.8 C44.7541,230.413 231.521,43.65 461.904,43.65 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
33
gtk-3.0/assets/maximized-hover.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,4.6375 C717.934,4.6375 922.059,208.763 922.059,460.562 C922.059,712.363 717.934,916.487 466.138,916.487 C214.334,916.487 10.2083,712.363 10.2083,460.562 C10.2083,208.763 214.334,4.6375 466.138,4.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M466.138,43.4125 C696.521,43.4125 883.283,230.179 883.283,460.562 C883.283,690.946 696.521,877.709 466.138,877.709 C235.75,877.709 48.9875,690.946 48.9875,460.562 C48.9875,230.179 235.75,43.4125 466.138,43.4125 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.559759,50.2543)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M342.791,693.209 L627.804,693.209 C665.755,693.209 696.809,662.155 696.809,624.201 L696.809,339.191 L342.791,693.209 M590.604,227.917 L304.467,227.917 C266.512,227.917 235.462,258.966 235.462,296.921 L235.462,583.058 L590.604,227.917"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
27
gtk-3.0/assets/maximized-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1d83ff" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M463.15,7.85834 C714.95,7.85834 919.071,211.983 919.071,463.788 C919.071,715.583 714.95,919.709 463.15,919.709 C211.35,919.709 7.225,715.583 7.225,463.788 C7.225,211.983 211.35,7.85834 463.15,7.85834 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#0c65f7" fill-opacity="1" stroke="none" transform="matrix(0.0548338,0,0,-0.0548336,-0.396175,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M463.15,46.6375 C693.534,46.6375 880.3,233.401 880.3,463.788 C880.3,694.166 693.534,880.929 463.15,880.929 C232.767,880.929 46,694.166 46,463.788 C46,233.401 232.767,46.6375 463.15,46.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
33
gtk-3.0/assets/minimize-active.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M464.887,10.2875 C716.691,10.2875 920.817,214.413 920.817,466.208 C920.817,718.009 716.691,922.133 464.887,922.133 C213.088,922.133 8.9625,718.009 8.9625,466.208 C8.9625,214.413 213.088,10.2875 464.887,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M464.887,49.0625 C695.275,49.0625 882.037,235.829 882.037,466.208 C882.037,696.596 695.275,883.358 464.887,883.358 C234.505,883.358 47.7417,696.596 47.7417,466.208 C47.7417,235.829 234.505,49.0625 464.887,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,0.0548338,-0.491443,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M160.183,-466.196 C160.183,-486.035 176.265,-502.117 196.104,-502.117 L733.672,-502.117 C753.51,-502.117 769.592,-486.035 769.592,-466.196 L769.592,-466.196 C769.592,-446.358 753.51,-430.276 733.672,-430.276 L196.104,-430.276 C176.265,-430.276 160.183,-446.358 160.183,-466.196 L160.183,-466.196"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.1 KiB |
33
gtk-3.0/assets/minimize-backdrop-active.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M464.887,10.2875 C716.691,10.2875 920.817,214.413 920.817,466.208 C920.817,718.009 716.691,922.133 464.887,922.133 C213.088,922.133 8.9625,718.009 8.9625,466.208 C8.9625,214.413 213.088,10.2875 464.887,10.2875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,-0.0548338,-0.491443,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M464.887,49.0625 C695.275,49.0625 882.037,235.829 882.037,466.208 C882.037,696.596 695.275,883.358 464.887,883.358 C234.505,883.358 47.7417,696.596 47.7417,466.208 C47.7417,235.829 234.505,49.0625 464.887,49.0625 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548333,0,0,0.0548338,-0.491443,50.5641)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M160.183,-466.196 C160.183,-486.035 176.265,-502.117 196.104,-502.117 L733.672,-502.117 C753.51,-502.117 769.592,-486.035 769.592,-466.196 L769.592,-466.196 C769.592,-446.358 753.51,-430.276 733.672,-430.276 L196.104,-430.276 C176.265,-430.276 160.183,-446.358 160.183,-466.196 L160.183,-466.196"/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.1 KiB |
33
gtk-3.0/assets/minimize-backdrop-hover.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,2.07917 C713.705,2.07917 917.829,206.204 917.829,458.004 C917.829,709.801 713.705,913.925 461.904,913.925 C210.105,913.925 5.97917,709.801 5.97917,458.004 C5.97917,206.204 210.105,2.07917 461.904,2.07917 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,40.8542 C692.288,40.8542 879.05,227.617 879.05,458.004 C879.05,688.387 692.288,875.15 461.904,875.15 C231.521,875.15 44.7541,688.387 44.7541,458.004 C44.7541,227.617 231.521,40.8542 461.904,40.8542 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,0.0548338,-0.327859,50.114)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M157.197,-458.022 C157.197,-477.861 173.279,-493.943 193.117,-493.943 L730.683,-493.943 C750.521,-493.943 766.603,-477.861 766.603,-458.022 C766.603,-438.184 750.521,-422.102 730.683,-422.102 L193.117,-422.102 C173.279,-422.102 157.197,-438.184 157.197,-458.022 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
27
gtk-3.0/assets/minimize-backdrop-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.395944,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M463.146,4.875 C714.95,4.875 919.071,208.996 919.071,460.8 C919.071,712.596 714.95,916.721 463.146,916.721 C211.346,916.721 7.22083,712.596 7.22083,460.8 C7.22083,208.996 211.346,4.875 463.146,4.875 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.395944,50.2673)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
opacity="0.5" >
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M463.146,43.65 C693.534,43.65 880.295,230.413 880.295,460.8 C880.295,691.179 693.534,877.946 463.146,877.946 C232.763,877.946 46,691.179 46,460.8 C46,230.413 232.763,43.65 463.146,43.65 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
33
gtk-3.0/assets/minimize-hover.svg
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,2.07917 C713.705,2.07917 917.829,206.204 917.829,458.004 C917.829,709.801 713.705,913.925 461.904,913.925 C210.105,913.925 5.97917,709.801 5.97917,458.004 C5.97917,206.204 210.105,2.07917 461.904,2.07917 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548338,-0.327859,50.114)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,40.8542 C692.288,40.8542 879.05,227.617 879.05,458.004 C879.05,688.387 692.288,875.15 461.904,875.15 C231.521,875.15 44.7541,688.387 44.7541,458.004 C44.7541,227.617 231.521,40.8542 461.904,40.8542 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#363a4f" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,0.0548338,-0.327859,50.114)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M157.197,-458.022 C157.197,-477.861 173.279,-493.943 193.117,-493.943 L730.683,-493.943 C750.521,-493.943 766.603,-477.861 766.603,-458.022 C766.603,-438.184 750.521,-422.102 730.683,-422.102 L193.117,-422.102 C173.279,-422.102 157.197,-438.184 157.197,-458.022 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
27
gtk-3.0/assets/minimize-normal.svg
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg viewBox="0 0 50 50"
|
||||||
|
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
|
||||||
|
<title>Qt SVG Document</title>
|
||||||
|
<desc>Generated with Qt</desc>
|
||||||
|
<defs>
|
||||||
|
</defs>
|
||||||
|
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >
|
||||||
|
|
||||||
|
<g fill="#1bd0da" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.327859,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,7.85834 C713.705,7.85834 917.829,211.983 917.829,463.788 C917.829,715.583 713.705,919.709 461.904,919.709 C210.105,919.709 5.97917,715.583 5.97917,463.788 C5.97917,211.983 210.105,7.85834 461.904,7.85834 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="#19c0ca" fill-opacity="1" stroke="none" transform="matrix(0.0548336,0,0,-0.0548336,-0.327859,50.4309)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
<path vector-effect="none" fill-rule="evenodd" d="M461.904,46.6375 C692.288,46.6375 879.05,233.401 879.05,463.788 C879.05,694.166 692.288,880.929 461.904,880.929 C231.521,880.929 44.7541,694.166 44.7541,463.788 C44.7541,233.401 231.521,46.6375 461.904,46.6375 "/>
|
||||||
|
</g>
|
||||||
|
|
||||||
|
<g fill="none" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
|
||||||
|
font-family="Noto Sans" font-size="10" font-weight="400" font-style="normal"
|
||||||
|
>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.5 KiB |
4
gtk-3.0/bookmarks
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
file:///home/indrajith/Pictures
|
||||||
|
file:///home/indrajith/Music
|
||||||
|
file:///home/indrajith/Documents
|
||||||
|
file:///home/indrajith/Downloads
|
||||||
84
gtk-3.0/colors.css
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
@define-color borders_breeze #4c4d50;
|
||||||
|
@define-color content_view_bg_breeze #111216;
|
||||||
|
@define-color error_color_backdrop_breeze #43cdbd;
|
||||||
|
@define-color error_color_breeze #43cdbd;
|
||||||
|
@define-color error_color_insensitive_backdrop_breeze #235350;
|
||||||
|
@define-color error_color_insensitive_breeze #235350;
|
||||||
|
@define-color insensitive_base_color_breeze #111216;
|
||||||
|
@define-color insensitive_base_fg_color_breeze #646567;
|
||||||
|
@define-color insensitive_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_borders_breeze #26272a;
|
||||||
|
@define-color insensitive_fg_color_breeze #636467;
|
||||||
|
@define-color insensitive_selected_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_selected_fg_color_breeze #636467;
|
||||||
|
@define-color insensitive_unfocused_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_unfocused_fg_color_breeze #636467;
|
||||||
|
@define-color insensitive_unfocused_selected_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_unfocused_selected_fg_color_breeze #636467;
|
||||||
|
@define-color link_color_breeze #1f8cec;
|
||||||
|
@define-color link_visited_color_breeze #7f8c8d;
|
||||||
|
@define-color success_color_backdrop_breeze #9c53c6;
|
||||||
|
@define-color success_color_breeze #9c53c6;
|
||||||
|
@define-color success_color_insensitive_backdrop_breeze #422954;
|
||||||
|
@define-color success_color_insensitive_breeze #422954;
|
||||||
|
@define-color theme_base_color_breeze #111216;
|
||||||
|
@define-color theme_bg_color_breeze #111216;
|
||||||
|
@define-color theme_button_background_backdrop_breeze #16181d;
|
||||||
|
@define-color theme_button_background_backdrop_insensitive_breeze #16181d;
|
||||||
|
@define-color theme_button_background_insensitive_breeze #16181d;
|
||||||
|
@define-color theme_button_background_normal_breeze #16181d;
|
||||||
|
@define-color theme_button_decoration_focus_backdrop_breeze #3c78ff;
|
||||||
|
@define-color theme_button_decoration_focus_backdrop_insensitive_breeze #233a6c;
|
||||||
|
@define-color theme_button_decoration_focus_breeze #3c78ff;
|
||||||
|
@define-color theme_button_decoration_focus_insensitive_breeze #233a6c;
|
||||||
|
@define-color theme_button_decoration_hover_backdrop_breeze #10a6d4;
|
||||||
|
@define-color theme_button_decoration_hover_backdrop_insensitive_breeze #144a5d;
|
||||||
|
@define-color theme_button_decoration_hover_breeze #10a6d4;
|
||||||
|
@define-color theme_button_decoration_hover_insensitive_breeze #144a5d;
|
||||||
|
@define-color theme_button_foreground_active_backdrop_breeze #fefefe;
|
||||||
|
@define-color theme_button_foreground_active_backdrop_insensitive_breeze #636467;
|
||||||
|
@define-color theme_button_foreground_active_breeze #fefefe;
|
||||||
|
@define-color theme_button_foreground_active_insensitive_breeze #636467;
|
||||||
|
@define-color theme_button_foreground_backdrop_breeze #fefefe;
|
||||||
|
@define-color theme_button_foreground_backdrop_insensitive_breeze #67696c;
|
||||||
|
@define-color theme_button_foreground_insensitive_breeze #67696c;
|
||||||
|
@define-color theme_button_foreground_normal_breeze #fefefe;
|
||||||
|
@define-color theme_fg_color_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_background_backdrop_breeze #111216;
|
||||||
|
@define-color theme_header_background_breeze #111216;
|
||||||
|
@define-color theme_header_background_light_breeze #111216;
|
||||||
|
@define-color theme_header_foreground_backdrop_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_foreground_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_foreground_insensitive_backdrop_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_foreground_insensitive_breeze #fcfdfd;
|
||||||
|
@define-color theme_hovering_selected_bg_color_breeze #10a6d4;
|
||||||
|
@define-color theme_selected_bg_color_breeze #3c78ff;
|
||||||
|
@define-color theme_selected_fg_color_breeze #fefefe;
|
||||||
|
@define-color theme_text_color_breeze #fefefe;
|
||||||
|
@define-color theme_titlebar_background_backdrop_breeze #111216;
|
||||||
|
@define-color theme_titlebar_background_breeze #111216;
|
||||||
|
@define-color theme_titlebar_background_light_breeze #111216;
|
||||||
|
@define-color theme_titlebar_foreground_backdrop_breeze #b5b6b6;
|
||||||
|
@define-color theme_titlebar_foreground_breeze #edf0f2;
|
||||||
|
@define-color theme_titlebar_foreground_insensitive_backdrop_breeze #b5b6b6;
|
||||||
|
@define-color theme_titlebar_foreground_insensitive_breeze #b5b6b6;
|
||||||
|
@define-color theme_unfocused_base_color_breeze #111216;
|
||||||
|
@define-color theme_unfocused_bg_color_breeze #111216;
|
||||||
|
@define-color theme_unfocused_fg_color_breeze #fcfdfd;
|
||||||
|
@define-color theme_unfocused_selected_bg_color_alt_breeze #3c78ff;
|
||||||
|
@define-color theme_unfocused_selected_bg_color_breeze #3c78ff;
|
||||||
|
@define-color theme_unfocused_selected_fg_color_breeze #fefefe;
|
||||||
|
@define-color theme_unfocused_text_color_breeze #fefefe;
|
||||||
|
@define-color theme_unfocused_view_bg_color_breeze #111216;
|
||||||
|
@define-color theme_unfocused_view_text_color_breeze #646567;
|
||||||
|
@define-color theme_view_active_decoration_color_breeze #10a6d4;
|
||||||
|
@define-color theme_view_hover_decoration_color_breeze #10a6d4;
|
||||||
|
@define-color tooltip_background_breeze #111216;
|
||||||
|
@define-color tooltip_border_breeze #4c4d50;
|
||||||
|
@define-color tooltip_text_breeze #fcfdfd;
|
||||||
|
@define-color unfocused_borders_breeze #4c4d50;
|
||||||
|
@define-color unfocused_insensitive_borders_breeze #26272a;
|
||||||
|
@define-color warning_color_backdrop_breeze #5f7dcd;
|
||||||
|
@define-color warning_color_breeze #5f7dcd;
|
||||||
|
@define-color warning_color_insensitive_backdrop_breeze #2c3756;
|
||||||
|
@define-color warning_color_insensitive_breeze #2c3756;
|
||||||
37
gtk-3.0/gtk.css
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
.xfce4-panel {
|
||||||
|
border-bottom-left-radius: 13px;
|
||||||
|
border-bottom-right-radius: 13px;
|
||||||
|
border-top-left-radius: 13px;
|
||||||
|
border-top-right-radius: 13px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.xfce4-panel .tasklist .toggle :checked {
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tasklist button:checked {
|
||||||
|
border-bottom: 3px solid white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flat,
|
||||||
|
.toggle {
|
||||||
|
font-family: 'JetBrainsMono Nerd Font';
|
||||||
|
font-size: 10px;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
.flat:hover,
|
||||||
|
.toggle:hover {
|
||||||
|
font-family: 'JetBrainsMono Nerd Font';
|
||||||
|
font-size: 10px;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
.flat:checked,
|
||||||
|
.toggle:checked {
|
||||||
|
font-family: 'JetBrainsMono Nerd Font';
|
||||||
|
font-size: 10px;
|
||||||
|
border-bottom: 3px solid white;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
@import 'colors.css';
|
||||||
16
gtk-3.0/settings.ini
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
[Settings]
|
||||||
|
gtk-application-prefer-dark-theme=true
|
||||||
|
gtk-button-images=true
|
||||||
|
gtk-cursor-theme-name=kora
|
||||||
|
gtk-cursor-theme-size=24
|
||||||
|
gtk-decoration-layout=icon:minimize,maximize,close
|
||||||
|
gtk-enable-animations=true
|
||||||
|
gtk-font-name=Noto Sans, 10
|
||||||
|
gtk-icon-theme-name=kora-light
|
||||||
|
gtk-menu-images=true
|
||||||
|
gtk-modules=colorreload-gtk-module:window-decorations-gtk-module
|
||||||
|
gtk-primary-button-warps-slider=true
|
||||||
|
gtk-sound-theme-name=ocean
|
||||||
|
gtk-theme-name=Breeze
|
||||||
|
gtk-toolbar-style=3
|
||||||
|
gtk-xft-dpi=98304
|
||||||
71
gtk-3.0/window_decorations.css
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
headerbar button.titlebutton.close, .titlebar button.titlebutton.close {
|
||||||
|
background-image: url("assets/close-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:hover, .titlebar button.titlebutton.close:hover {
|
||||||
|
background-image: url("assets/close-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:active, .titlebar button.titlebutton.close:active {
|
||||||
|
background-image: url("assets/close-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:backdrop, .titlebar button.titlebutton.close:backdrop {
|
||||||
|
background-image: url("assets/close-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:backdrop:hover, .titlebar button.titlebutton.close:backdrop:hover {
|
||||||
|
background-image: url("assets/close-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:backdrop:active, .titlebar button.titlebutton.close:backdrop:active {
|
||||||
|
background-image: url("assets/close-backdrop-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize, .titlebar button.titlebutton.maximize {
|
||||||
|
background-image: url("assets/maximize-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:hover, .titlebar button.titlebutton.maximize:hover {
|
||||||
|
background-image: url("assets/maximize-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:active, .titlebar button.titlebutton.maximize:active {
|
||||||
|
background-image: url("assets/maximize-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:backdrop, .titlebar button.titlebutton.maximize:backdrop {
|
||||||
|
background-image: url("assets/maximize-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:backdrop:hover, .titlebar button.titlebutton.maximize:backdrop:hover {
|
||||||
|
background-image: url("assets/maximize-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:backdrop:active, .titlebar button.titlebutton.maximize:backdrop:active {
|
||||||
|
background-image: url("assets/maximize-backdrop-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize, .titlebar button.titlebutton.minimize {
|
||||||
|
background-image: url("assets/minimize-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:hover, .titlebar button.titlebutton.minimize:hover {
|
||||||
|
background-image: url("assets/minimize-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:active, .titlebar button.titlebutton.minimize:active {
|
||||||
|
background-image: url("assets/minimize-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:backdrop, .titlebar button.titlebutton.minimize:backdrop {
|
||||||
|
background-image: url("assets/minimize-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:backdrop:hover, .titlebar button.titlebutton.minimize:backdrop:hover {
|
||||||
|
background-image: url("assets/minimize-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:backdrop:active, .titlebar button.titlebutton.minimize:backdrop:active {
|
||||||
|
background-image: url("assets/minimize-backdrop-active.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize, .maximized .titlebar button.titlebutton.maximize {
|
||||||
|
background-image: url("assets/maximized-normal.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:hover, .maximized .titlebar button.titlebutton.maximize:hover {
|
||||||
|
background-image: url("assets/maximized-hover.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:active, .maximized .titlebar button.titlebutton.maximize:active {
|
||||||
|
background-image: url("assets/maximized-active.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:backdrop, .maximized .titlebar button.titlebutton.maximize:backdrop {
|
||||||
|
background-image: url("assets/maximized-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:backdrop:hover, .maximized .titlebar button.titlebutton.maximize:backdrop:hover {
|
||||||
|
background-image: url("assets/maximized-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:backdrop:active, .maximized .titlebar button.titlebutton.maximize:backdrop:active {
|
||||||
|
background-image: url("assets/maximized-backdrop-active.svg"); }
|
||||||
84
gtk-4.0/colors.css
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
@define-color borders_breeze #4c4d50;
|
||||||
|
@define-color content_view_bg_breeze #111216;
|
||||||
|
@define-color error_color_backdrop_breeze #43cdbd;
|
||||||
|
@define-color error_color_breeze #43cdbd;
|
||||||
|
@define-color error_color_insensitive_backdrop_breeze #235350;
|
||||||
|
@define-color error_color_insensitive_breeze #235350;
|
||||||
|
@define-color insensitive_base_color_breeze #111216;
|
||||||
|
@define-color insensitive_base_fg_color_breeze #646567;
|
||||||
|
@define-color insensitive_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_borders_breeze #26272a;
|
||||||
|
@define-color insensitive_fg_color_breeze #636467;
|
||||||
|
@define-color insensitive_selected_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_selected_fg_color_breeze #636467;
|
||||||
|
@define-color insensitive_unfocused_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_unfocused_fg_color_breeze #636467;
|
||||||
|
@define-color insensitive_unfocused_selected_bg_color_breeze #111216;
|
||||||
|
@define-color insensitive_unfocused_selected_fg_color_breeze #636467;
|
||||||
|
@define-color link_color_breeze #1f8cec;
|
||||||
|
@define-color link_visited_color_breeze #7f8c8d;
|
||||||
|
@define-color success_color_backdrop_breeze #9c53c6;
|
||||||
|
@define-color success_color_breeze #9c53c6;
|
||||||
|
@define-color success_color_insensitive_backdrop_breeze #422954;
|
||||||
|
@define-color success_color_insensitive_breeze #422954;
|
||||||
|
@define-color theme_base_color_breeze #111216;
|
||||||
|
@define-color theme_bg_color_breeze #111216;
|
||||||
|
@define-color theme_button_background_backdrop_breeze #16181d;
|
||||||
|
@define-color theme_button_background_backdrop_insensitive_breeze #16181d;
|
||||||
|
@define-color theme_button_background_insensitive_breeze #16181d;
|
||||||
|
@define-color theme_button_background_normal_breeze #16181d;
|
||||||
|
@define-color theme_button_decoration_focus_backdrop_breeze #3c78ff;
|
||||||
|
@define-color theme_button_decoration_focus_backdrop_insensitive_breeze #233a6c;
|
||||||
|
@define-color theme_button_decoration_focus_breeze #3c78ff;
|
||||||
|
@define-color theme_button_decoration_focus_insensitive_breeze #233a6c;
|
||||||
|
@define-color theme_button_decoration_hover_backdrop_breeze #10a6d4;
|
||||||
|
@define-color theme_button_decoration_hover_backdrop_insensitive_breeze #144a5d;
|
||||||
|
@define-color theme_button_decoration_hover_breeze #10a6d4;
|
||||||
|
@define-color theme_button_decoration_hover_insensitive_breeze #144a5d;
|
||||||
|
@define-color theme_button_foreground_active_backdrop_breeze #fefefe;
|
||||||
|
@define-color theme_button_foreground_active_backdrop_insensitive_breeze #636467;
|
||||||
|
@define-color theme_button_foreground_active_breeze #fefefe;
|
||||||
|
@define-color theme_button_foreground_active_insensitive_breeze #636467;
|
||||||
|
@define-color theme_button_foreground_backdrop_breeze #fefefe;
|
||||||
|
@define-color theme_button_foreground_backdrop_insensitive_breeze #67696c;
|
||||||
|
@define-color theme_button_foreground_insensitive_breeze #67696c;
|
||||||
|
@define-color theme_button_foreground_normal_breeze #fefefe;
|
||||||
|
@define-color theme_fg_color_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_background_backdrop_breeze #111216;
|
||||||
|
@define-color theme_header_background_breeze #111216;
|
||||||
|
@define-color theme_header_background_light_breeze #111216;
|
||||||
|
@define-color theme_header_foreground_backdrop_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_foreground_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_foreground_insensitive_backdrop_breeze #fcfdfd;
|
||||||
|
@define-color theme_header_foreground_insensitive_breeze #fcfdfd;
|
||||||
|
@define-color theme_hovering_selected_bg_color_breeze #10a6d4;
|
||||||
|
@define-color theme_selected_bg_color_breeze #3c78ff;
|
||||||
|
@define-color theme_selected_fg_color_breeze #fefefe;
|
||||||
|
@define-color theme_text_color_breeze #fefefe;
|
||||||
|
@define-color theme_titlebar_background_backdrop_breeze #111216;
|
||||||
|
@define-color theme_titlebar_background_breeze #111216;
|
||||||
|
@define-color theme_titlebar_background_light_breeze #111216;
|
||||||
|
@define-color theme_titlebar_foreground_backdrop_breeze #b5b6b6;
|
||||||
|
@define-color theme_titlebar_foreground_breeze #edf0f2;
|
||||||
|
@define-color theme_titlebar_foreground_insensitive_backdrop_breeze #b5b6b6;
|
||||||
|
@define-color theme_titlebar_foreground_insensitive_breeze #b5b6b6;
|
||||||
|
@define-color theme_unfocused_base_color_breeze #111216;
|
||||||
|
@define-color theme_unfocused_bg_color_breeze #111216;
|
||||||
|
@define-color theme_unfocused_fg_color_breeze #fcfdfd;
|
||||||
|
@define-color theme_unfocused_selected_bg_color_alt_breeze #3c78ff;
|
||||||
|
@define-color theme_unfocused_selected_bg_color_breeze #3c78ff;
|
||||||
|
@define-color theme_unfocused_selected_fg_color_breeze #fefefe;
|
||||||
|
@define-color theme_unfocused_text_color_breeze #fefefe;
|
||||||
|
@define-color theme_unfocused_view_bg_color_breeze #111216;
|
||||||
|
@define-color theme_unfocused_view_text_color_breeze #646567;
|
||||||
|
@define-color theme_view_active_decoration_color_breeze #10a6d4;
|
||||||
|
@define-color theme_view_hover_decoration_color_breeze #10a6d4;
|
||||||
|
@define-color tooltip_background_breeze #111216;
|
||||||
|
@define-color tooltip_border_breeze #4c4d50;
|
||||||
|
@define-color tooltip_text_breeze #fcfdfd;
|
||||||
|
@define-color unfocused_borders_breeze #4c4d50;
|
||||||
|
@define-color unfocused_insensitive_borders_breeze #26272a;
|
||||||
|
@define-color warning_color_backdrop_breeze #5f7dcd;
|
||||||
|
@define-color warning_color_breeze #5f7dcd;
|
||||||
|
@define-color warning_color_insensitive_backdrop_breeze #2c3756;
|
||||||
|
@define-color warning_color_insensitive_breeze #2c3756;
|
||||||
1
gtk-4.0/gtk.css
Normal file
@@ -0,0 +1 @@
|
|||||||
|
@import 'colors.css';
|
||||||
12
gtk-4.0/settings.ini
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
[Settings]
|
||||||
|
gtk-application-prefer-dark-theme=true
|
||||||
|
gtk-cursor-theme-name=kora
|
||||||
|
gtk-cursor-theme-size=24
|
||||||
|
gtk-decoration-layout=icon:minimize,maximize,close
|
||||||
|
gtk-enable-animations=true
|
||||||
|
gtk-font-name=Noto Sans, 10
|
||||||
|
gtk-icon-theme-name=kora-light
|
||||||
|
gtk-modules=colorreload-gtk-module:window-decorations-gtk-module
|
||||||
|
gtk-primary-button-warps-slider=true
|
||||||
|
gtk-sound-theme-name=ocean
|
||||||
|
gtk-xft-dpi=98304
|
||||||
71
gtk-4.0/window_decorations.css
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
headerbar button.titlebutton.close, .titlebar button.titlebutton.close {
|
||||||
|
background-image: url("assets/close-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:hover, .titlebar button.titlebutton.close:hover {
|
||||||
|
background-image: url("assets/close-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:active, .titlebar button.titlebutton.close:active {
|
||||||
|
background-image: url("assets/close-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:backdrop, .titlebar button.titlebutton.close:backdrop {
|
||||||
|
background-image: url("assets/close-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:backdrop:hover, .titlebar button.titlebutton.close:backdrop:hover {
|
||||||
|
background-image: url("assets/close-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.close:backdrop:active, .titlebar button.titlebutton.close:backdrop:active {
|
||||||
|
background-image: url("assets/close-backdrop-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize, .titlebar button.titlebutton.maximize {
|
||||||
|
background-image: url("assets/maximize-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:hover, .titlebar button.titlebutton.maximize:hover {
|
||||||
|
background-image: url("assets/maximize-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:active, .titlebar button.titlebutton.maximize:active {
|
||||||
|
background-image: url("assets/maximize-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:backdrop, .titlebar button.titlebutton.maximize:backdrop {
|
||||||
|
background-image: url("assets/maximize-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:backdrop:hover, .titlebar button.titlebutton.maximize:backdrop:hover {
|
||||||
|
background-image: url("assets/maximize-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.maximize:backdrop:active, .titlebar button.titlebutton.maximize:backdrop:active {
|
||||||
|
background-image: url("assets/maximize-backdrop-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize, .titlebar button.titlebutton.minimize {
|
||||||
|
background-image: url("assets/minimize-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:hover, .titlebar button.titlebutton.minimize:hover {
|
||||||
|
background-image: url("assets/minimize-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:active, .titlebar button.titlebutton.minimize:active {
|
||||||
|
background-image: url("assets/minimize-active.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:backdrop, .titlebar button.titlebutton.minimize:backdrop {
|
||||||
|
background-image: url("assets/minimize-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:backdrop:hover, .titlebar button.titlebutton.minimize:backdrop:hover {
|
||||||
|
background-image: url("assets/minimize-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
headerbar button.titlebutton.minimize:backdrop:active, .titlebar button.titlebutton.minimize:backdrop:active {
|
||||||
|
background-image: url("assets/minimize-backdrop-active.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize, .maximized .titlebar button.titlebutton.maximize {
|
||||||
|
background-image: url("assets/maximized-normal.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:hover, .maximized .titlebar button.titlebutton.maximize:hover {
|
||||||
|
background-image: url("assets/maximized-hover.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:active, .maximized .titlebar button.titlebutton.maximize:active {
|
||||||
|
background-image: url("assets/maximized-active.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:backdrop, .maximized .titlebar button.titlebutton.maximize:backdrop {
|
||||||
|
background-image: url("assets/maximized-backdrop-normal.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:backdrop:hover, .maximized .titlebar button.titlebutton.maximize:backdrop:hover {
|
||||||
|
background-image: url("assets/maximized-backdrop-hover.svg"); }
|
||||||
|
|
||||||
|
.maximized headerbar button.titlebutton.maximize:backdrop:active, .maximized .titlebar button.titlebutton.maximize:backdrop:active {
|
||||||
|
background-image: url("assets/maximized-backdrop-active.svg"); }
|
||||||
6
gtkrc
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
# created by KDE Plasma, Sat Jun 22 16:25:32 2024
|
||||||
|
#
|
||||||
|
include "/usr/share/themes/Breeze/gtk-2.0/gtkrc"
|
||||||
|
|
||||||
|
gtk-theme-name="Breeze"
|
||||||
|
|
||||||
5
gtkrc-2.0
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# created by KDE Plasma, Sat Jun 22 16:25:32 2024
|
||||||
|
#
|
||||||
|
|
||||||
|
gtk-alternative-button-order = 1
|
||||||
|
|
||||||
11
hypr/hypridle.conf
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
listener {
|
||||||
|
timeout = 300 # 5min
|
||||||
|
on-timeout = hyprlock # command to run when timeout has passed
|
||||||
|
on-resume = notify-send "Welcome back!" # command to run when activity is detected after timeout has fired.
|
||||||
|
}
|
||||||
|
|
||||||
|
listener {
|
||||||
|
timeout = 900 # 15min
|
||||||
|
on-timeout = hyprctl dispatch dpms off # command to run when timeout has passed
|
||||||
|
on-resume = hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
|
||||||
|
}
|
||||||
265
hypr/hyprland.conf
Normal file
@@ -0,0 +1,265 @@
|
|||||||
|
|
||||||
|
# #######################################################################################
|
||||||
|
# AUTOGENERATED HYPR CONFIG.
|
||||||
|
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
|
||||||
|
# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
|
||||||
|
# #######################################################################################
|
||||||
|
|
||||||
|
autogenerated = 0 # remove this line to remove the warning
|
||||||
|
|
||||||
|
# This is an example Hyprland config file.
|
||||||
|
# Refer to the wiki for more information.
|
||||||
|
# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/
|
||||||
|
|
||||||
|
# Please note not all available settings / options are set here.
|
||||||
|
# For a full list, see the wiki
|
||||||
|
|
||||||
|
# You can split this configuration into multiple files
|
||||||
|
# Create your files separately and then link them to this file like this:
|
||||||
|
# source = ~/.config/hypr/myColors.conf
|
||||||
|
|
||||||
|
|
||||||
|
################
|
||||||
|
### MONITORS ###
|
||||||
|
################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
|
monitor=,preferred,auto,auto
|
||||||
|
|
||||||
|
|
||||||
|
###################
|
||||||
|
### MY PROGRAMS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
|
||||||
|
# Set programs that you use
|
||||||
|
$terminal = foot
|
||||||
|
$fileManager = thunar
|
||||||
|
$menu = rofi -show drun
|
||||||
|
|
||||||
|
|
||||||
|
#################
|
||||||
|
### AUTOSTART ###
|
||||||
|
#################
|
||||||
|
|
||||||
|
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||||
|
# Or execute your favorite apps at launch like this:
|
||||||
|
|
||||||
|
# exec-once = $terminal
|
||||||
|
# exec-once = nm-applet &
|
||||||
|
exec-once = waybar
|
||||||
|
exec-once = hyprpaper
|
||||||
|
exec-once = hypridle
|
||||||
|
|
||||||
|
#############################
|
||||||
|
### ENVIRONMENT VARIABLES ###
|
||||||
|
#############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
||||||
|
|
||||||
|
env = XCURSOR_SIZE,24
|
||||||
|
env = HYPRCURSOR_SIZE,24
|
||||||
|
|
||||||
|
|
||||||
|
#####################
|
||||||
|
### LOOK AND FEEL ###
|
||||||
|
#####################
|
||||||
|
|
||||||
|
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#general
|
||||||
|
general {
|
||||||
|
gaps_in = 5
|
||||||
|
gaps_out = 20
|
||||||
|
|
||||||
|
border_size = 2
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
||||||
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||||
|
col.inactive_border = rgba(595959aa)
|
||||||
|
|
||||||
|
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||||
|
resize_on_border = false
|
||||||
|
|
||||||
|
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||||
|
allow_tearing = false
|
||||||
|
|
||||||
|
layout = dwindle
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||||
|
decoration {
|
||||||
|
rounding = 10
|
||||||
|
|
||||||
|
# Change transparency of focused and unfocused windows
|
||||||
|
active_opacity = 1.0
|
||||||
|
inactive_opacity = 1.0
|
||||||
|
|
||||||
|
drop_shadow = true
|
||||||
|
shadow_range = 4
|
||||||
|
shadow_render_power = 3
|
||||||
|
col.shadow = rgba(1a1a1aee)
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
||||||
|
blur {
|
||||||
|
enabled = true
|
||||||
|
size = 3
|
||||||
|
passes = 1
|
||||||
|
|
||||||
|
vibrancy = 0.1696
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
||||||
|
animations {
|
||||||
|
enabled = true
|
||||||
|
|
||||||
|
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||||
|
|
||||||
|
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||||
|
|
||||||
|
animation = windows, 1, 7, myBezier
|
||||||
|
animation = windowsOut, 1, 7, default, popin 80%
|
||||||
|
animation = border, 1, 10, default
|
||||||
|
animation = borderangle, 1, 8, default
|
||||||
|
animation = fade, 1, 7, default
|
||||||
|
animation = workspaces, 1, 6, default
|
||||||
|
}
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||||
|
dwindle {
|
||||||
|
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||||
|
preserve_split = true # You probably want this
|
||||||
|
}
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||||
|
master {
|
||||||
|
new_is_master = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
||||||
|
misc {
|
||||||
|
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||||
|
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#############
|
||||||
|
### INPUT ###
|
||||||
|
#############
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||||
|
input {
|
||||||
|
kb_layout = us
|
||||||
|
kb_variant =
|
||||||
|
kb_model =
|
||||||
|
kb_options =
|
||||||
|
kb_rules =
|
||||||
|
|
||||||
|
follow_mouse = 1
|
||||||
|
|
||||||
|
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||||
|
|
||||||
|
touchpad {
|
||||||
|
natural_scroll = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
||||||
|
gestures {
|
||||||
|
workspace_swipe = false
|
||||||
|
}
|
||||||
|
|
||||||
|
# Example per-device config
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
||||||
|
device {
|
||||||
|
name = epic-mouse-v1
|
||||||
|
sensitivity = -0.5
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
####################
|
||||||
|
### KEYBINDINGSS ###
|
||||||
|
####################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||||
|
|
||||||
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
|
bind = $mainMod, RETURN, exec, $terminal
|
||||||
|
bind = $mainMod, C, killactive,
|
||||||
|
bind = $mainMod, M, exec, wlogout
|
||||||
|
bind = $mainMod, E, exec, $fileManager
|
||||||
|
bind = $mainMod, V, togglefloating,
|
||||||
|
bind = $mainMod, D, exec, $menu
|
||||||
|
bind = $mainMod, P, pseudo, # dwindle
|
||||||
|
bind = $mainMod, J, togglesplit, # dwindle
|
||||||
|
bind = $mainMod,F,fullscreen
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys
|
||||||
|
bind = $mainMod, left, movefocus, l
|
||||||
|
bind = $mainMod, right, movefocus, r
|
||||||
|
bind = $mainMod, up, movefocus, u
|
||||||
|
bind = $mainMod, down, movefocus, d
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
bind = $mainMod, 1, workspace, 1
|
||||||
|
bind = $mainMod, 2, workspace, 2
|
||||||
|
bind = $mainMod, 3, workspace, 3
|
||||||
|
bind = $mainMod, 4, workspace, 4
|
||||||
|
bind = $mainMod, 5, workspace, 5
|
||||||
|
bind = $mainMod, 6, workspace, 6
|
||||||
|
bind = $mainMod, 7, workspace, 7
|
||||||
|
bind = $mainMod, 8, workspace, 8
|
||||||
|
bind = $mainMod, 9, workspace, 9
|
||||||
|
bind = $mainMod, 0, workspace, 10
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||||
|
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||||
|
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||||
|
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||||
|
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||||
|
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||||
|
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||||
|
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||||
|
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||||
|
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||||||
|
|
||||||
|
# Example special workspace (scratchpad)
|
||||||
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll
|
||||||
|
bind = $mainMod, mouse_down, workspace, e+1
|
||||||
|
bind = $mainMod, mouse_up, workspace, e-1
|
||||||
|
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
bindm = $mainMod, mouse:272, movewindow
|
||||||
|
bindm = $mainMod, mouse:273, resizewindow
|
||||||
|
|
||||||
|
|
||||||
|
#POWER
|
||||||
|
bind = $mainMod, L, exec,~/Documents/scripts/lock.sh
|
||||||
|
|
||||||
|
|
||||||
|
##############################
|
||||||
|
### WINDOWS AND WORKSPACES ###
|
||||||
|
##############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
||||||
|
|
||||||
|
# Example windowrule v1
|
||||||
|
# windowrule = float, ^(kitty)$
|
||||||
|
|
||||||
|
# Example windowrule v2
|
||||||
|
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||||
|
|
||||||
|
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.
|
||||||
|
windowrule = float,^(blueman-manager)$
|
||||||
|
windowrule = float,^(qalculate-gtk)$
|
||||||
|
windowrulev2 = float,title:^(Volume Control)$
|
||||||
|
#windowrulev2 = noblur,class:^(google-chrome-stable)$
|
||||||
|
windowrulev2=noblur,class:^()$,title:^()$
|
||||||
86
hypr/hyprlock.conf
Normal file
@@ -0,0 +1,86 @@
|
|||||||
|
|
||||||
|
# BACKGROUND
|
||||||
|
background {
|
||||||
|
monitor =
|
||||||
|
path = ~/Pictures/wallhaven-l8vp7y_1920x1080.png
|
||||||
|
# blur_passes = 0.3
|
||||||
|
contrast = 0.8916
|
||||||
|
brightness = 0.8172
|
||||||
|
vibrancy = 0.1696
|
||||||
|
vibrancy_darkness = 0.0
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
input-field {
|
||||||
|
monitor =
|
||||||
|
size = 200, 50
|
||||||
|
outline_thickness = 3
|
||||||
|
dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
|
||||||
|
dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
|
dots_center = true
|
||||||
|
dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
|
||||||
|
outer_color = rgb(151515)
|
||||||
|
inner_color = rgb(FFFFFF)
|
||||||
|
font_color = rgb(10, 10, 10)
|
||||||
|
fade_on_empty = true
|
||||||
|
fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
|
||||||
|
placeholder_text = <i>Input Password...</i> # Text rendered in the input box when it's empty.
|
||||||
|
hide_input = false
|
||||||
|
rounding = -1 # -1 means complete rounding (circle/oval)
|
||||||
|
check_color = rgb(204, 136, 34)
|
||||||
|
fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color
|
||||||
|
fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> # can be set to empty
|
||||||
|
fail_transition = 300 # transition time in ms between normal outer_color and fail_color
|
||||||
|
capslock_color = -1
|
||||||
|
numlock_color = -1
|
||||||
|
bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above)
|
||||||
|
invert_numlock = false # change color if numlock is off
|
||||||
|
swap_font_color = false # see below
|
||||||
|
position = 0, -120
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# TIME
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] echo "$(date +"%-I:%M%p")"
|
||||||
|
color = $foreground
|
||||||
|
#color = rgba(255, 255, 255, 0.6)
|
||||||
|
font_size = 120
|
||||||
|
font_family = EnvyCodeR Nerd Font
|
||||||
|
position = 0, 0
|
||||||
|
halign = center
|
||||||
|
valign = top
|
||||||
|
}
|
||||||
|
|
||||||
|
# USER
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = $USER
|
||||||
|
color = $foreground
|
||||||
|
#color = rgba(255, 255, 255, 0.6)
|
||||||
|
font_size = 25
|
||||||
|
font_family = EnvyCodeR Nerd Font
|
||||||
|
position = 0, -40
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
shadow_passes = 5
|
||||||
|
shadow_size = 10
|
||||||
|
}
|
||||||
|
|
||||||
|
# image {
|
||||||
|
# path = ~/Pictures/wallhaven-l8vp7y_1920x1080.png
|
||||||
|
# size = 280 # lesser side if not 1:1 ratio
|
||||||
|
# rounding = -1 # negative values mean circle
|
||||||
|
# border_size = 4
|
||||||
|
# border_color = rgb(221, 221, 221)
|
||||||
|
# rotate = 0 # degrees, counter-clockwise
|
||||||
|
# reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2
|
||||||
|
# # reload_cmd = # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F
|
||||||
|
# position = 0, 150
|
||||||
|
# halign = center
|
||||||
|
# valign = center
|
||||||
|
# }
|
||||||
4
hypr/hyprpaper.conf
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
preload = /home/indrajith/Pictures/wallhaven-l8vp7y_1920x1080.png
|
||||||
|
|
||||||
|
wallpaper = ,/home/indrajith/Pictures/wallhaven-l8vp7y_1920x1080.png
|
||||||
|
splash = true
|
||||||
1
hypr/scripts/browser.sh
Executable file
@@ -0,0 +1 @@
|
|||||||
|
google-chrome-stable
|
||||||
1
hypr/scripts/filemanager.sh
Executable file
@@ -0,0 +1 @@
|
|||||||
|
thunar
|
||||||
21
kitty/current-theme.conf
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
background #0e0c15
|
||||||
|
foreground #dbd0b9
|
||||||
|
cursor #bbbbbb
|
||||||
|
selection_background #f3e0b8
|
||||||
|
color0 #08002e
|
||||||
|
color8 #331d4c
|
||||||
|
color1 #64002c
|
||||||
|
color9 #cf2062
|
||||||
|
color2 #5d731a
|
||||||
|
color10 #b3ce58
|
||||||
|
color3 #cd751c
|
||||||
|
color11 #fac357
|
||||||
|
color4 #1d6da1
|
||||||
|
color12 #40a4cf
|
||||||
|
color5 #b7077e
|
||||||
|
color13 #f02aae
|
||||||
|
color6 #42a38c
|
||||||
|
color14 #62caa8
|
||||||
|
color7 #f3e0b8
|
||||||
|
color15 #fff5db
|
||||||
|
selection_foreground #0e0c15
|
||||||
111
kitty/kitty-themes/.all-contributorsrc
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
{
|
||||||
|
"files": [
|
||||||
|
"README.md"
|
||||||
|
],
|
||||||
|
"badgeTemplate": "[](#contributors)",
|
||||||
|
"contributorTemplate": "<a href=\"<%= contributor.profile %>\"><b><%= contributor.name %></b></a><br /><%= contributions %>",
|
||||||
|
"imageSize": 100,
|
||||||
|
"commit": false,
|
||||||
|
"contributors": [
|
||||||
|
{
|
||||||
|
"login": "scopatz",
|
||||||
|
"name": "Anthony Scopatz",
|
||||||
|
"avatar_url": "https://avatars2.githubusercontent.com/u/320553?v=4",
|
||||||
|
"profile": "http://www.scopatz.com",
|
||||||
|
"contributions": [
|
||||||
|
"doc"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "orangecoloured",
|
||||||
|
"name": "RCKT",
|
||||||
|
"avatar_url": "https://avatars3.githubusercontent.com/u/3314891?v=4",
|
||||||
|
"profile": "https://rckt.cc",
|
||||||
|
"contributions": [
|
||||||
|
"theme"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "varmanishant",
|
||||||
|
"name": "varmanishant",
|
||||||
|
"avatar_url": "https://avatars1.githubusercontent.com/u/4084912?v=4",
|
||||||
|
"profile": "https://github.com/varmanishant",
|
||||||
|
"contributions": [
|
||||||
|
"theme"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "rlerdorf",
|
||||||
|
"name": "Rasmus Lerdorf",
|
||||||
|
"avatar_url": "https://avatars3.githubusercontent.com/u/54641?v=4",
|
||||||
|
"profile": "https://github.com/rlerdorf",
|
||||||
|
"contributions": [
|
||||||
|
"bug",
|
||||||
|
"ideas"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "Luflosi",
|
||||||
|
"name": "Luflosi",
|
||||||
|
"avatar_url": "https://avatars1.githubusercontent.com/u/15217907?v=4",
|
||||||
|
"profile": "https://github.com/Luflosi",
|
||||||
|
"contributions": [
|
||||||
|
"fix",
|
||||||
|
"question",
|
||||||
|
"doc"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "connorholyday",
|
||||||
|
"name": "Connor Holyday",
|
||||||
|
"avatar_url": "https://avatars1.githubusercontent.com/u/4559119?v=4",
|
||||||
|
"profile": "https://holyday.me",
|
||||||
|
"contributions": [
|
||||||
|
"fix"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "BlueDrink9",
|
||||||
|
"name": "BlueDrink9",
|
||||||
|
"avatar_url": "https://avatars3.githubusercontent.com/u/26474254?v=4",
|
||||||
|
"profile": "https://github.com/BlueDrink9",
|
||||||
|
"contributions": [
|
||||||
|
"bug"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "brujoand",
|
||||||
|
"name": "Anders Brujordet",
|
||||||
|
"avatar_url": "https://avatars1.githubusercontent.com/u/124421?v=4",
|
||||||
|
"profile": "https://github.com/brujoand",
|
||||||
|
"contributions": [
|
||||||
|
"theme"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"login": "rjshrjndrn",
|
||||||
|
"name": "Rajesh Rajendran",
|
||||||
|
"avatar_url": "https://avatars3.githubusercontent.com/u/2563385?v=4",
|
||||||
|
"profile": "http://www.hackouts.com",
|
||||||
|
"contributions": [
|
||||||
|
"fix"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"types": {
|
||||||
|
"theme": {
|
||||||
|
"symbol": "😻",
|
||||||
|
"description": "New theme added to the collection"
|
||||||
|
},
|
||||||
|
"fix": {
|
||||||
|
"symbol": "🛠️",
|
||||||
|
"description": "Fixed a theme"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"contributorsPerLine": 7,
|
||||||
|
"projectName": "kitty-themes",
|
||||||
|
"projectOwner": "dexpota",
|
||||||
|
"repoType": "github",
|
||||||
|
"repoHost": "https://github.com",
|
||||||
|
"commitConvention": "none"
|
||||||
|
}
|
||||||
10
kitty/kitty-themes/.github/ISSUE_TEMPLATE/theme-request.md
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
---
|
||||||
|
name: theme-request
|
||||||
|
about: Use the following template if you want a new theme to be included in the collection.
|
||||||
|
title: Add <theme> to the collection.
|
||||||
|
labels: theme request
|
||||||
|
assignees: dexpota
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Please, include **theme** in the collection. You can find it here: **url**
|
||||||
9
kitty/kitty-themes/.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
name: theme-request
|
||||||
|
about: Use the following template if you want a new theme to be included in the collection.
|
||||||
|
title: Add <theme> to the collection.
|
||||||
|
labels: theme request
|
||||||
|
assignees: dexpota
|
||||||
|
|
||||||
|
---
|
||||||
|
Please, include **theme** in the collection.
|
||||||
BIN
kitty/kitty-themes/.github/kitty-themes.jpg
vendored
Normal file
|
After Width: | Height: | Size: 153 KiB |
9
kitty/kitty-themes/.tools/README.md
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
# kitty-tools
|
||||||
|
> A bunch of useful scripts used to convert schemes and generate files.
|
||||||
|
|
||||||
|
## Process overview
|
||||||
|
|
||||||
|
1. Find a nice theme and check the licensing, is it possible to distribute the theme?
|
||||||
|
2. Generate the configuration file for **kitty**;
|
||||||
|
3. Add a new preview for the theme;
|
||||||
|
4. Update the README.md;
|
||||||
26
kitty/kitty-themes/.tools/color_table.sh
Executable file
@@ -0,0 +1,26 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# This file echoes a bunch of color codes to the
|
||||||
|
# terminal to demonstrate what's available. Each
|
||||||
|
# line is the color code of one forground color,
|
||||||
|
# out of 17 (default + 16 escapes), followed by a
|
||||||
|
# test use of that color on all nine background
|
||||||
|
# colors (default + 8 escapes).
|
||||||
|
#
|
||||||
|
|
||||||
|
T='gYw' # The test text
|
||||||
|
|
||||||
|
echo -e "\n 40m 41m 42m 43m\
|
||||||
|
44m 45m 46m 47m";
|
||||||
|
|
||||||
|
for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \
|
||||||
|
'1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \
|
||||||
|
' 36m' '1;36m' ' 37m' '1;37m';
|
||||||
|
do FG=${FGs// /}
|
||||||
|
echo -en " $FGs \033[$FG $T "
|
||||||
|
for BG in 40m 41m 42m 43m 44m 45m 46m 47m;
|
||||||
|
do echo -en "$EINS \033[$FG\033[$BG $T \033[0m";
|
||||||
|
done
|
||||||
|
echo;
|
||||||
|
done
|
||||||
|
echo
|
||||||
30
kitty/kitty-themes/.tools/convert.py
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
import json
|
||||||
|
from jinja2 import FileSystemLoader, Environment
|
||||||
|
import sys
|
||||||
|
import os
|
||||||
|
|
||||||
|
|
||||||
|
def removeAlpha(value):
|
||||||
|
hex = value.lstrip("#")
|
||||||
|
return "#" + hex[0:6]
|
||||||
|
|
||||||
|
|
||||||
|
filename = sys.argv[1]
|
||||||
|
|
||||||
|
kitty_configuration = os.path.splitext(filename)[0] + ".conf"
|
||||||
|
|
||||||
|
with open(filename, "r") as configuration_file:
|
||||||
|
configuration = json.load(configuration_file)
|
||||||
|
|
||||||
|
loader = FileSystemLoader(".")
|
||||||
|
env = Environment(loader=loader)
|
||||||
|
|
||||||
|
env.filters['removeAlpha'] = removeAlpha
|
||||||
|
env.trim_blocks = True
|
||||||
|
|
||||||
|
template = env.get_template("template.conf.j2")
|
||||||
|
|
||||||
|
output = template.render(**configuration)
|
||||||
|
|
||||||
|
with open(kitty_configuration, "w") as fp:
|
||||||
|
fp.write(output)
|
||||||
57
kitty/kitty-themes/.tools/convert_conf.swift
Executable file
@@ -0,0 +1,57 @@
|
|||||||
|
#!/usr/bin/swift
|
||||||
|
// main.swift
|
||||||
|
// nscolor
|
||||||
|
//
|
||||||
|
// Created by Fabrizio FD. Destro on 28/12/18.
|
||||||
|
// Copyright © 2018 Fabrizio FD. Destro. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
import Foundation
|
||||||
|
import AppKit
|
||||||
|
|
||||||
|
func hex(color: NSColor) -> String {
|
||||||
|
return String(format: "#%02x%02x%02x", Int(color.redComponent * 0xFF), Int(color.greenComponent * 0xFF), Int(color.blueComponent * 0xFF))
|
||||||
|
}
|
||||||
|
|
||||||
|
func process_color(field: String, data: Data) {
|
||||||
|
let color = NSKeyedUnarchiver.unarchiveObject(with: data) as! NSColor
|
||||||
|
print("\(field) \(hex(color: color))");
|
||||||
|
}
|
||||||
|
|
||||||
|
func generate_conf_line(field: String, key: String, dictionary: NSDictionary){
|
||||||
|
if let data = dictionary[key] {
|
||||||
|
process_color(field: field, data: data as! Data)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func process(filename: String) {
|
||||||
|
let plist = NSDictionary(contentsOfFile: filename)!
|
||||||
|
|
||||||
|
generate_conf_line(field: "background", key: "BackgroundColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "foreground", key: "TextColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "cursor", key: "CursorColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "selection_background", key: "SelectionColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color0", key: "ANSIBlackColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color8", key: "ANSIBrightBlackColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color1", key: "ANSIRedColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color9", key: "ANSIBrightRedColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color2", key: "ANSIGreenColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color10", key: "ANSIBrightGreenColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color3", key: "ANSIYellowColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color11", key: "ANSIBrightYellowColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color4", key: "ANSIBlueColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color12", key: "ANSIBrightBlueColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color5", key: "ANSIMagentaColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color13", key: "ANSIBrightMagentaColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color6", key: "ANSICyanColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color14", key: "ANSIBrightCyanColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color7", key: "ANSIWhiteColor", dictionary: plist)
|
||||||
|
generate_conf_line(field: "color15", key: "ANSIBrightWhiteColor", dictionary: plist)
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CommandLine.argc == 2) {
|
||||||
|
let filename = CommandLine.arguments[1]
|
||||||
|
process(filename: filename)
|
||||||
|
} else {
|
||||||
|
print("Missing plist's path.")
|
||||||
|
}
|
||||||
5
kitty/kitty-themes/.tools/extract-vscode.sh
Executable file
@@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
theme=$1
|
||||||
|
|
||||||
|
jq ".colors | to_entries | map(select(.key | match(\"terminal.*\"))) | map({(.key | gsub(\"\\\\.(?<a>.)\"; .a | ascii_upcase) | ltrimstr(\"terminal\") | sub(\"(?<a>.)\"; .a | ascii_downcase)):.value}) | add" < "$theme" > "terminal/${theme%.*}.json"
|
||||||
10
kitty/kitty-themes/.tools/generate_conf.sh
Executable file
@@ -0,0 +1,10 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
find ~/github/macos-terminal-themes/schemes/ -name "*.terminal" -print0 | while read -d $'\0' -r file; do
|
||||||
|
filename=`basename "$file"`
|
||||||
|
without_ext=${filename%.*}
|
||||||
|
removed_spaces=${without_ext// /_}
|
||||||
|
# output_filename=`echo ${removed_spaces} | tr '[:upper:]' '[:lower:]'`
|
||||||
|
echo ${removed_spaces}.conf
|
||||||
|
./convert_conf.swift "$file" > ./themes/${removed_spaces}.conf
|
||||||
|
done
|
||||||
22
kitty/kitty-themes/.tools/generate_theme_preview.sh
Executable file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# This script generate all preview images for the themes
|
||||||
|
# In order to capture previews without the to bar start kitty without decorations
|
||||||
|
# kitty -o hide_window_decorations=yes
|
||||||
|
|
||||||
|
# shellcheck source=libcapture.sh
|
||||||
|
source libcapture.sh
|
||||||
|
|
||||||
|
# read theme path from args
|
||||||
|
id=$1
|
||||||
|
theme=$2
|
||||||
|
preview_filename=$3
|
||||||
|
|
||||||
|
conf_filename=$(basename "$theme")
|
||||||
|
|
||||||
|
lockfile=$(mktemp)
|
||||||
|
|
||||||
|
kitty @ set-colors --match id:"$id" "$theme"
|
||||||
|
kitty @ send-text --match id:"$id" "clear && figlet -f digital -t \"$conf_filename\" && unbuffer ./color_table.sh && rm \"$lockfile\"\n"
|
||||||
|
|
||||||
|
# simple sync mechanism, wait for the lockfile to be removed
|
||||||
|
( echo "$lockfile" | entr "false" 1>/dev/null 2>&1 ) || capture themes "$preview_filename"
|
||||||
32
kitty/kitty-themes/.tools/generate_themes_previews.sh
Executable file
@@ -0,0 +1,32 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# This script generate all preview images for the themes
|
||||||
|
|
||||||
|
root="$(git rev-parse --show-toplevel)"
|
||||||
|
tools="$root/.tools"
|
||||||
|
|
||||||
|
PATH=$tools:$PATH
|
||||||
|
|
||||||
|
# new kitty window, return its id
|
||||||
|
id=$(kitty @ new-window --title themes --window-type os --cwd "$tools")
|
||||||
|
# start bash without reading the profile nor the configuration
|
||||||
|
kitty @ send-text --match id:"$id" "/usr/bin/env bash --noprofile --norc\n"
|
||||||
|
kitty @ set-font-size 24
|
||||||
|
|
||||||
|
# save all preview in this directory
|
||||||
|
previews="$root/_previews"
|
||||||
|
if [ ! -d "$previews" ]; then
|
||||||
|
mkdir "$previews"
|
||||||
|
fi
|
||||||
|
|
||||||
|
while read -r theme
|
||||||
|
do
|
||||||
|
echo "Genereting theme preview for $theme"
|
||||||
|
preview_directory=$previews/$(basename "${theme%.*}")
|
||||||
|
[ ! -d "$preview_directory" ] && mkdir "$preview_directory"
|
||||||
|
preview_filename=$previews/$(basename "${theme%.*}")/preview.png
|
||||||
|
generate_theme_preview.sh "$id" "$theme" "$preview_filename"
|
||||||
|
mogrify -resize 1024x\> "$preview_filename"
|
||||||
|
done < /dev/stdin
|
||||||
|
|
||||||
|
kitty @ close-window --match id:"$id"
|
||||||
|
kitty @ set-font-size 16
|
||||||
23
kitty/kitty-themes/.tools/libcapture.sh
Executable file
@@ -0,0 +1,23 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
function capture_linux() {
|
||||||
|
local title="$1"
|
||||||
|
local output="$2"
|
||||||
|
import -window "$title" "$output"
|
||||||
|
}
|
||||||
|
|
||||||
|
function capture_osx() {
|
||||||
|
local title="$1"
|
||||||
|
local output="$2"
|
||||||
|
# get system id of the new created window
|
||||||
|
sys_id=$(./windowid.swift "kitty" "$title")
|
||||||
|
screencapture -wl"$sys_id" "$output"
|
||||||
|
}
|
||||||
|
|
||||||
|
function capture() {
|
||||||
|
if [[ "$OSTYPE" == "linux-gnu" ]]; then
|
||||||
|
capture_linux "$@"
|
||||||
|
elif [[ "$OSTYPE" == "darwin"* ]]; then
|
||||||
|
capture_osx "$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
15
kitty/kitty-themes/.tools/markdown.sh
Executable file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
previews_root=$1
|
||||||
|
# usually this value: https://raw.githubusercontent.com/dexpota/kitty-themes-website/master
|
||||||
|
url_root=$2
|
||||||
|
|
||||||
|
for f in $(find "$previews_root/previews" -maxdepth 1 -mindepth 1 -type d | sort); do
|
||||||
|
preview_file="$f"/preview.png
|
||||||
|
theme=$(basename $f)
|
||||||
|
relative_path=$(realpath --relative-to="$previews_root" "$preview_file")
|
||||||
|
header=`basename $theme | sed 's/_/ /g'`
|
||||||
|
image=""
|
||||||
|
echo \#\# $header
|
||||||
|
echo $image
|
||||||
|
done
|
||||||
91
kitty/kitty-themes/.tools/palette.py
Normal file
@@ -0,0 +1,91 @@
|
|||||||
|
from argparse import ArgumentParser
|
||||||
|
from svgwrite.shapes import Rect
|
||||||
|
import svgwrite
|
||||||
|
|
||||||
|
theme_keys = [
|
||||||
|
"foreground", "background", "background_opacity", "dynamic_background_opacity", "dim_opacity",
|
||||||
|
"selection_foreground", "selection_background", "color0", "color8", "color1", "color9", "color2", "color10",
|
||||||
|
"color3", "color11", "color4", "color12", "color5", "color13", "color6", "color14", "color7", "color15"
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
def is_valid(line):
|
||||||
|
"""
|
||||||
|
Returns true if a line inside a configuration file is a valid theme configuration pair: is not a comment, is not
|
||||||
|
empty and the key is correct.
|
||||||
|
|
||||||
|
:param line: a line inside the configuration file
|
||||||
|
:type line: str
|
||||||
|
:return: true if is valid, false otherwise
|
||||||
|
:rtype: bool
|
||||||
|
"""
|
||||||
|
return (not line.lstrip().startswith("#") # is not a comment
|
||||||
|
and len(line.strip()) != 0 # is not empty
|
||||||
|
and line.split(maxsplit=1)[0] in theme_keys) # key is a valid one
|
||||||
|
|
||||||
|
|
||||||
|
def extract_configuration_pair(line):
|
||||||
|
"""
|
||||||
|
Extract a configuration pair by splitting on spaces and taking the first couple of values.
|
||||||
|
|
||||||
|
:param line: a line inside the configuration file
|
||||||
|
:type line: str
|
||||||
|
:return: a key-value pair
|
||||||
|
:rtype: bool
|
||||||
|
"""
|
||||||
|
split = line.split(maxsplit=2)
|
||||||
|
return split[0], split[1]
|
||||||
|
|
||||||
|
|
||||||
|
def read_configuration(filename):
|
||||||
|
"""
|
||||||
|
Read a kitty configuration file and extract only theme related keys and values.
|
||||||
|
|
||||||
|
:param filename: path to the configuration file
|
||||||
|
:type filename: str
|
||||||
|
:return: a map with theme related configuration values
|
||||||
|
:rtype: dict[str, str]
|
||||||
|
"""
|
||||||
|
with open(filename, "r") as fp:
|
||||||
|
lines = fp.readlines()
|
||||||
|
print(filename)
|
||||||
|
theme_config = dict([extract_configuration_pair(line) for line in lines if is_valid(line)])
|
||||||
|
return theme_config
|
||||||
|
|
||||||
|
|
||||||
|
def draw_theme_palette(theme_configuration, start_point, size, displacement):
|
||||||
|
rects = []
|
||||||
|
for k, v in theme_configuration.items():
|
||||||
|
rgb = tuple(int(v[i + 1:i + 3], 16) for i in (0, 2, 4))
|
||||||
|
rects.append(Rect(start_point, size, fill=svgwrite.utils.rgb(rgb[0], rgb[1], rgb[2])))
|
||||||
|
start_point = (start_point[0] + displacement[0], start_point[1] + displacement[1])
|
||||||
|
|
||||||
|
return rects
|
||||||
|
|
||||||
|
|
||||||
|
def draw_all_palettes(themes):
|
||||||
|
dwg = svgwrite.Drawing('test.svg', profile='tiny')
|
||||||
|
y = 0
|
||||||
|
palettes = []
|
||||||
|
for theme in themes:
|
||||||
|
palettes += draw_theme_palette(theme, (0, y), (10, 10), (10, 0))
|
||||||
|
y += 10
|
||||||
|
|
||||||
|
for rect in palettes:
|
||||||
|
dwg.add(rect)
|
||||||
|
dwg.save()
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
parser = ArgumentParser()
|
||||||
|
parser.add_argument("theme", type=str, nargs="+")
|
||||||
|
|
||||||
|
ns = parser.parse_args()
|
||||||
|
|
||||||
|
theme_configurations = [read_configuration(theme) for theme in ns.theme]
|
||||||
|
|
||||||
|
draw_all_palettes(theme_configurations)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
136
kitty/kitty-themes/.tools/preview.py
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
import sys
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
|
||||||
|
theme_keys = [
|
||||||
|
"cursor", "foreground", "background", "background_opacity", "dynamic_background_opacity", "dim_opacity",
|
||||||
|
"selection_foreground", "selection_background", "color0", "color8", "color1", "color9", "color2", "color10",
|
||||||
|
"color3", "color11", "color4", "color12", "color5", "color13", "color6", "color14", "color7", "color15"
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
def is_valid(line):
|
||||||
|
"""
|
||||||
|
Returns true if a line inside a configuration file is a valid theme configuration pair: is not a comment, is not
|
||||||
|
empty and the key is correct.
|
||||||
|
|
||||||
|
:param line: a line inside the configuration file
|
||||||
|
:type line: str
|
||||||
|
:return: true if is valid, false otherwise
|
||||||
|
:rtype: bool
|
||||||
|
"""
|
||||||
|
return (not line.lstrip().startswith("#") # is not a comment
|
||||||
|
and len(line.strip()) != 0 # is not empty
|
||||||
|
and line.split(maxsplit=1)[0] in theme_keys) # key is a valid one
|
||||||
|
|
||||||
|
|
||||||
|
def extract_configuration_pair(line):
|
||||||
|
"""
|
||||||
|
Extract a configuration pair by splitting on spaces and taking the first couple of values.
|
||||||
|
|
||||||
|
:param line: a line inside the configuration file
|
||||||
|
:type line: str
|
||||||
|
:return: a key-value pair
|
||||||
|
:rtype: bool
|
||||||
|
"""
|
||||||
|
split = line.split(maxsplit=2)
|
||||||
|
return split[0], split[1]
|
||||||
|
|
||||||
|
|
||||||
|
def read_configuration(filename):
|
||||||
|
"""
|
||||||
|
Read a kitty configuration file and extract only theme related keys and values.
|
||||||
|
|
||||||
|
:param filename: path to the configuration file
|
||||||
|
:type filename: str
|
||||||
|
:return: a map with theme related configuration values
|
||||||
|
:rtype: dict[str, str]
|
||||||
|
"""
|
||||||
|
with open(filename, "r") as fp:
|
||||||
|
lines = fp.readlines()
|
||||||
|
theme_config = dict([extract_configuration_pair(line) for line in lines if is_valid(line)])
|
||||||
|
return theme_config
|
||||||
|
|
||||||
|
|
||||||
|
def fg(color, text):
|
||||||
|
rgb = tuple(int(color[i + 1:i + 3], 16) for i in (0, 2, 4))
|
||||||
|
return ('\x1b[38;2;%s;%s;%sm' % rgb + text + '\x1b[0m')
|
||||||
|
|
||||||
|
|
||||||
|
def bg(color, text):
|
||||||
|
rgb = tuple(int(color[i + 1:i + 3], 16) for i in (0, 2, 4))
|
||||||
|
return ('\x1b[48;2;%s;%s;%sm' % rgb + text + '\x1b[0m')
|
||||||
|
|
||||||
|
|
||||||
|
def print_preview(filename, configuration):
|
||||||
|
cursor = configuration["cursor"]
|
||||||
|
background = configuration["background"]
|
||||||
|
foreground = configuration["foreground"]
|
||||||
|
|
||||||
|
theme = os.path.basename(filename)
|
||||||
|
|
||||||
|
size = len(theme) + (2 + 2 + 16 + 2 + 16 + 1 + 2)
|
||||||
|
print(bg(background, " " * size))
|
||||||
|
print(bg(background, " "), end="")
|
||||||
|
print(bg(background, fg(foreground, theme)), end="")
|
||||||
|
print(bg(background, " "), end="")
|
||||||
|
|
||||||
|
c='a'
|
||||||
|
for i in range(0, 16):
|
||||||
|
color = configuration["color%d" % i]
|
||||||
|
print(bg(background, fg(color, c)), end="")
|
||||||
|
c = chr(ord(c) + 1)
|
||||||
|
|
||||||
|
print(bg(background, " "), end="")
|
||||||
|
|
||||||
|
selection_background = configuration["selection_background"]
|
||||||
|
selection_foreground = configuration["selection_foreground"]
|
||||||
|
|
||||||
|
c='A'
|
||||||
|
for i in range(0, 16):
|
||||||
|
print(bg(selection_background, fg(selection_foreground, c)), end="")
|
||||||
|
c = chr(ord(c) + 1)
|
||||||
|
|
||||||
|
print(bg(cursor, " "), end="")
|
||||||
|
print(bg(background, " "))
|
||||||
|
|
||||||
|
print(bg(background, " " * size))
|
||||||
|
|
||||||
|
print(bg(background, " "), end="")
|
||||||
|
print(bg(configuration["color0"], " "), end="")
|
||||||
|
print(bg(configuration["color1"], " "), end="")
|
||||||
|
print(bg(configuration["color2"], " "), end="")
|
||||||
|
print(bg(configuration["color3"], " "), end="")
|
||||||
|
print(bg(configuration["color4"], " "), end="")
|
||||||
|
print(bg(configuration["color5"], " "), end="")
|
||||||
|
print(bg(configuration["color6"], " "), end="")
|
||||||
|
print(bg(configuration["color7"], " "), end="")
|
||||||
|
print(bg(background, " "), end="")
|
||||||
|
print(bg(configuration["color8"], " "), end="")
|
||||||
|
print(bg(configuration["color9"], " "), end="")
|
||||||
|
print(bg(configuration["color10"], " "), end="")
|
||||||
|
print(bg(configuration["color11"], " "), end="")
|
||||||
|
print(bg(configuration["color12"], " "), end="")
|
||||||
|
print(bg(configuration["color13"], " "), end="")
|
||||||
|
print(bg(configuration["color14"], " "), end="")
|
||||||
|
print(bg(configuration["color15"], " "), end="")
|
||||||
|
print(bg(background, " " * (size - 16 - 4)), end="")
|
||||||
|
print()
|
||||||
|
|
||||||
|
print(bg(background, " " * size))
|
||||||
|
print()
|
||||||
|
|
||||||
|
|
||||||
|
def main(directory):
|
||||||
|
for filename in os.listdir(directory):
|
||||||
|
try:
|
||||||
|
path = os.path.join(directory, filename)
|
||||||
|
configuration = read_configuration(path)
|
||||||
|
print_preview(path, configuration)
|
||||||
|
except Exception as e:
|
||||||
|
print(e, file=sys.stderr)
|
||||||
|
print("Error while processing %s" % filename, file=sys.stderr)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main(sys.argv[1])
|
||||||
24
kitty/kitty-themes/.tools/previews.sh
Executable file
@@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# @author: @vrdhn on github
|
||||||
|
|
||||||
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||||
|
cd $SCRIPT_DIR/..
|
||||||
|
|
||||||
|
set_theme () {
|
||||||
|
cat themes/$1.conf | awk 'BEGIN {printf("kitty @ set-colors ")} {printf( "%s=%s ",$1,$2 )} END{printf("\n")}' | sh
|
||||||
|
}
|
||||||
|
|
||||||
|
list=$(find themes -type f | grep "$1" | xargs basename | cut -d. -f1)
|
||||||
|
|
||||||
|
for x in $list ;
|
||||||
|
do
|
||||||
|
kitty +kitten icat "previews/$x.png"
|
||||||
|
read -n 1 -p "$x : Next / Set / Quit :" ans
|
||||||
|
echo
|
||||||
|
|
||||||
|
case $ans in
|
||||||
|
n ) ;;
|
||||||
|
s ) set_theme $x ; exit ;;
|
||||||
|
q ) exit ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
37
kitty/kitty-themes/.tools/template.conf
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
background #
|
||||||
|
foreground #
|
||||||
|
cursor #
|
||||||
|
cursor_text_color #
|
||||||
|
selection_foreground #
|
||||||
|
selection_background #
|
||||||
|
# black
|
||||||
|
color0 #
|
||||||
|
color8 #
|
||||||
|
# red
|
||||||
|
color1 #
|
||||||
|
# light red
|
||||||
|
color9 #
|
||||||
|
# green
|
||||||
|
color2 #
|
||||||
|
# light green
|
||||||
|
color10 #
|
||||||
|
# yellow
|
||||||
|
color3 #
|
||||||
|
# light yellow
|
||||||
|
color11 #
|
||||||
|
# blue
|
||||||
|
color4 #
|
||||||
|
# light blue
|
||||||
|
color12 #
|
||||||
|
# magenta
|
||||||
|
color5 #
|
||||||
|
# light magenta
|
||||||
|
color13 #
|
||||||
|
# cyan
|
||||||
|
color6 #
|
||||||
|
# lighy cyan
|
||||||
|
color14 #
|
||||||
|
# light gray
|
||||||
|
color7 #
|
||||||
|
# dark gray
|
||||||
|
color15 #
|
||||||
91
kitty/kitty-themes/.tools/template.conf.j2
Normal file
@@ -0,0 +1,91 @@
|
|||||||
|
{% if background is defined %}
|
||||||
|
background {{background}}
|
||||||
|
{% endif %}
|
||||||
|
{% if foreground is defined %}
|
||||||
|
foreground {{foreground}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if cursorForeground is defined %}
|
||||||
|
cursor {{cursorForeground}}
|
||||||
|
{% endif %}
|
||||||
|
{% if cursorBackground is defined %}
|
||||||
|
cursor_text_color {{cursorBackground | removeAlpha}}
|
||||||
|
{% endif %}
|
||||||
|
{% if background is defined %}
|
||||||
|
selection_foreground {{background | removeAlpha}}
|
||||||
|
{% endif %}
|
||||||
|
{% if selectionBackground is defined %}
|
||||||
|
selection_background {{selectionBackground | removeAlpha}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiBlack is defined %}
|
||||||
|
# dull black
|
||||||
|
color0 {{ansiBlack}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightBlack is defined %}
|
||||||
|
# light black
|
||||||
|
color8 {{ansiBrightBlack}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiRed is defined %}
|
||||||
|
# dull red
|
||||||
|
color1 {{ansiRed}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightRed %}
|
||||||
|
# light red
|
||||||
|
color9 {{ansiBrightRed}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiGreen is defined %}
|
||||||
|
# dull green
|
||||||
|
color2 {{ansiGreen}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightGreen is defined %}
|
||||||
|
# light green
|
||||||
|
color10 {{ansiBrightGreen}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiYellow is defined %}
|
||||||
|
# yellow
|
||||||
|
color3 {{ansiYellow}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightYellow is defined %}
|
||||||
|
# light yellow
|
||||||
|
color11 {{ansiBrightYellow}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiBlue is defined %}
|
||||||
|
# blue
|
||||||
|
color4 {{ansiBlue}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightBlue %}
|
||||||
|
# light blue
|
||||||
|
color12 {{ansiBrightBlue}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiMagenta is defined %}
|
||||||
|
# magenta
|
||||||
|
color5 {{ansiMagenta}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightMagenta is defined %}
|
||||||
|
# light magenta
|
||||||
|
color13 {{ansiBrightMagenta}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiCyan is defined %}
|
||||||
|
# cyan
|
||||||
|
color6 {{ansiCyan}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightCyan is defined %}
|
||||||
|
# light cyan
|
||||||
|
color14 {{ansiBrightCyan}}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if ansiWhite is defined %}
|
||||||
|
# dull white
|
||||||
|
color7 {{ansiWhite}}
|
||||||
|
{% endif %}
|
||||||
|
{% if ansiBrightWhite is defined %}
|
||||||
|
# bright white
|
||||||
|
color15 {{ansiBrightWhite}}
|
||||||
|
{% endif %}
|
||||||
20
kitty/kitty-themes/.tools/windowid.swift
Executable file
@@ -0,0 +1,20 @@
|
|||||||
|
#!/usr/bin/swift
|
||||||
|
import Foundation
|
||||||
|
import Cocoa
|
||||||
|
import CoreGraphics.CGWindow
|
||||||
|
|
||||||
|
let windows : NSArray = CGWindowListCopyWindowInfo(CGWindowListOption.excludeDesktopElements, kCGNullWindowID)! as NSArray
|
||||||
|
|
||||||
|
let search_for_app = CommandLine.arguments[1]
|
||||||
|
let search_for_win = CommandLine.arguments[2]
|
||||||
|
|
||||||
|
for window in windows {
|
||||||
|
let window = window as! NSDictionary
|
||||||
|
|
||||||
|
let app_name = window[kCGWindowOwnerName] as! String
|
||||||
|
let window_name = window[kCGWindowName] as? String
|
||||||
|
|
||||||
|
if app_name == search_for_app && window_name == search_for_win {
|
||||||
|
print("\(window[kCGWindowNumber]!)")
|
||||||
|
}
|
||||||
|
}
|
||||||
8
kitty/kitty-themes/CONTRIBUTING.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
# Contributing to kitty-themes
|
||||||
|
|
||||||
|
We always welcome your pull request! To start contributing follow these simple
|
||||||
|
steps:
|
||||||
|
|
||||||
|
1. Fork the repo and create your branch from `master`;
|
||||||
|
2. Add your theme as config file under `themes` directory;
|
||||||
|
3. Issue the pull request through github;
|
||||||
21
kitty/kitty-themes/LICENSE.md
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2019 Fabrizio Destro <fabrizio@destro.dev>
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
465
kitty/kitty-themes/README.md
Normal file
@@ -0,0 +1,465 @@
|
|||||||
|
[iterm2-themes]: https://github.com/mbadolato/iTerm2-Color-Schemes
|
||||||
|
[color-scripts]: https://github.com/stark/Color-Scripts/tree/master/color-scripts
|
||||||
|
[license]: https://opensource.org/licenses/MIT
|
||||||
|
[license-badge]: https://img.shields.io/github/license/dexpota/kitty-themes.svg?style=for-the-badge
|
||||||
|
[kitty-themes-previews]: https://github.com/dexpota/kitty-themes-website/tree/master/previews
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
> **Personalize** your *kitty* terminal and choose your theme from this awesome
|
||||||
|
> collection, for more information on the terminal visit
|
||||||
|
> https://github.com/kovidgoyal/kitty
|
||||||
|
|
||||||
|
[![License: MIT][license-badge]][license]
|
||||||
|
[](#contributors)
|
||||||
|
|
||||||
|
- [About](#about)
|
||||||
|
- [Installation](#installation)
|
||||||
|
- [Source Code](#source-code)
|
||||||
|
- [Conda](#conda)
|
||||||
|
- [License](#license)
|
||||||
|
- [Bring me to the previews!](#previews)
|
||||||
|
- [Contributors](#contributors)
|
||||||
|
|
||||||
|
## About
|
||||||
|
|
||||||
|
In this repository you can find a set of themes to personalize your kitty
|
||||||
|
terminal, these have been ported from [iTerm2-Color-Schemes][iterm2-themes]. You can find
|
||||||
|
the previews for each theme in the [section](#previews) below or in this other
|
||||||
|
[repository](kitty-themes-previews).
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### Source Code
|
||||||
|
|
||||||
|
1. If you want to download and use one of these theme you have two options:
|
||||||
|
- clone the entire *kitty-themes* repository:
|
||||||
|
```bash
|
||||||
|
git clone --depth 1 https://github.com/dexpota/kitty-themes.git ~/.config/kitty/kitty-themes
|
||||||
|
```
|
||||||
|
- or download just one theme:
|
||||||
|
```bash
|
||||||
|
THEME=https://raw.githubusercontent.com/dexpota/kitty-themes/master/themes/3024_Day.conf
|
||||||
|
wget "$THEME" -P ~/.config/kitty/kitty-themes/themes
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Choose a theme and create a symlink:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd ~/.config/kitty
|
||||||
|
ln -s ./kitty-themes/themes/Floraverse.conf ~/.config/kitty/theme.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Add this line to your kitty.conf configuration file:
|
||||||
|
|
||||||
|
```
|
||||||
|
include ./theme.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
### Conda
|
||||||
|
|
||||||
|
If you using the ``conda`` package manager, you may also install these themes
|
||||||
|
with the following command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
conda install -c conda-forge kitty-themes
|
||||||
|
```
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
All original content of this repository is licensed with the [MIT
|
||||||
|
License](./LICENSE.md). Whenever possible the author of the theme is cited
|
||||||
|
inside each theme configuration file, together with its license. Hit me up if
|
||||||
|
you find your theme inside this repository and you want a proper citation.
|
||||||
|
|
||||||
|
## Previews
|
||||||
|
|
||||||
|
If you have followed the [installation](#installation) instructions and cloned
|
||||||
|
the entire repo, you have two options to try a theme:
|
||||||
|
|
||||||
|
1. If you have enabled remote control in *kitty* you can run this command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kitty @ set-colors -a "~/.config/kitty/kitty-themes/themes/AdventureTime.conf"
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Otherwise you can start another instance of kitty and specify another config
|
||||||
|
file to read from, this will cause *kitty* to read both its normal config
|
||||||
|
file and the specified one:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
kitty -o include="~/.config/kitty/kitty-themes/themes/AdventureTime.conf"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Bonus
|
||||||
|
|
||||||
|
Try your new theme with one of the scripts in [Color-scripts][color-scripts] with this
|
||||||
|
one-liner (requires `jq`):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
COLOR_SCRIPT_REPO=https://api.github.com/repos/stark/Color-Scripts/contents/color-scripts
|
||||||
|
wget -q -O - $(curl -s $COLOR_SCRIPT_REPO | jq '.[] | "\(.path) \(.download_url)"' -r | shuf -n1 | cut -d " " -f2) | bash
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3024 Day
|
||||||
|

|
||||||
|
### 3024 Night
|
||||||
|

|
||||||
|
### AdventureTime
|
||||||
|

|
||||||
|
### Afterglow
|
||||||
|

|
||||||
|
### AlienBlood
|
||||||
|

|
||||||
|
### Alucard
|
||||||
|

|
||||||
|
### Apprentice
|
||||||
|

|
||||||
|
### Argonaut
|
||||||
|

|
||||||
|
### Arthur
|
||||||
|

|
||||||
|
### AtelierSulphurpool
|
||||||
|

|
||||||
|
### Atom
|
||||||
|

|
||||||
|
### AtomOneLight
|
||||||
|

|
||||||
|
### ayu
|
||||||
|

|
||||||
|
### ayu light
|
||||||
|

|
||||||
|
### ayu mirage
|
||||||
|

|
||||||
|
### Batman
|
||||||
|

|
||||||
|
### Belafonte Day
|
||||||
|

|
||||||
|
### Belafonte Night
|
||||||
|

|
||||||
|
### BirdsOfParadise
|
||||||
|

|
||||||
|
### Blazer
|
||||||
|

|
||||||
|
### Borland
|
||||||
|

|
||||||
|
### Bright Lights
|
||||||
|

|
||||||
|
### Broadcast
|
||||||
|

|
||||||
|
### Brogrammer
|
||||||
|

|
||||||
|
### C64
|
||||||
|

|
||||||
|
### Chalk
|
||||||
|

|
||||||
|
### Chalkboard
|
||||||
|

|
||||||
|
### Ciapre
|
||||||
|

|
||||||
|
### CLRS
|
||||||
|

|
||||||
|
### Cobalt2
|
||||||
|

|
||||||
|
### Cobalt Neon
|
||||||
|

|
||||||
|
### CrayonPonyFish
|
||||||
|

|
||||||
|
### Dark Pastel
|
||||||
|

|
||||||
|
### Darkside
|
||||||
|

|
||||||
|
### Desert
|
||||||
|

|
||||||
|
### DimmedMonokai
|
||||||
|

|
||||||
|
### DotGov
|
||||||
|

|
||||||
|
### Dracula
|
||||||
|

|
||||||
|
### Dumbledore
|
||||||
|

|
||||||
|
### Duotone Dark
|
||||||
|

|
||||||
|
### Earthsong
|
||||||
|

|
||||||
|
### Elemental
|
||||||
|

|
||||||
|
### ENCOM
|
||||||
|

|
||||||
|
### Espresso
|
||||||
|

|
||||||
|
### Espresso Libre
|
||||||
|

|
||||||
|
### Fideloper
|
||||||
|

|
||||||
|
### FishTank
|
||||||
|

|
||||||
|
### Flat
|
||||||
|

|
||||||
|
### Flatland
|
||||||
|

|
||||||
|
### Floraverse
|
||||||
|

|
||||||
|
### FrontEndDelight
|
||||||
|

|
||||||
|
### FunForrest
|
||||||
|

|
||||||
|
### Galaxy
|
||||||
|

|
||||||
|
### Github
|
||||||
|

|
||||||
|
### Glacier
|
||||||
|

|
||||||
|
### GoaBase
|
||||||
|

|
||||||
|
### Grape
|
||||||
|

|
||||||
|
### Grass
|
||||||
|

|
||||||
|
### gruvbox dark
|
||||||
|

|
||||||
|
### gruvbox light
|
||||||
|

|
||||||
|
### Hardcore
|
||||||
|

|
||||||
|
### Harper
|
||||||
|

|
||||||
|
### Highway
|
||||||
|

|
||||||
|
### Hipster Green
|
||||||
|

|
||||||
|
### Homebrew
|
||||||
|

|
||||||
|
### Hurtado
|
||||||
|

|
||||||
|
### Hybrid
|
||||||
|

|
||||||
|
### IC Green PPL
|
||||||
|

|
||||||
|
### IC Orange PPL
|
||||||
|

|
||||||
|
### idleToes
|
||||||
|

|
||||||
|
### IR Black
|
||||||
|

|
||||||
|
### Jackie Brown
|
||||||
|

|
||||||
|
### Japanesque
|
||||||
|

|
||||||
|
### Jellybeans
|
||||||
|

|
||||||
|
### JetBrains Darcula
|
||||||
|

|
||||||
|
### Kibble
|
||||||
|

|
||||||
|
### Later This Evening
|
||||||
|

|
||||||
|
### Lavandula
|
||||||
|

|
||||||
|
### LiquidCarbon
|
||||||
|

|
||||||
|
### LiquidCarbonTransparent
|
||||||
|

|
||||||
|
### LiquidCarbonTransparentInverse
|
||||||
|

|
||||||
|
### Man Page
|
||||||
|

|
||||||
|
### Material
|
||||||
|

|
||||||
|
### MaterialDark
|
||||||
|

|
||||||
|
### Mathias
|
||||||
|

|
||||||
|
### Medallion
|
||||||
|

|
||||||
|
### Misterioso
|
||||||
|

|
||||||
|
### Molokai
|
||||||
|

|
||||||
|
### MonaLisa
|
||||||
|

|
||||||
|
### Monokai Classic
|
||||||
|

|
||||||
|
### Monokai Pro
|
||||||
|

|
||||||
|
### Monokai Pro (Filter Machine)
|
||||||
|
/preview.png)
|
||||||
|
### Monokai Pro (Filter Octagon)
|
||||||
|
/preview.png)
|
||||||
|
### Monokai Pro (Filter Ristretto)
|
||||||
|
/preview.png)
|
||||||
|
### Monokai Pro (Filter Spectrum)
|
||||||
|
/preview.png)
|
||||||
|
### Monokai Soda
|
||||||
|

|
||||||
|
### N0tch2k
|
||||||
|

|
||||||
|
### Neopolitan
|
||||||
|

|
||||||
|
### Neutron
|
||||||
|

|
||||||
|
### NightLion v1
|
||||||
|

|
||||||
|
### NightLion v2
|
||||||
|

|
||||||
|
### Nova
|
||||||
|

|
||||||
|
### Novel
|
||||||
|

|
||||||
|
### Obsidian
|
||||||
|

|
||||||
|
### Ocean
|
||||||
|

|
||||||
|
### OceanicMaterial
|
||||||
|

|
||||||
|
### Ollie
|
||||||
|

|
||||||
|
### OneDark
|
||||||
|

|
||||||
|
### Parasio Dark
|
||||||
|

|
||||||
|
### PaulMillr
|
||||||
|

|
||||||
|
### PencilDark
|
||||||
|

|
||||||
|
### PencilLight
|
||||||
|

|
||||||
|
### Piatto Light
|
||||||
|

|
||||||
|
### Pnevma
|
||||||
|

|
||||||
|
### Pro
|
||||||
|

|
||||||
|
### Red Alert
|
||||||
|

|
||||||
|
### Red Sands
|
||||||
|

|
||||||
|
### Relaxed Afterglow
|
||||||
|

|
||||||
|
### Renault Style
|
||||||
|

|
||||||
|
### Renault Style Light
|
||||||
|

|
||||||
|
### Rippedcasts
|
||||||
|

|
||||||
|
### Royal
|
||||||
|

|
||||||
|
### Seafoam Pastel
|
||||||
|

|
||||||
|
### SeaShells
|
||||||
|

|
||||||
|
### Seti
|
||||||
|

|
||||||
|
### Shaman
|
||||||
|

|
||||||
|
### Slate
|
||||||
|

|
||||||
|
### Smyck
|
||||||
|

|
||||||
|
### snazzy
|
||||||
|

|
||||||
|
### SoftServer
|
||||||
|

|
||||||
|
### Solarized Darcula
|
||||||
|

|
||||||
|
### Solarized Dark
|
||||||
|

|
||||||
|
### Solarized Dark Higher Contrast
|
||||||
|

|
||||||
|
### Solarized Dark - Patched
|
||||||
|

|
||||||
|
### Solarized Light
|
||||||
|

|
||||||
|
### Source Code X
|
||||||
|

|
||||||
|
### Spacedust
|
||||||
|

|
||||||
|
### SpaceGray
|
||||||
|

|
||||||
|
### SpaceGray Eighties
|
||||||
|

|
||||||
|
### SpaceGray Eighties Dull
|
||||||
|

|
||||||
|
### Spiderman
|
||||||
|

|
||||||
|
### Spring
|
||||||
|

|
||||||
|
### Square
|
||||||
|

|
||||||
|
### Sundried
|
||||||
|

|
||||||
|
### Symfonic
|
||||||
|

|
||||||
|
### Tango Dark
|
||||||
|

|
||||||
|
### Tango Light
|
||||||
|

|
||||||
|
### Teerb
|
||||||
|

|
||||||
|
### Thayer Bright
|
||||||
|

|
||||||
|
### The Hulk
|
||||||
|

|
||||||
|
### Tomorrow
|
||||||
|

|
||||||
|
### Tomorrow Night
|
||||||
|

|
||||||
|
### Tomorrow Night Blue
|
||||||
|

|
||||||
|
### Tomorrow Night Bright
|
||||||
|

|
||||||
|
### Tomorrow Night Eighties
|
||||||
|

|
||||||
|
### ToyChest
|
||||||
|

|
||||||
|
### Treehouse
|
||||||
|

|
||||||
|
### Twilight
|
||||||
|

|
||||||
|
### Ubuntu
|
||||||
|

|
||||||
|
### Urple
|
||||||
|

|
||||||
|
### Vaughn
|
||||||
|

|
||||||
|
### VibrantInk
|
||||||
|

|
||||||
|
### WarmNeon
|
||||||
|

|
||||||
|
### Wez
|
||||||
|

|
||||||
|
### WildCherry
|
||||||
|

|
||||||
|
### Wombat
|
||||||
|

|
||||||
|
### Wryan
|
||||||
|

|
||||||
|
### Zenburn
|
||||||
|

|
||||||
|
|
||||||
|
## Contributors
|
||||||
|
|
||||||
|
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
|
||||||
|
|
||||||
|
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
|
||||||
|
<!-- prettier-ignore -->
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="http://www.scopatz.com"><b>Anthony Scopatz</b></a><br /><a href="https://github.com/dexpota/kitty-themes/commits?author=scopatz" title="Documentation">📖</a></td>
|
||||||
|
<td align="center"><a href="https://rckt.cc"><b>RCKT</b></a><br /><a href="#theme-orangecoloured" title="New theme added to the collection">😻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/varmanishant"><b>varmanishant</b></a><br /><a href="#theme-varmanishant" title="New theme added to the collection">😻</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/rlerdorf"><b>Rasmus Lerdorf</b></a><br /><a href="https://github.com/dexpota/kitty-themes/issues?q=author%3Arlerdorf" title="Bug reports">🐛</a> <a href="#ideas-rlerdorf" title="Ideas, Planning, & Feedback">🤔</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/Luflosi"><b>Luflosi</b></a><br /><a href="#fix-Luflosi" title="Fixed a theme">🛠️</a> <a href="#question-Luflosi" title="Answering Questions">💬</a> <a href="https://github.com/dexpota/kitty-themes/commits?author=Luflosi" title="Documentation">📖</a></td>
|
||||||
|
<td align="center"><a href="https://holyday.me"><b>Connor Holyday</b></a><br /><a href="#fix-connorholyday" title="Fixed a theme">🛠️</a></td>
|
||||||
|
<td align="center"><a href="https://github.com/BlueDrink9"><b>BlueDrink9</b></a><br /><a href="https://github.com/dexpota/kitty-themes/issues?q=author%3ABlueDrink9" title="Bug reports">🐛</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td align="center"><a href="https://github.com/brujoand"><b>Anders Brujordet</b></a><br /><a href="#theme-brujoand" title="New theme added to the collection">😻</a></td>
|
||||||
|
<td align="center"><a href="http://www.hackouts.com"><b>Rajesh Rajendran</b></a><br /><a href="#fix-rjshrjndrn" title="Fixed a theme">🛠️</a></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<!-- ALL-CONTRIBUTORS-LIST:END -->
|
||||||
|
|
||||||
|
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
|
||||||