diff --git a/dunst/dunstrc b/dunst/dunstrc
index efad21b..60d7273 100644
--- a/dunst/dunstrc
+++ b/dunst/dunstrc
@@ -1,3 +1,5 @@
+# See dunst(5) for all configuration options
+
[global]
### Display ###
@@ -17,41 +19,67 @@
# will be ignored.
follow = none
- # The geometry of the window:
- # [{width}]x{height}[+/-{x}+/-{y}]
- # The geometry of the message window.
- # The height is measured in number of notifications everything else
- # in pixels. If the width is omitted but the height is given
- # ("-geometry x2"), the message window expands over the whole screen
- # (dmenu-like). If width is 0, the window expands to the longest
- # message displayed. A positive x is measured from the left, a
- # negative from the right side of the screen. Y is measured from
- # the top and down respectively.
- # The width can be negative. In this case the actual width is the
- # screen width minus the width defined in within the geometry option.
- geometry = "300x5-10+43"
+ ### Geometry ###
- # Show how many messages are currently hidden (because of geometry).
+ # dynamic width from 0 to 300
+ # width = (0, 300)
+ # constant width of 300
+ width = 300
+
+ # The maximum height of a single notification, excluding the frame.
+ height = 300
+
+ # Position the notification in the top right corner
+ origin = top-left
+
+ # Offset from the origin
+ offset = 10x10
+
+ # Scale factor. It is auto-detected if value is 0.
+ scale = 0
+
+ # Maximum number of notification (0 means no limit)
+ notification_limit = 20
+
+ ### Progress bar ###
+
+ # Turn on the progess bar. It appears when a progress hint is passed with
+ # for example dunstify -h int:value:12
+ progress_bar = true
+
+ # Set the progress bar height. This includes the frame, so make sure
+ # it's at least twice as big as the frame width.
+ progress_bar_height = 10
+
+ # Set the frame width of the progress bar
+ progress_bar_frame_width = 0
+
+ # Set the minimum width for the progress bar
+ progress_bar_min_width = 150
+
+ # Set the maximum width for the progress bar
+ progress_bar_max_width = 300
+
+ # Corner radius for the progress bar. 0 disables rounded corners.
+ progress_bar_corner_radius = 0
+
+ # Corner radius for the icon image.
+ icon_corner_radius = 0
+
+ # Show how many messages are currently hidden (because of
+ # notification_limit).
indicate_hidden = yes
- # Shrink window if it's smaller than the width. Will be ignored if
- # width is 0.
- shrink = no
-
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
- # present (e.g. xcompmgr, compiz, etc.).
- transparency = 25
-
- # The height of the entire notification. If the height is smaller
- # than the font height and padding combined, it will be raised
- # to the font height and padding.
- notification_height = 0
+ # present (e.g. xcompmgr, compiz, etc.). (X11 only)
+ transparency = 0.3
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
- separator_height = 5
+ # If gap_size is greater than 0, this setting will be ignored.
+ separator_height = 2
# Padding between text and separator.
padding = 8
@@ -59,12 +87,21 @@
# Horizontal padding.
horizontal_padding = 8
+ # Padding between text and icon.
+ text_icon_padding = 0
+
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 0
# Defines color of the frame around the notification window.
- frame_color = "#00000000"
+ frame_color = "#aaaaaa"
+
+ # Size of gap to display between notifications - requires a compositor.
+ # If value is greater than 0, separator_height will be ignored and a border
+ # of size frame_width will be drawn around each notification instead.
+ # Click events on gaps do not currently propagate to applications below.
+ gap_size = 10
# Define a color for the separator.
# possible values are:
@@ -82,7 +119,7 @@
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
- idle_threshold = 120
+ # idle_threshold = 120
### Text ###
@@ -100,7 +137,7 @@
# underline
#
# For a complete reference see
- # .
+ # .
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
@@ -134,18 +171,14 @@
# Vertical alignment of message text and icon.
# Possible values are "top", "center" and "bottom".
- vertical_alignment = top
+ vertical_alignment = center
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
- # Split notifications into multiple lines if they don't fit into
- # geometry.
- word_wrap = yes
-
- # When word_wrap is set to no, specify where to make an ellipsis in long lines.
+ # Specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
@@ -153,7 +186,7 @@
ignore_newline = no
# Stack together notifications with the same content
- stack_duplicates = false
+ stack_duplicates = true
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
@@ -163,19 +196,28 @@
### Icons ###
- # Align icons left/right/off
+ # Recursive icon lookup. You can set a single theme, instead of having to
+ # define all lookup paths.
+ enable_recursive_icon_lookup = true
+
+ # Set icon theme (only used for recursive icon lookup)
+ icon_theme = Adwaita
+ # You can also set multiple icon themes, with the leftmost one being used first.
+ # icon_theme = "Adwaita, breeze"
+
+ # Align icons left/right/top/off
icon_position = left
# Scale small icons up to this size, set to 0 to disable. Helpful
# for e.g. small files or high-dpi screens. In case of conflict,
# max_icon_size takes precedence over this.
- min_icon_size = 0
+ min_icon_size = 32
# Scale larger icons down to this size, set to 0 to disable
- max_icon_size = 32
+ max_icon_size = 128
- # Paths to default icons.
- icon_path = /usr/share/icons/Dracula/actions/16/:/usr/share/icons/Dracula/16/:/usr/share/icons/Dracula/Places/16/
+ # Paths to default icons (only neccesary when not using recursive icon lookup)
+ icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
### History ###
@@ -192,7 +234,7 @@
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
- browser = /usr/bin/firefox -new-tab
+ browser = /usr/bin/xdg-open
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = true
@@ -203,20 +245,6 @@
# Define the class of the windows spawned by dunst
class = Dunst
- # Print a notification on startup.
- # This is mainly for error detection, since dbus (re-)starts dunst
- # automatically after a crash.
- startup_notification = false
-
- # Manage dunst's desire for talking
- # Can be one of the following values:
- # crit: Critical features. Dunst aborts
- # warn: Only non-fatal warnings
- # mesg: Important Messages
- # info: all unimportant stuff
- # debug: all less than unimportant stuff
- verbosity = mesg
-
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
@@ -226,10 +254,20 @@
# Ignore the dbus closeNotification message.
# Useful to enforce the timeout set by dunst configuration. Without this
- # parameter, an application may close the notification sent before the
+ # parameter, an application may close the notification sent before the
# user defined timeout.
ignore_dbusclose = false
+ ### Wayland ###
+ # These settings are Wayland-specific. They have no effect when using X11
+
+ # Uncomment this if you want to let notications appear under fullscreen
+ # applications (default: overlay)
+ # layer = top
+
+ # Set this to true to use X11 output on Wayland.
+ force_xwayland = false
+
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
@@ -247,10 +285,14 @@
# Defines list of actions for each mouse event
# Possible values are:
# * none: Don't do anything.
- # * do_action: If the notification has exactly one action, or one is marked as default,
- # invoke it. If there are multiple and no default, open the context menu.
+ # * do_action: Invoke the action determined by the action_name rule. If there is no
+ # such action, open the context menu.
+ # * open_url: If the notification has exactly one url, open it. If there are multiple
+ # ones, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
+ # * context: Open context menu for the notification.
+ # * context_all: Open context menu for all notifications.
# These values can be strung together for each mouse event, and
# will be executed in sequence.
mouse_left_click = close_current
@@ -267,50 +309,30 @@
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
-[shortcuts]
-
- # Shortcuts are specified as [modifier+][modifier+]...key
- # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
- # "mod3" and "mod4" (windows-key).
- # Xev might be helpful to find names for keys.
-
- # Close notification.
- close = ctrl+space
-
- # Close all notifications.
- close_all = ctrl+shift+space
-
- # Redisplay last message(s).
- # On the US keyboard layout "grave" is normally above TAB and left
- # of "1". Make sure this key actually exists on your keyboard layout,
- # e.g. check output of 'xmodmap -pke'
- history = ctrl+grave
-
- # Context menu.
- context = ctrl+shift+period
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
- background = "#282a36"
- foreground = "#f8f8f2"
+ background = "#222222"
+ foreground = "#888888"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
- #icon = /path/to/icon
+ #default_icon = /path/to/icon
[urgency_normal]
- background = "#282a36"
- foreground = "#f8f8f2"
+ background = "#285577"
+ foreground = "#ffffff"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
- #icon = /path/to/icon
+ #default_icon = /path/to/icon
[urgency_critical]
background = "#900000"
foreground = "#ffffff"
+ frame_color = "#ff0000"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
- #icon = /path/to/icon
+ #default_icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
@@ -335,8 +357,17 @@
# new_icon
# set_stack_tag
# set_transient
+# set_category
# timeout
# urgency
+# icon_position
+# skip_display
+# history_ignore
+# action_name
+# word_wrap
+# ellipsize
+# alignment
+# hide_text
#
# Shell-like globbing will get expanded.
#
@@ -351,8 +382,6 @@
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
-# NOTE: if you don't want a notification to be displayed, set the format
-# to "".
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
@@ -380,9 +409,6 @@
# msg_urgency = critical
# fullscreen = show
-[no-fullscreen]
- fullscreen = pushback
-
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
@@ -394,7 +420,7 @@
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
-# format = ""
+# skip_display = true
#[history-ignore]
# # This notification will not be saved in history
diff --git a/eww/bar.yuck b/eww/bar.yuck
index 18448d7..3ac0144 100644
--- a/eww/bar.yuck
+++ b/eww/bar.yuck
@@ -7,12 +7,12 @@
(defwidget audio []
(eventbox :class "audio"
:onclick "eww open --toggle audio"
- "墳"
+ ""
))
(defwidget clipboard []
(eventbox :class "clipboard"
- ""
+ ""
)
)
diff --git a/eww/volume.yuck b/eww/volume.yuck
index 55ad1a5..4dcb730 100644
--- a/eww/volume.yuck
+++ b/eww/volume.yuck
@@ -27,17 +27,17 @@
(eventbox :class "previous"
:width 40
:onclick "playerctl previous"
- "玲"
+ ""
)
(eventbox :class "pause"
:width 40
:onclick "playerctl play-pause"
- {media-player_status == "Playing" ? "" : "契"}
+ {media-player_status == "Playing" ? "" : ""}
)
(eventbox :class "next"
:width 40
:onclick "playerctl next"
- "怜"
+ ""
)
)
)
diff --git a/fish/abbreviations.fish b/fish/abbreviations.fish
deleted file mode 100644
index b17613d..0000000
--- a/fish/abbreviations.fish
+++ /dev/null
@@ -1,4 +0,0 @@
-abbr ls "lsd"
-abbr p "sudo pacman"
-abbr vim "nvim"
-abbr vi "nvim"
diff --git a/fish/completions/fisher.fish b/fish/completions/fisher.fish
deleted file mode 100644
index 271e314..0000000
--- a/fish/completions/fisher.fish
+++ /dev/null
@@ -1 +0,0 @@
-fisher complete
diff --git a/fish/completions/tide.fish b/fish/completions/tide.fish
deleted file mode 100644
index 5970c5f..0000000
--- a/fish/completions/tide.fish
+++ /dev/null
@@ -1,9 +0,0 @@
-set -l subcommands (basename -s '.fish' $__fish_config_dir/functions/_tide_sub_* | string replace '_tide_sub_' '')
-set -l uninstallIndex (contains --index uninstall $subcommands)
-set -l subcommandsWithoutUninstall (printf '%s ' $subcommands[1..(math $uninstallIndex-1)] $subcommands[(math $uninstallIndex+1)..-1])
-
-# Disable file completions for the entire command
-complete --command tide --no-files
-
-# Offer subcommands (without uninstall) if no subcommand has been given so far
-complete --command tide --condition "not __fish_seen_subcommand_from $subcommands" --arguments=$subcommandsWithoutUninstall
\ No newline at end of file
diff --git a/fish/conf.d/_pure_init.fish b/fish/conf.d/_pure_init.fish
deleted file mode 100644
index 04b45d8..0000000
--- a/fish/conf.d/_pure_init.fish
+++ /dev/null
@@ -1,8 +0,0 @@
-# Deactivate the default virtualenv prompt so that we can add our own
-set --global --export VIRTUAL_ENV_DISABLE_PROMPT 1
-
-# Whether or not is a fresh session
-set --global _pure_fresh_session true
-
-# Register `_pure_prompt_new_line` as an event handler fot `fish_prompt`
-functions -q _pure_prompt_new_line
diff --git a/fish/conf.d/dracula.fish b/fish/conf.d/dracula.fish
deleted file mode 100644
index a396547..0000000
--- a/fish/conf.d/dracula.fish
+++ /dev/null
@@ -1,33 +0,0 @@
-# Dracula Color Palette
-set -l foreground f8f8f2
-set -l selection 44475a
-set -l comment 6272a4
-set -l red ff5555
-set -l orange ffb86c
-set -l yellow f1fa8c
-set -l green 50fa7b
-set -l purple bd93f9
-set -l cyan 8be9fd
-set -l pink ff79c6
-
-# Syntax Highlighting Colors
-set -g fish_color_normal $foreground
-set -g fish_color_command $cyan
-set -g fish_color_quote $yellow
-set -g fish_color_redirection $foreground
-set -g fish_color_end $orange
-set -g fish_color_error $red
-set -g fish_color_param $purple
-set -g fish_color_comment $comment
-set -g fish_color_match --background=$selection
-set -g fish_color_selection --background=$selection
-set -g fish_color_search_match --background=$selection
-set -g fish_color_operator $green
-set -g fish_color_escape $pink
-set -g fish_color_autosuggestion $comment
-
-# Completion Pager Colors
-set -g fish_pager_color_progress $comment
-set -g fish_pager_color_prefix $cyan
-set -g fish_pager_color_completion $foreground
-set -g fish_pager_color_description $comment
diff --git a/fish/conf.d/pure.fish b/fish/conf.d/pure.fish
deleted file mode 100644
index 396fa93..0000000
--- a/fish/conf.d/pure.fish
+++ /dev/null
@@ -1,66 +0,0 @@
-set --global pure_version 2.5.2 # used for bug report
-
-# Base colors
-_pure_set_default pure_color_primary blue
-_pure_set_default pure_color_info cyan
-_pure_set_default pure_color_mute brblack
-_pure_set_default pure_color_success magenta
-_pure_set_default pure_color_normal normal
-_pure_set_default pure_color_danger red
-_pure_set_default pure_color_light white
-_pure_set_default pure_color_warning yellow
-_pure_set_default pure_color_dark black
-
-# Prompt
-_pure_set_default pure_symbol_prompt "❯"
-_pure_set_default pure_symbol_reverse_prompt "❮" # used for VI mode
-_pure_set_default pure_color_prompt_on_error pure_color_danger
-_pure_set_default pure_color_prompt_on_success pure_color_success
-
-# Current Working Directory
-_pure_set_default pure_color_current_directory pure_color_primary
-
-# Git
-_pure_set_default pure_enable_git true
-_pure_set_default pure_symbol_git_unpulled_commits "⇣"
-_pure_set_default pure_symbol_git_unpushed_commits "⇡"
-_pure_set_default pure_symbol_git_dirty "*"
-_pure_set_default pure_color_git_unpulled_commits pure_color_info
-_pure_set_default pure_color_git_unpushed_commits pure_color_info
-_pure_set_default pure_color_git_branch pure_color_mute
-_pure_set_default pure_color_git_dirty pure_color_mute
-
-# SSH info
-_pure_set_default pure_color_ssh_hostname pure_color_mute
-_pure_set_default pure_color_ssh_separator pure_color_mute
-_pure_set_default pure_color_ssh_user_normal pure_color_mute
-_pure_set_default pure_color_ssh_user_root pure_color_light
-
-# Number of running jobs
-_pure_set_default pure_show_jobs false
-_pure_set_default pure_color_jobs pure_color_normal
-
-# Virtualenv for Python
-_pure_set_default pure_color_virtualenv pure_color_mute
-
-# Print current working directory at the beginning of prompt
-# true (default): current directory, git, user@hostname (ssh-only), command duration
-# false: user@hostname (ssh-only), current directory, git, command duration
-_pure_set_default pure_begin_prompt_with_current_directory true
-
-# Show exit code of last command as a separate prompt character (cf. https://github.com/sindresorhus/pure/wiki#show-exit-code-of-last-command-as-a-separate-prompt-character)
-# false - single prompt character, default
-# true - separate prompt character
-_pure_set_default pure_separate_prompt_on_error false
-
-# Max execution time of a process before its run time is shown when it exits
-_pure_set_default pure_threshold_command_duration 5
-_pure_set_default pure_color_command_duration pure_color_warning
-
-# VI mode indicator
-# true (default): indicate a non-insert mode by reversing the prompt symbol (❮)
-# false: indicate vi mode with [I], [N], [V]
-_pure_set_default pure_reverse_prompt_symbol_in_vimode true
-
-# Title
-_pure_set_default pure_symbol_title_bar_separator "—"
diff --git a/fish/config.fish b/fish/config.fish
deleted file mode 100644
index c10dc49..0000000
--- a/fish/config.fish
+++ /dev/null
@@ -1,24 +0,0 @@
-set --export SHELL /bin/fish
-set --export EDITOR "nvim"
-set -e fish_greeting
-
-set -U fish_user_paths /home/kalle/.gem/ruby/2.7.0/bin $fish_user_paths
-
-source "$HOME/.config/fish/abbreviations.fish"
-
-function playlist-dl
- echo "Looking up playlist name..."
- set pl_line (youtube-dl --flat-playlist "$argv" | grep "\[youtube:playlist\] playlist")
- set pl_name (echo $pl_line | cut -d ']' -f2 | sed -e 's/^ playlist //g' | cut -d ':' -f1 | tr '/' ' ')
- echo "Found playlist by name: $pl_name"
- echo "Downloading it into directory: $pl_name"
-
- mkdir "$pl_name"
- cd "$pl_name"
- youtube-dl --extract-audio --audio-format mp3 -o "%(title)s.%(ext)s" "$argv"
- cd ../
-end
-
-function compile
- gcc -no-pie -g -o $argv[2] $argv[1]
-end
diff --git a/fish/fish_variables b/fish/fish_variables
deleted file mode 100644
index de7bd54..0000000
--- a/fish/fish_variables
+++ /dev/null
@@ -1,72 +0,0 @@
-# This file contains fish universal variable definitions.
-# VERSION: 3.0
-SETUVAR __fish_initialized:3100
-SETUVAR _fish_abbr_ls:lsd
-SETUVAR _fish_abbr_p:sudo\x20pacman
-SETUVAR _fish_abbr_vi:nvim
-SETUVAR _fish_abbr_vim:nvim
-SETUVAR fish_color_autosuggestion:555\x1ebrblack
-SETUVAR fish_color_cancel:\x2dr
-SETUVAR fish_color_command:005fd7
-SETUVAR fish_color_comment:990000
-SETUVAR fish_color_cwd:green
-SETUVAR fish_color_cwd_root:red
-SETUVAR fish_color_end:009900
-SETUVAR fish_color_error:ff0000
-SETUVAR fish_color_escape:00a6b2
-SETUVAR fish_color_history_current:\x2d\x2dbold
-SETUVAR fish_color_host:normal
-SETUVAR fish_color_host_remote:yellow
-SETUVAR fish_color_match:\x2d\x2dbackground\x3dbrblue
-SETUVAR fish_color_normal:normal
-SETUVAR fish_color_operator:00a6b2
-SETUVAR fish_color_param:00afff
-SETUVAR fish_color_quote:999900
-SETUVAR fish_color_redirection:00afff
-SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
-SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
-SETUVAR fish_color_status:red
-SETUVAR fish_color_user:brgreen
-SETUVAR fish_color_valid_path:\x2d\x2dunderline
-SETUVAR fish_greeting:Welcome\x20to\x20fish\x2c\x20the\x20friendly\x20interactive\x20shell
-SETUVAR fish_key_bindings:fish_default_key_bindings
-SETUVAR fish_pager_color_completion:\x1d
-SETUVAR fish_pager_color_description:B3A06D\x1eyellow
-SETUVAR fish_pager_color_prefix:white\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
-SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
-SETUVAR fish_user_paths:/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin\x1e/home/kalle/\x2egem/ruby/2\x2e7\x2e0/bin
-SETUVAR pure_begin_prompt_with_current_directory:true
-SETUVAR pure_color_command_duration:pure_color_warning
-SETUVAR pure_color_current_directory:pure_color_primary
-SETUVAR pure_color_danger:red
-SETUVAR pure_color_dark:black
-SETUVAR pure_color_git_branch:pure_color_mute
-SETUVAR pure_color_git_dirty:pure_color_mute
-SETUVAR pure_color_git_unpulled_commits:pure_color_info
-SETUVAR pure_color_git_unpushed_commits:pure_color_info
-SETUVAR pure_color_info:cyan
-SETUVAR pure_color_jobs:pure_color_normal
-SETUVAR pure_color_light:white
-SETUVAR pure_color_mute:brblack
-SETUVAR pure_color_normal:normal
-SETUVAR pure_color_primary:blue
-SETUVAR pure_color_prompt_on_error:pure_color_danger
-SETUVAR pure_color_prompt_on_success:pure_color_success
-SETUVAR pure_color_ssh_hostname:pure_color_mute
-SETUVAR pure_color_ssh_separator:pure_color_mute
-SETUVAR pure_color_ssh_user_normal:pure_color_mute
-SETUVAR pure_color_ssh_user_root:pure_color_light
-SETUVAR pure_color_success:magenta
-SETUVAR pure_color_virtualenv:pure_color_mute
-SETUVAR pure_color_warning:yellow
-SETUVAR pure_enable_git:true
-SETUVAR pure_reverse_prompt_symbol_in_vimode:true
-SETUVAR pure_separate_prompt_on_error:false
-SETUVAR pure_show_jobs:false
-SETUVAR pure_symbol_git_dirty:\x2a
-SETUVAR pure_symbol_git_unpulled_commits:\u00e2\u0087\u00a3
-SETUVAR pure_symbol_git_unpushed_commits:\u00e2\u0087\u00a1
-SETUVAR pure_symbol_prompt:\u00e2\u009d\u00af
-SETUVAR pure_symbol_reverse_prompt:\u00e2\u009d\u00ae
-SETUVAR pure_symbol_title_bar_separator:\u00e2\u0080\u0094
-SETUVAR pure_threshold_command_duration:5
diff --git a/fish/fishfile b/fish/fishfile
deleted file mode 100644
index 4db4144..0000000
--- a/fish/fishfile
+++ /dev/null
@@ -1,2 +0,0 @@
-dracula/fish
-rafaelrinaldi/pure
diff --git a/fish/functions/_pure_format_time.fish b/fish/functions/_pure_format_time.fish
deleted file mode 100644
index 0773f6b..0000000
--- a/fish/functions/_pure_format_time.fish
+++ /dev/null
@@ -1,32 +0,0 @@
-set fail 1
-
-function _pure_format_time \
- --description="Format milliseconds to a human readable format" \
- --argument-names milliseconds threshold
-
- if test $milliseconds -lt 0; return $fail; end
-
- set --local seconds (math -s0 "$milliseconds / 1000 % 60")
- set --local minutes (math -s0 "$milliseconds / 60000 % 60")
- set --local hours (math -s0 "$milliseconds / 3600000 % 24")
- set --local days (math -s0 "$milliseconds / 86400000")
- set --local time
-
- if test $days -gt 0
- set time $time (printf "%sd" $days)
- end
-
- if test $hours -gt 0
- set time $time (printf "%sh" $hours)
- end
-
- if test $minutes -gt 0
- set time $time (printf "%sm" $minutes)
- end
-
- if test $seconds -gt $threshold
- set time $time (printf "%ss" $seconds)
- end
-
- echo -e (string join ' ' $time)
-end
diff --git a/fish/functions/_pure_get_prompt_symbol.fish b/fish/functions/_pure_get_prompt_symbol.fish
deleted file mode 100644
index 5352f58..0000000
--- a/fish/functions/_pure_get_prompt_symbol.fish
+++ /dev/null
@@ -1,14 +0,0 @@
-function _pure_get_prompt_symbol \
- --description 'Print prompt symbol' \
- --argument-names exit_code
-
- set --local prompt_symbol $pure_symbol_prompt
- set --local is_vi_mode (string match -r "fish_(vi|hybrid)_key_bindings" $fish_key_bindings)
- if test -n "$is_vi_mode" \
- -a "$pure_reverse_prompt_symbol_in_vimode" = true \
- -a "$fish_bind_mode" != "insert"
- set prompt_symbol $pure_symbol_reverse_prompt
- end
-
- echo "$prompt_symbol"
-end
diff --git a/fish/functions/_pure_parse_directory.fish b/fish/functions/_pure_parse_directory.fish
deleted file mode 100644
index fb3822a..0000000
--- a/fish/functions/_pure_parse_directory.fish
+++ /dev/null
@@ -1,14 +0,0 @@
-function _pure_parse_directory \
- --description "Replace '$HOME' with '~'" \
- --argument-names max_path_length
-
- set --local folder (string replace $HOME '~' $PWD)
-
- if test -n "$max_path_length";
- if test (string length $folder) -gt $max_path_length;
- # If path exceeds maximum symbol limit, use default fish path formating function
- set folder (prompt_pwd)
- end
- end
- echo $folder
-end
diff --git a/fish/functions/_pure_parse_git_branch.fish b/fish/functions/_pure_parse_git_branch.fish
deleted file mode 100644
index a666f2a..0000000
--- a/fish/functions/_pure_parse_git_branch.fish
+++ /dev/null
@@ -1,4 +0,0 @@
-function _pure_parse_git_branch --description "Parse current Git branch name"
- command git symbolic-ref --short HEAD 2>/dev/null;
- or command git name-rev --name-only HEAD 2>/dev/null
-end
diff --git a/fish/functions/_pure_place_iterm2_prompt_mark.fish b/fish/functions/_pure_place_iterm2_prompt_mark.fish
deleted file mode 100644
index b999b7a..0000000
--- a/fish/functions/_pure_place_iterm2_prompt_mark.fish
+++ /dev/null
@@ -1,5 +0,0 @@
-function _pure_place_iterm2_prompt_mark
- if functions -q iterm2_prompt_mark
- iterm2_prompt_mark
- end
-end
diff --git a/fish/functions/_pure_print_prompt.fish b/fish/functions/_pure_print_prompt.fish
deleted file mode 100644
index 9c0174c..0000000
--- a/fish/functions/_pure_print_prompt.fish
+++ /dev/null
@@ -1,11 +0,0 @@
-function _pure_print_prompt
- set --local prompt
-
- for prompt_part in $argv
- if test (_pure_string_width $prompt_part) -gt 0
- set prompt "$prompt $prompt_part"
- end
- end
-
- echo (string trim -l $prompt)
-end
diff --git a/fish/functions/_pure_prompt.fish b/fish/functions/_pure_prompt.fish
deleted file mode 100644
index 3f67704..0000000
--- a/fish/functions/_pure_prompt.fish
+++ /dev/null
@@ -1,11 +0,0 @@
-function _pure_prompt \
- --description 'Print prompt symbol' \
- --argument-names exit_code
-
- set --local jobs (_pure_prompt_jobs)
- set --local virtualenv (_pure_prompt_virtualenv) # Python virtualenv name
- set --local vimode_indicator (_pure_prompt_vimode) # vi-mode indicator
- set --local pure_symbol (_pure_prompt_symbol $exit_code)
-
- echo (_pure_print_prompt $jobs $virtualenv $vimode_indicator $pure_symbol)
-end
diff --git a/fish/functions/_pure_prompt_beginning.fish b/fish/functions/_pure_prompt_beginning.fish
deleted file mode 100644
index 5f00236..0000000
--- a/fish/functions/_pure_prompt_beginning.fish
+++ /dev/null
@@ -1,6 +0,0 @@
-function _pure_prompt_beginning
- # Clear existing line content
- set --local clear_line "\r\033[K"
-
- echo $clear_line
-end
diff --git a/fish/functions/_pure_prompt_command_duration.fish b/fish/functions/_pure_prompt_command_duration.fish
deleted file mode 100644
index d35b3a6..0000000
--- a/fish/functions/_pure_prompt_command_duration.fish
+++ /dev/null
@@ -1,11 +0,0 @@
-function _pure_prompt_command_duration
- set --local command_duration
-
- # Get command execution duration
- if test -n "$CMD_DURATION"
- set command_duration (_pure_format_time $CMD_DURATION $pure_threshold_command_duration)
- end
- set --local command_duration_color (_pure_set_color $pure_color_command_duration)
-
- echo "$command_duration_color$command_duration"
-end
diff --git a/fish/functions/_pure_prompt_current_folder.fish b/fish/functions/_pure_prompt_current_folder.fish
deleted file mode 100644
index af8e9ee..0000000
--- a/fish/functions/_pure_prompt_current_folder.fish
+++ /dev/null
@@ -1,11 +0,0 @@
-set fail 1
-
-function _pure_prompt_current_folder --argument-names current_prompt_width
-
- if test -z "$current_prompt_width"; return $fail; end
-
- set --local current_folder (_pure_parse_directory (math $COLUMNS - $current_prompt_width - 1))
- set --local current_folder_color (_pure_set_color $pure_color_current_directory)
-
- echo "$current_folder_color$current_folder"
-end
diff --git a/fish/functions/_pure_prompt_ending.fish b/fish/functions/_pure_prompt_ending.fish
deleted file mode 100644
index ba92511..0000000
--- a/fish/functions/_pure_prompt_ending.fish
+++ /dev/null
@@ -1,3 +0,0 @@
-function _pure_prompt_ending
- echo (set_color normal)" "
-end
diff --git a/fish/functions/_pure_prompt_first_line.fish b/fish/functions/_pure_prompt_first_line.fish
deleted file mode 100644
index 6b3f3b6..0000000
--- a/fish/functions/_pure_prompt_first_line.fish
+++ /dev/null
@@ -1,35 +0,0 @@
-function _pure_prompt_first_line \
- --description 'Print contextual information before prompt.'
-
- if not type -fq git # exit if git is not available
- return 1
- end
-
- set --local prompt_ssh (_pure_prompt_ssh)
- set --local prompt_git (_pure_prompt_git)
- set --local prompt_command_duration (_pure_prompt_command_duration)
- set --local prompt (_pure_print_prompt \
- $prompt_ssh \
- $prompt_git \
- $prompt_command_duration
- )
- set --local prompt_width (_pure_string_width $prompt)
- set --local current_folder (_pure_prompt_current_folder $prompt_width)
-
- set --local prompt_components
- if test $pure_begin_prompt_with_current_directory = true
- set prompt_components \
- $current_folder \
- $prompt_git \
- $prompt_ssh \
- $prompt_command_duration
- else
- set prompt_components \
- $prompt_ssh \
- $current_folder \
- $prompt_git \
- $prompt_command_duration
- end
-
- echo (_pure_print_prompt $prompt_components)
-end
diff --git a/fish/functions/_pure_prompt_git.fish b/fish/functions/_pure_prompt_git.fish
deleted file mode 100644
index 140639a..0000000
--- a/fish/functions/_pure_prompt_git.fish
+++ /dev/null
@@ -1,20 +0,0 @@
-function _pure_prompt_git \
- --description 'Print git repository informations: branch name, dirty, upstream ahead/behind'
-
- if test $pure_enable_git != true
- return
- end
-
- set --local is_git_repository (command git rev-parse --is-inside-work-tree 2>/dev/null)
-
- if test -n "$is_git_repository"
- set --local git_prompt (_pure_prompt_git_branch)(_pure_prompt_git_dirty)
- set --local git_pending_commits (_pure_prompt_git_pending_commits)
-
- if test (_pure_string_width $git_pending_commits) -ne 0
- set git_prompt $git_prompt $git_pending_commits
- end
-
- echo $git_prompt
- end
-end
diff --git a/fish/functions/_pure_prompt_git_branch.fish b/fish/functions/_pure_prompt_git_branch.fish
deleted file mode 100644
index 777cd0e..0000000
--- a/fish/functions/_pure_prompt_git_branch.fish
+++ /dev/null
@@ -1,6 +0,0 @@
-function _pure_prompt_git_branch
- set --local git_branch (_pure_parse_git_branch) # current git branch
- set --local git_branch_color (_pure_set_color $pure_color_git_branch)
-
- echo "$git_branch_color$git_branch"
-end
diff --git a/fish/functions/_pure_prompt_git_dirty.fish b/fish/functions/_pure_prompt_git_dirty.fish
deleted file mode 100644
index fbf31e3..0000000
--- a/fish/functions/_pure_prompt_git_dirty.fish
+++ /dev/null
@@ -1,18 +0,0 @@
-function _pure_prompt_git_dirty
- set --local git_dirty_symbol
- set --local git_dirty_color
-
- set --local is_git_dirty (
- # The first checks for staged changes, the second for unstaged ones.
- # We put them in this order because checking staged changes is *fast*.
- not command git diff-index --ignore-submodules --cached --quiet HEAD -- >/dev/null 2>&1
- or not command git diff --ignore-submodules --no-ext-diff --quiet --exit-code >/dev/null 2>&1
- and echo "true"
- )
- if test -n "$is_git_dirty" # untracked or un-commited files
- set git_dirty_symbol "$pure_symbol_git_dirty"
- set git_dirty_color (_pure_set_color $pure_color_git_dirty)
- end
-
- echo "$git_dirty_color$git_dirty_symbol"
-end
diff --git a/fish/functions/_pure_prompt_git_pending_commits.fish b/fish/functions/_pure_prompt_git_pending_commits.fish
deleted file mode 100644
index 98359c4..0000000
--- a/fish/functions/_pure_prompt_git_pending_commits.fish
+++ /dev/null
@@ -1,27 +0,0 @@
-function _pure_prompt_git_pending_commits
- set --local git_unpushed_commits
- set --local git_unpulled_commits
-
- set --local has_upstream (command git rev-parse --abbrev-ref '@{upstream}' 2>/dev/null)
- if test -n "$has_upstream" # check there is an upstream repo configured
- and test "$has_upstream" != '@{upstream}' # Fixed #179, dont check the empty repo
- command git rev-list --left-right --count 'HEAD...@{upstream}' \
- | read --local --array git_status
- set --local commit_to_push $git_status[1]
- set --local commit_to_pull $git_status[2]
-
- if test $commit_to_push -gt 0 # upstream is behind local repo
- set --local git_unpushed_commits_color \
- (_pure_set_color $pure_color_git_unpushed_commits)
- set git_unpushed_commits "$git_unpushed_commits_color$pure_symbol_git_unpushed_commits"
- end
-
- if test $commit_to_pull -gt 0 # upstream is ahead of local repo
- set --local git_unpulled_commits_color \
- (_pure_set_color $pure_color_git_unpulled_commits)
- set git_unpulled_commits "$git_unpulled_commits_color$pure_symbol_git_unpulled_commits"
- end
- end
-
- echo "$git_unpushed_commits$git_unpulled_commits"
-end
diff --git a/fish/functions/_pure_prompt_jobs.fish b/fish/functions/_pure_prompt_jobs.fish
deleted file mode 100644
index b04fd8c..0000000
--- a/fish/functions/_pure_prompt_jobs.fish
+++ /dev/null
@@ -1,9 +0,0 @@
-function _pure_prompt_jobs --description "Display number of running jobs"
- if test $pure_show_jobs = true
- set --local njobs (count (jobs -p))
- set --local jobs_color (_pure_set_color $pure_color_jobs)
- if test $njobs -gt 0
- echo "$jobs_color"[$njobs]
- end
- end
-end
diff --git a/fish/functions/_pure_prompt_new_line.fish b/fish/functions/_pure_prompt_new_line.fish
deleted file mode 100644
index c61a820..0000000
--- a/fish/functions/_pure_prompt_new_line.fish
+++ /dev/null
@@ -1,11 +0,0 @@
-function _pure_prompt_new_line \
- --description "Do not add a line break to a brand new session" \
- --on-event fish_prompt
-
- set --local new_line
- if test $_pure_fresh_session = false
- set new_line "\n"
- end
-
- echo -e -n "$new_line"
-end
diff --git a/fish/functions/_pure_prompt_ssh.fish b/fish/functions/_pure_prompt_ssh.fish
deleted file mode 100644
index 3ff11ea..0000000
--- a/fish/functions/_pure_prompt_ssh.fish
+++ /dev/null
@@ -1,5 +0,0 @@
-function _pure_prompt_ssh
- if test "$SSH_CONNECTION" != ""
- echo (_pure_prompt_ssh_user)(_pure_prompt_ssh_separator)(_pure_prompt_ssh_host)
- end
-end
diff --git a/fish/functions/_pure_prompt_ssh_host.fish b/fish/functions/_pure_prompt_ssh_host.fish
deleted file mode 100644
index d403c80..0000000
--- a/fish/functions/_pure_prompt_ssh_host.fish
+++ /dev/null
@@ -1,7 +0,0 @@
-function _pure_prompt_ssh_host
- set --query --global hostname
- or set --local hostname (hostname -s) # current host name compatible busybox
- set --local hostname_color (_pure_set_color $pure_color_ssh_hostname)
-
- echo "$hostname_color$hostname"
-end
diff --git a/fish/functions/_pure_prompt_ssh_separator.fish b/fish/functions/_pure_prompt_ssh_separator.fish
deleted file mode 100644
index 10ae5e8..0000000
--- a/fish/functions/_pure_prompt_ssh_separator.fish
+++ /dev/null
@@ -1,6 +0,0 @@
-function _pure_prompt_ssh_separator
- set --local separator_symbol "@"
- set --local separator_symbol_color (_pure_set_color $pure_color_ssh_separator)
-
- echo "$separator_symbol_color$separator_symbol"
-end
diff --git a/fish/functions/_pure_prompt_ssh_user.fish b/fish/functions/_pure_prompt_ssh_user.fish
deleted file mode 100644
index e0cf879..0000000
--- a/fish/functions/_pure_prompt_ssh_user.fish
+++ /dev/null
@@ -1,10 +0,0 @@
-function _pure_prompt_ssh_user
- set --local username (whoami) # current user name
- set --local username_color (_pure_set_color $pure_color_ssh_user_normal) # default color
-
- if test "$username" = "root"
- set username_color (_pure_set_color $pure_color_ssh_user_root) # different color for root
- end
-
- echo "$username_color$username"
-end
diff --git a/fish/functions/_pure_prompt_symbol.fish b/fish/functions/_pure_prompt_symbol.fish
deleted file mode 100644
index 768eca7..0000000
--- a/fish/functions/_pure_prompt_symbol.fish
+++ /dev/null
@@ -1,20 +0,0 @@
-function _pure_prompt_symbol \
- --description 'Print prompt symbol' \
- --argument-names exit_code
-
- set --local prompt_symbol (_pure_get_prompt_symbol)
- set --local symbol_color_success (_pure_set_color $pure_color_prompt_on_success)
- set --local symbol_color_error (_pure_set_color $pure_color_prompt_on_error)
- set --local command_succeed 0
-
- set --local symbol_color $symbol_color_success # default pure symbol color
- if test $exit_code -ne $command_succeed
- set symbol_color $symbol_color_error # different pure symbol color when previous command failed
-
- if test "$pure_separate_prompt_on_error" = true
- set symbol_color "$symbol_color_error$prompt_symbol$symbol_color_success"
- end
- end
-
- echo "$symbol_color$prompt_symbol"
-end
diff --git a/fish/functions/_pure_prompt_vimode.fish b/fish/functions/_pure_prompt_vimode.fish
deleted file mode 100644
index 04d38b4..0000000
--- a/fish/functions/_pure_prompt_vimode.fish
+++ /dev/null
@@ -1,5 +0,0 @@
-function _pure_prompt_vimode
- if test $pure_reverse_prompt_symbol_in_vimode = false
- echo (fish_default_mode_prompt)
- end
-end
diff --git a/fish/functions/_pure_prompt_virtualenv.fish b/fish/functions/_pure_prompt_virtualenv.fish
deleted file mode 100644
index 6cb2ed6..0000000
--- a/fish/functions/_pure_prompt_virtualenv.fish
+++ /dev/null
@@ -1,8 +0,0 @@
-function _pure_prompt_virtualenv --description "Display virtualenv directory"
- if test -n "$VIRTUAL_ENV"
- set --local virtualenv (basename "$VIRTUAL_ENV")
- set --local virtualenv_color (_pure_set_color $pure_color_virtualenv)
-
- echo "$virtualenv_color$virtualenv"
- end
-end
diff --git a/fish/functions/_pure_set_color.fish b/fish/functions/_pure_set_color.fish
deleted file mode 100644
index c05769a..0000000
--- a/fish/functions/_pure_set_color.fish
+++ /dev/null
@@ -1,19 +0,0 @@
-function _pure_set_color \
- --description 'Set color' \
- --argument-names var
-
- set --local color $var
- # Backwards compatibility for colors defined as control sequencies instead of fish colors
- if not string match --quiet --all --regex '\e\[[^m]*m' $color[1]
- and set -q $color
- set color $$var
- end
-
- set --local result $color
- if not string match --quiet --all --regex '\e\[[^m]*m' $result[1]
- and not test -z $result[1]
- set result (set_color $color)
- end
-
- echo "$result"
-end
diff --git a/fish/functions/_pure_set_default.fish b/fish/functions/_pure_set_default.fish
deleted file mode 100644
index 69e6054..0000000
--- a/fish/functions/_pure_set_default.fish
+++ /dev/null
@@ -1,8 +0,0 @@
-function _pure_set_default \
- --description 'Set default value for configuration variable' \
- --argument-names var default
-
- if not set -q --universal $var
- set --universal $var $default
- end
-end
diff --git a/fish/functions/_pure_string_width.fish b/fish/functions/_pure_string_width.fish
deleted file mode 100644
index 0c1957b..0000000
--- a/fish/functions/_pure_string_width.fish
+++ /dev/null
@@ -1,9 +0,0 @@
-function _pure_string_width \
- --description 'returns raw string length, i.e. ignore ANSI-color' \
- --argument-names prompt
-
- set --local empty ''
- set --local raw_prompt (string replace --all --regex '\e\[[^m]*m' $empty -- $prompt)
-
- string length -- $raw_prompt
-end
diff --git a/fish/functions/fish_greeting.fish b/fish/functions/fish_greeting.fish
deleted file mode 100644
index 018520b..0000000
--- a/fish/functions/fish_greeting.fish
+++ /dev/null
@@ -1,2 +0,0 @@
-function fish_greeting
-end
diff --git a/fish/functions/fish_mode_prompt.fish b/fish/functions/fish_mode_prompt.fish
deleted file mode 100644
index 428a658..0000000
--- a/fish/functions/fish_mode_prompt.fish
+++ /dev/null
@@ -1,2 +0,0 @@
-function fish_mode_prompt
-end
diff --git a/fish/functions/fish_prompt.fish b/fish/functions/fish_prompt.fish
deleted file mode 100644
index 9b313e3..0000000
--- a/fish/functions/fish_prompt.fish
+++ /dev/null
@@ -1,11 +0,0 @@
-function fish_prompt
- set --local exit_code $status # save previous exit code
-
- echo -e -n (_pure_prompt_beginning) # init prompt context (clear current line, etc.)
- echo -e (_pure_prompt_first_line) # print current path, git branch/status, command duration
- _pure_place_iterm2_prompt_mark # place iTerm shell integration mark
- echo -e -n (_pure_prompt $exit_code) # print prompt
- echo -e (_pure_prompt_ending) # reset colors and end prompt
-
- set _pure_fresh_session false
-end
diff --git a/fish/functions/fish_title.fish b/fish/functions/fish_title.fish
deleted file mode 100644
index ff918ab..0000000
--- a/fish/functions/fish_title.fish
+++ /dev/null
@@ -1,16 +0,0 @@
-function fish_title \
- --description "Set title to current folder and shell name" \
- --argument-names last_command
-
- set --local basename (string replace -r '^.*/' '' -- $PWD)
- set --local current_folder (_pure_parse_directory)
- set --local current_command (status current-command 2>/dev/null; or echo $_)
-
- set --local prompt "$basename: $last_command $pure_symbol_title_bar_separator $current_command"
-
- if test -z "$last_command"
- set prompt "$current_folder $pure_symbol_title_bar_separator $current_command"
- end
-
- echo $prompt
-end
diff --git a/fish/functions/fisher.fish b/fish/functions/fisher.fish
deleted file mode 100644
index 71f20a8..0000000
--- a/fish/functions/fisher.fish
+++ /dev/null
@@ -1,436 +0,0 @@
-set -g fisher_version 3.3.2
-
-function fisher -a cmd -d "fish plugin manager"
- set -q XDG_CACHE_HOME; or set XDG_CACHE_HOME ~/.cache
- set -q XDG_CONFIG_HOME; or set XDG_CONFIG_HOME ~/.config
- set -q XDG_DATA_HOME; or set XDG_DATA_HOME ~/.local/share
-
- set -g fish_config $XDG_CONFIG_HOME/fish
- set -g fisher_cache $XDG_CACHE_HOME/fisher
- set -g fisher_data $XDG_DATA_HOME/fisher
-
- set -q fisher_path; or set -g fisher_path $fish_config
- set -g fishfile $fish_config/fishfile
-
- for path in {$fish_config,$fisher_path}/{functions,completions,conf.d} $fisher_cache
- if test ! -d $path
- command mkdir -p $path
- end
- end
-
- if test ! -e $fisher_path/completions/fisher.fish
- echo "fisher complete" >$fisher_path/completions/fisher.fish
- _fisher_complete
- end
-
- if test -e $fisher_path/conf.d/fisher.fish
- switch "$version"
- case \*-\*
- command rm -f $fisher_path/conf.d/fisher.fish
- case 2\*
- case \*
- command rm -f $fisher_path/conf.d/fisher.fish
- end
- else
- switch "$version"
- case \*-\*
- case 2\*
- echo "fisher copy-user-key-bindings" >$fisher_path/conf.d/fisher.fish
- end
- end
-
- # 2019-10-22: temp code, migrates fishfile from old path back to $fish_config
- if test -e "$fisher_path/fishfile"; and test ! -e "$fishfile"
- command mv -f "$fisher_path/fishfile" "$fishfile"
- end
-
- # 2020-06-23: temp code, migrates fisher data from XDG_CONFIG_HOME to XDG_DATA_HOME
- set -l fisher_config $XDG_CONFIG_HOME/fisher
- if test -d $fisher_config
- echo "migrating local data from $fisher_config to $fisher_data"
- command rm -rf $fisher_data
- command mv -f $fisher_config $fisher_data
- end
-
- switch "$cmd"
- case {,self-}complete
- _fisher_complete
- case copy-user-key-bindings
- _fisher_copy_user_key_bindings
- case ls
- set -e argv[1]
- if test -s "$fishfile"
- set -l file (_fisher_fmt <$fishfile | _fisher_parse -R | command sed "s|@.*||")
- _fisher_ls | _fisher_fmt | command awk -v FILE="$file" "
- BEGIN { for (n = split(FILE, f); ++i <= n;) file[f[i]] } \$0 in file && /$argv[1]/
- " | command sed "s|^$HOME|~|"
- end
- case self-update
- _fisher_self_update (status -f)
- case self-uninstall
- _fisher_self_uninstall
- case {,-}-v{ersion,}
- echo "fisher version $fisher_version" (status -f | command sed "s|^$HOME|~|")
- case {,-}-h{elp,}
- _fisher_help
- case ""
- _fisher_commit --
- case add rm
- if not isatty
- while read -l arg
- set argv $argv $arg
- end
- end
-
- if test (count $argv) = 1
- echo "fisher: invalid number of arguments" >&2
- _fisher_help >&2
- return 1
- end
-
- _fisher_commit $argv
- case \*
- echo "fisher: unknown flag or command \"$cmd\"" >&2
- _fisher_help >&2
- return 1
- end
-end
-
-function _fisher_complete
- complete -ec fisher
- complete -xc fisher -n __fish_use_subcommand -a add -d "Add plugins"
- complete -xc fisher -n __fish_use_subcommand -a rm -d "Remove plugins"
- complete -xc fisher -n __fish_use_subcommand -a ls -d "List installed plugins matching REGEX"
- complete -xc fisher -n __fish_use_subcommand -a --help -d "Show usage help"
- complete -xc fisher -n __fish_use_subcommand -a --version -d "$fisher_version"
- complete -xc fisher -n __fish_use_subcommand -a self-update -d "Update to the latest version"
- for pkg in (fisher ls)
- complete -xc fisher -n "__fish_seen_subcommand_from rm" -a $pkg
- end
-end
-
-function _fisher_copy_user_key_bindings
- if functions -q fish_user_key_bindings
- functions -c fish_user_key_bindings fish_user_key_bindings_copy
- end
- function fish_user_key_bindings
- for file in $fisher_path/conf.d/*_key_bindings.fish
- source $file >/dev/null 2>/dev/null
- end
- if functions -q fish_user_key_bindings_copy
- fish_user_key_bindings_copy
- end
- end
-end
-
-function _fisher_ls
- for pkg in $fisher_data/*/*/*
- command readlink $pkg; or echo $pkg
- end
-end
-
-function _fisher_fmt
- command sed "s|^[[:space:]]*||;s|^$fisher_data/||;s|^~|$HOME|;s|^\.\/*|$PWD/|;s|^https*:/*||;s|^github\.com/||;s|/*\$||"
-end
-
-function _fisher_help
- echo "usage: fisher add Add plugin/s"
- echo " fisher rm Remove plugin/s"
- echo " fisher Update all plugins"
- echo " fisher ls [] List installed plugins matching "
- echo " fisher --help Show this help"
- echo " fisher --version Show the current version"
- echo " fisher self-update Update to the latest version"
- echo " fisher self-uninstall Uninstall from your system"
- echo "examples:"
- echo " fisher add jorgebucaran/z rafaelrinaldi/pure"
- echo " fisher add gitlab.com/foo/bar@v2"
- echo " fisher add ~/path/to/local/pkg"
- echo " fisher add &2
- command curl -s "$url?nocache" >$file.
-
- set -l next_version (command awk '$4 ~ /^[0-9]+\.[0-9]+\.[0-9]+$/ { print v=$4 } { exit !v }' <$file.)
- switch "$next_version"
- case "" $fisher_version
- command rm -f $file.
- if test -z "$next_version"
- echo "fisher: cannot update fisher -- are you offline?" >&2
- return 1
- end
- echo "fisher is already up-to-date" >&2
- case \*
- echo "linking $file" | command sed "s|$HOME|~|" >&2
- command mv -f $file. $file
- source $file
- echo "updated to fisher $fisher_version -- hooray!" >&2
- _fisher_complete
- end
-end
-
-function _fisher_self_uninstall
- for pkg in (_fisher_ls)
- _fisher_rm $pkg
- end
-
- for file in $fisher_cache $fisher_data $fisher_path/{functions,completions,conf.d}/fisher.fish $fishfile
- echo "removing $file"
- command rm -Rf $file 2>/dev/null
- end | command sed "s|$HOME|~|" >&2
-
- for name in (set -n | command awk '/^fisher_/')
- set -e "$name"
- end
-
- functions -e (functions -a | command awk '/^_fisher/') fisher
- complete -c fisher --erase
-end
-
-function _fisher_commit -a cmd
- set -e argv[1]
- set -l elapsed (_fisher_now)
-
- if test ! -e "$fishfile"
- command touch $fishfile
- echo "created new fishfile in $fishfile" | command sed "s|$HOME|~|" >&2
- end
-
- set -l old_pkgs (_fisher_ls | _fisher_fmt)
- for pkg in (_fisher_ls)
- _fisher_rm $pkg
- end
- command rm -Rf $fisher_data
- command mkdir -p $fisher_data
-
- set -l next_pkgs (_fisher_fmt <$fishfile | _fisher_parse -R $cmd (printf "%s\n" $argv | _fisher_fmt))
- set -l actual_pkgs (_fisher_fetch $next_pkgs)
- set -l updated_pkgs
- for pkg in $old_pkgs
- if contains -- $pkg $actual_pkgs
- set updated_pkgs $updated_pkgs $pkg
- end
- end
-
- if test -z "$actual_pkgs$updated_pkgs$old_pkgs$next_pkgs"
- echo "fisher: nothing to commit -- try adding some plugins" >&2
- return 1
- end
-
- set -l out_pkgs
- if test "$cmd" = "rm"
- set out_pkgs $next_pkgs
- else
- for pkg in $next_pkgs
- if contains -- (echo $pkg | command sed "s|@.*||") $actual_pkgs
- set out_pkgs $out_pkgs $pkg
- end
- end
- end
-
- printf "%s\n" (_fisher_fmt <$fishfile | _fisher_parse -W $cmd $out_pkgs | command sed "s|^$HOME|~|") >$fishfile
-
- _fisher_complete
-
- command awk -v A=(count $actual_pkgs) -v U=(count $updated_pkgs) -v O=(count $old_pkgs) -v E=(_fisher_now $elapsed) '
- BEGIN {
- res = fmt("removed", O - U, fmt("updated", U, fmt("added", A - U)))
- printf((res ? res : "done") " in %.2fs\n", E / 1000)
- }
- function fmt(action, n, s) {
- return n ? (s ? s ", " : s) action " " n " plugin" (n > 1 ? "s" : "") : s
- }
- ' >&2
-end
-
-function _fisher_parse -a mode cmd
- set -e argv[1..2]
- command awk -v FS="[[:space:]]*#+" -v MODE="$mode" -v CMD="$cmd" -v ARGSTR="$argv" '
- BEGIN {
- for (n = split(ARGSTR, a, " "); i++ < n;) pkgs[getkey(a[i])] = a[i]
- }
- !NF { next } { k = getkey($1) }
- MODE == "-R" && !(k in pkgs) && ($0 = $1)
- MODE == "-W" && (/^#/ || k in pkgs || CMD != "rm") { print pkgs[k] (sub($1, "") ? $0 : "") }
- MODE == "-W" || CMD == "rm" { delete pkgs[k] }
- END {
- for (k in pkgs) {
- if (CMD != "rm" || MODE == "-W") print pkgs[k]
- else print "fisher: cannot remove \""k"\" -- plugin is not in fishfile" > "/dev/stderr"
- }
- }
- function getkey(s, a) {
- return (split(s, a, /@+|:/) > 2) ? a[2]"/"a[1]"/"a[3] : a[1]
- }
- '
-end
-
-function _fisher_fetch
- set -l pkg_jobs
- set -l out_pkgs
- set -l next_pkgs
- set -l local_pkgs
- set -q fisher_user_api_token; and set -l curl_opts -u $fisher_user_api_token
-
- for pkg in $argv
- switch $pkg
- case \~\* /\*
- set -l path (echo "$pkg" | command sed "s|^~|$HOME|")
- if test -e "$path"
- set local_pkgs $local_pkgs $path
- else
- echo "fisher: cannot add \"$pkg\" -- is this a valid file?" >&2
- end
- continue
- end
-
- command awk -v PKG="$pkg" -v FS=/ '
- BEGIN {
- split(PKG, tmp, /@/)
- pkg = split(PKG, _, "/") <= 2 ? "github.com/"tmp[1] : tmp[1]
- tag = tmp[2] ? tmp[2] : "HEAD"
- print pkg "\t" (\
- pkg ~ /^github/ ? "https://codeload."pkg"/tar.gz/"tag : \
- pkg ~ /^gitlab/ ? "https://"pkg"/-/archive/"tag"/"tmp[split(pkg, tmp, "/")]"-"tag".tar.gz" : \
- pkg ~ /^bitbucket/ ? "https://"pkg"/get/"tag".tar.gz" : pkg\
- )
- }
- ' | read -l pkg url
-
- if test ! -d "$fisher_data/$pkg"
- fish -c "
- echo fetching $url >&2
- command mkdir -p $fisher_data/$pkg $fisher_cache/(command dirname $pkg)
- if command curl $curl_opts -Ss -w \"\" $url 2>&1 | command tar -xzf- -C $fisher_data/$pkg 2>/dev/null
- command rm -Rf $fisher_cache/$pkg
- command mv -f $fisher_data/$pkg/* $fisher_cache/$pkg
- command rm -Rf $fisher_data/$pkg
- command cp -Rf {$fisher_cache,$fisher_data}/$pkg
- else if test -d \"$fisher_cache/$pkg\"
- echo fisher: cannot connect to server -- looking in \"$fisher_cache/$pkg\" | command sed 's|$HOME|~|' >&2
- command cp -Rf $fisher_cache/$pkg $fisher_data/$pkg/..
- else
- command rm -Rf $fisher_data/$pkg
- echo fisher: cannot add \"$pkg\" -- is this a valid plugin\? >&2
- end
- " >/dev/null &
- set pkg_jobs $pkg_jobs (_fisher_jobs --last)
- set next_pkgs $next_pkgs "$fisher_data/$pkg"
- end
- end
-
- if set -q pkg_jobs[1]
- while for job in $pkg_jobs
- contains -- $job (_fisher_jobs); and break
- end
- end
- for pkg in $next_pkgs
- if test -d "$pkg"
- set out_pkgs $out_pkgs $pkg
- _fisher_add $pkg
- end
- end
- end
-
- set -l local_prefix $fisher_data/local/$USER
- if test ! -d "$local_prefix"
- command mkdir -p $local_prefix
- end
- for pkg in $local_pkgs
- set -l target $local_prefix/(command basename $pkg)
- if test ! -L "$target"
- command ln -sf $pkg $target
- set out_pkgs $out_pkgs $pkg
- _fisher_add $pkg --link
- end
- end
-
- if set -q out_pkgs[1]
- _fisher_fetch (
- for pkg in $out_pkgs
- if test -s "$pkg/fishfile"
- _fisher_fmt <$pkg/fishfile | _fisher_parse -R
- end
- end)
- printf "%s\n" $out_pkgs | _fisher_fmt
- end
-end
-
-function _fisher_add -a pkg opts
- for src in $pkg/{functions,completions,conf.d}/**.* $pkg/*.fish
- set -l target (command basename $src)
- switch $src
- case $pkg/conf.d\*
- set target $fisher_path/conf.d/$target
- case $pkg/completions\*
- set target $fisher_path/completions/$target
- case $pkg/{functions,}\*
- switch $target
- case uninstall.fish
- continue
- case {init,key_bindings}.fish
- set target $fisher_path/conf.d/(command basename $pkg)\_$target
- case \*
- set target $fisher_path/functions/$target
- end
- end
- echo "linking $target" | command sed "s|$HOME|~|" >&2
- if set -q opts[1]
- command ln -sf $src $target
- else
- command cp -f $src $target
- end
- switch $target
- case \*.fish
- source $target >/dev/null 2>/dev/null
- end
- end
-end
-
-function _fisher_rm -a pkg
- for src in $pkg/{conf.d,completions,functions}/**.* $pkg/*.fish
- set -l target (command basename $src)
- set -l filename (command basename $target .fish)
- switch $src
- case $pkg/conf.d\*
- test "$filename.fish" = "$target"; and emit "$filename"_uninstall
- set target conf.d/$target
- case $pkg/completions\*
- test "$filename.fish" = "$target"; and complete -ec $filename
- set target completions/$target
- case $pkg/{,functions}\*
- test "$filename.fish" = "$target"; and functions -e $filename
- switch $target
- case uninstall.fish
- source $src
- continue
- case {init,key_bindings}.fish
- set target conf.d/(command basename $pkg)\_$target
- case \*
- set target functions/$target
- end
- end
- command rm -f $fisher_path/$target
- end
- if not functions -q fish_prompt
- source "$__fish_datadir$__fish_data_dir/functions/fish_prompt.fish"
- end
-end
-
-function _fisher_jobs
- jobs $argv | command awk '/^[0-9]+\t/ { print $1 }'
-end
-
-function _fisher_now -a elapsed
- switch (command uname)
- case Darwin \*BSD
- command perl -MTime::HiRes -e 'printf("%.0f\n", (Time::HiRes::time() * 1000) - $ARGV[0])' $elapsed
- case \*
- math (command date "+%s%3N") - "0$elapsed"
- end
-end
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
new file mode 100644
index 0000000..e143489
--- /dev/null
+++ b/hypr/hyprland.conf
@@ -0,0 +1,214 @@
+#
+# Please note not all available settings / options are set here.
+# For a full list, see the wiki
+#
+
+# Monitor configuration
+monitor=DP-2,1920x1080@144,0x1080,1
+monitor=HDMI-A-1,1920x1080@60,1500x0,1
+monitor=HDMI-A-2,1920x1080@60,1920x1080,1,transform,3
+monitor=,preferred,auto,auto
+
+# Clipboard history
+exec-once = wl-paste --watch cliphist store
+# Notifications
+exec-once = dunst
+# Polkit
+exec-once = /usr/lib/polkit-kde-authentication-agent-1
+# Wallpapers
+exec-once = hyprpaper
+# Launcher
+exec-once = ulauncher --no-window-shadow --hide-window
+# Kde Connect
+exec-once = kdeconnect-indicator
+
+# Bar
+exec-once = eww daemon
+exec-once = eww open bar
+
+# Autostart applications
+exec-once = firefox
+exec-once = flatpak run org.mozilla.Thunderbird
+exec-once = flatpak run com.discordapp.Discord
+
+
+# See https://wiki.hyprland.org/Configuring/Keywords/ for more
+
+# Source a file (multi-file configs)
+# source = ~/.config/hypr/myColors.conf
+
+# Some default env vars.
+env = XCURSOR_SIZE,24
+env = QT_QPA_PLATFORMTHEME,qt5ct
+# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
+input {
+ kb_layout = us
+ kb_variant = dvorak
+ kb_model =
+ kb_options = caps:escape
+ kb_rules =
+
+ follow_mouse = 1
+
+ touchpad {
+ natural_scroll = no
+ }
+
+ sensitivity = 0.1 # -1.0 - 1.0, 0 means no modification.
+ accel_profile = flat
+}
+
+general {
+ # See https://wiki.hyprland.org/Configuring/Variables/ for more
+
+ gaps_in = 5
+ gaps_out = 10
+ border_size = 1
+ col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
+ col.inactive_border = rgba(595959aa)
+
+ layout = dwindle
+}
+
+decoration {
+ # See https://wiki.hyprland.org/Configuring/Variables/ for more
+
+ rounding = 5
+ blur {
+ enabled = yes
+ size = 3
+ passes = 1
+ new_optimizations = on
+ }
+
+ drop_shadow = yes
+ shadow_range = 4
+ shadow_render_power = 3
+ col.shadow = rgba(1a1a1aee)
+}
+
+layerrule = blur,gtk-layer-shell
+layerrule = ignorezero,gtk-layer-shell
+
+animations {
+ enabled = yes
+
+ # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
+
+ bezier = myBezier, 0.05, 0.9, 0.1, 1.05
+
+ animation = windows, 1, 3, myBezier
+ animation = windowsOut, 1, 3, default, popin 80%
+ animation = border, 1, 5, default
+ animation = borderangle, 1, 4, default
+ animation = fade, 1, 3, default
+ animation = workspaces, 1, 2, default
+}
+
+dwindle {
+ # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
+ pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
+ preserve_split = yes # you probably want this
+}
+
+master {
+ # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
+ new_is_master = true
+}
+
+gestures {
+ # See https://wiki.hyprland.org/Configuring/Variables/ for more
+ workspace_swipe = off
+}
+
+
+# workspaces
+workspace = HDMI-A-1, name:third
+workspace = HDMI-A-2, name:second
+workspace = 1, monitor:DP-2
+workspace = 2, monitor:DP-2
+workspace = 3, monitor:DP-2
+workspace = 4, monitor:DP-2
+workspace = 5, monitor:DP-2
+workspace = 6, monitor:DP-2
+workspace = 7, monitor:DP-2
+workspace = 8, monitor:DP-2
+workspace = 9, monitor:DP-2
+workspace = 10, monitor:DP-2
+
+
+# See https://wiki.hyprland.org/Configuring/Keywords/ for more
+$mainMod = SUPER
+$mainModShift = SUPER_SHIFT
+
+bind = $mainMod, return, exec, kitty
+bind = $mainModShift, Q, killactive,
+bind = $mainMod, F, togglefloating,
+bind = $mainModShift, F, fullscreen
+bind = $mainMod, E, exec, ulauncher-toggle #wofi --show drun
+bind = $mainMod, V, exec, cliphist list | wofi --dmenu | cliphist decode | wl-copy
+bind = CTRL, Print, exec, flameshot gui
+
+# 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
+
+# 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
+
+# Media keys
+bind = ,XF86AudioPlay, exec, playerctl --player plasma-browser-integration play-pause
+bind = ,XF86AudioPrev, exec, playerctl previous
+bind = ,XF86AudioNext, exec, playerctl next
+bind = ,XF86AudioLowerVolume, exec, playerctl --player plasma-browser-integration volume 0.01-
+bind = ,XF86AudioRaiseVolume, exec, playerctl --player plasma-browser-integration volume 0.01+
+
+
+# This is a dumb work around for hyprland not passing ALT half the time with the pass dispatcher.
+bind = ALT, M, exec, xdotool key 'ALT+m'
+bind = ALT, B, exec, xdotool key 'ALT+b'
+#bind = ALT,M,pass,^(discord)$
+#bind = ALT,B,pass,^(discord)$
+
+# Window rules
+# Auto workspace
+windowrule = workspace 1 silent,firefox
+windowrule = workspace name:second silent,discord
+windowrule = workspace 10 silent,thunderbird
+
+# ULauncher
+windowrulev2 = forceinput,class:^(ulauncher)$
+windowrulev2 = dimaround,class:^(ulauncher)$
+
+
+# Flameshot
+windowrulev2 = nofullscreenrequest,title:^(flameshot)$
+windowrulev2 = float,title:^(flameshot)$
+windowrulev2 = move 0 -1080,title:^(flameshot)$
+windowrulev2 = noanim,title:^(flameshot)$
+windowrulev2 = rounding 0,title:^(flameshot)$
diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf
new file mode 100644
index 0000000..2abed2b
--- /dev/null
+++ b/hypr/hyprpaper.conf
@@ -0,0 +1,7 @@
+preload = ~/Pictures/Wallpapers/digital-art-16-1920×1080.jpg
+preload = ~/Pictures/Wallpapers/old-island-3-3840×2160.jpg
+preload = ~/Pictures/Wallpapers/lava-dragon-3-1920×1080.jpg
+
+wallpaper = DP-2, ~/Pictures/Wallpapers/digital-art-16-1920×1080.jpg
+wallpaper = HDMI-A-1, ~/Pictures/Wallpapers/old-island-3-3840×2160.jpg
+wallpaper = HDMI-A-2, ~/Pictures/Wallpapers/lava-dragon-3-1920×1080.jpg
diff --git a/i3/config b/i3/config
deleted file mode 100644
index 138c15e..0000000
--- a/i3/config
+++ /dev/null
@@ -1,191 +0,0 @@
-# Set the mod key to be the meta key.
-set $mod Mod4
-
-# Set the font used by i3.
-font pango:DejaVu Sans Mono 8
-
-# Launch picom on startup
-exec --no-startup-id picom --experimental-backends -bc
-
-# Set a random desktop background
-exec --no-startup-id feh --bg-scale --random ~/Pictures/Wallpapers/
-
-# Launch polybar
-exec --no-startup-id polybar primary
-
-# Launch dunst
-exec --no-startup-id dunst
-
-# Launch MPD
-exec --no-startup-id mpd
-
-# Launch flameshot
-exec --no-startup-id flameshot
-
-# Launch green with envy
-exec --no-startup-id com.leinardi.gwe --hide-window
-
-# Launch a polkit daemon
-exec --no-startup-id /usr/lib/polkit-kde-authentication-agent-1
-
-# Launch KDE Connect on startup
-exec --no-startup-id /usr/lib/kdeconnectd
-#exec --no-startup-id kdeconnect-indicator
-
-# Apply my wacom tablet config
-exec --no-startup-id ~/bin/scripts/wacom-config
-
-# Set menu key as my compose key
-exec --no-startup-id setxkbmap -option compose:menu
-
-# Disable screen off
-exec --no-startup-id xset s off
-exec --no-startup-id xset -dpms
-exec --no-startup-id xset s noblank
-
-# Use pactl to adjust volume in PulseAudio.
-bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% && $refresh_i3status
-bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% && $refresh_i3status
-bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
-
-# Media player controls
-bindsym XF86AudioPlay exec mpc toggle
-bindsym XF86AudioNext exec mpc next
-bindsym XF86AudioPrev exec mpc previous
-
-# Flameshot binds
-bindsym Print exec --no-startup-id flameshot screen
-bindsym ctrl+Print exec --no-startup-id flameshot gui
-
-# Emoji menu
-bindsym $mod+e exec --no-startup-id rofi -show emoji -modi emoji -theme appsmenu
-
-# Use Mouse+$mod to drag floating windows to their wanted position
-floating_modifier $mod
-
-# Start kitty
-bindsym $mod+Return exec --no-startup-id kitty
-
-# Kill focused window
-bindsym $mod+Shift+q kill
-
-# Window options menu
-bindsym $mod+Shift+w exec --no-startup-id ~/bin/scripts/window-menu
-
-# Utility menu
-bindsym $mod+u exec --no-startup-id ~/bin/scripts/utility-menu
-
-# Start dmenu
-bindsym $mod+d exec --no-startup-id dmenu
-#bindsym $mod+d exec --no-startup-id rofi -theme appsmenu -show drun
-
-# Change focus
-bindsym $mod+h focus left
-bindsym $mod+j focus down
-bindsym $mod+k focus up
-bindsym $mod+l focus right
-
-# Move focused window
-bindsym $mod+Shift+h move left
-bindsym $mod+Shift+j move down
-bindsym $mod+Shift+k move up
-bindsym $mod+Shift+l move right
-
-# Enter fullscreen mode for the focused container
-bindsym $mod+f fullscreen toggle
-
-# Toggle tiling / floating
-bindsym $mod+Shift+space floating toggle
-
-# Gaps
-gaps inner 10
-gaps outer 0
-
-# Disable borders
-for_window [class="^.*"] border pixel 1
-
-# Make my custom timer floating by default
-for_window [class="timer"] floating enable
-# Make my custom timer "sticky". Meaning it will also be on the active workspace.
-for_window [class="timer"] sticky enable
-# Disable border for my custom timer.
-for_window [class="timer"] border pixel 0
-
-# Define names for default workspaces for which we configure key bindings later on.
-# We use variables to avoid repeating the names in multiple places.
-set $ws1 "1"
-set $ws2 "2"
-set $ws3 "3"
-set $ws4 "4"
-set $ws5 "5"
-set $ws6 "6"
-set $ws7 "7"
-set $ws8 "8"
-set $ws9 "9"
-set $ws10 "10"
-
-# switch to workspace
-bindsym $mod+1 workspace number $ws1
-bindsym $mod+2 workspace number $ws2
-bindsym $mod+3 workspace number $ws3
-bindsym $mod+4 workspace number $ws4
-bindsym $mod+5 workspace number $ws5
-bindsym $mod+6 workspace number $ws6
-bindsym $mod+7 workspace number $ws7
-bindsym $mod+8 workspace number $ws8
-bindsym $mod+9 workspace number $ws9
-bindsym $mod+0 workspace number $ws10
-
-# move focused container to workspace
-bindsym $mod+Shift+1 move container to workspace number $ws1
-bindsym $mod+Shift+2 move container to workspace number $ws2
-bindsym $mod+Shift+3 move container to workspace number $ws3
-bindsym $mod+Shift+4 move container to workspace number $ws4
-bindsym $mod+Shift+5 move container to workspace number $ws5
-bindsym $mod+Shift+6 move container to workspace number $ws6
-bindsym $mod+Shift+7 move container to workspace number $ws7
-bindsym $mod+Shift+8 move container to workspace number $ws8
-bindsym $mod+Shift+9 move container to workspace number $ws9
-bindsym $mod+Shift+0 move container to workspace number $ws10
-
-assign [class="Kodi"] $ws4
-
-# reload the configuration file
-bindsym $mod+Shift+c reload
-# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
-bindsym $mod+Shift+r restart
-# exit i3 (logs you out of your X session)
-bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
-
-
-# Colors border bground text indicator child_border
-client.focused #3366CC #2356BC #FFFFFF #3366CC #3366CC
-client.focused_inactive #000000 #000000 #FFFFFF #000000 #000000
-client.unfocused #000000 #000000 #FFFFFF #000000 #000000
-client.urgent #900000 #900000 #FFFFFF #900000 #900000
-client.placeholder #000000 #000000 #FFFFFF #000000 #000000
-
-client.background #FFFFFF
-
-# TODO: Change these.
-# resize window (you can also use the mouse for that)
-mode "resize" {
- # These bindings trigger as soon as you enter the resize mode
-
- # Pressing left will shrink the window’s width.
- # Pressing right will grow the window’s width.
- # Pressing up will shrink the window’s height.
- # Pressing down will grow the window’s height.
- bindsym h resize shrink width 10 px or 10 ppt
- bindsym j resize grow height 10 px or 10 ppt
- bindsym k resize shrink height 10 px or 10 ppt
- bindsym l resize grow width 10 px or 10 ppt
-
- # back to normal: Enter or Escape or $mod+r
- bindsym Return mode "default"
- bindsym Escape mode "default"
- bindsym $mod+r mode "default"
-}
-
-bindsym $mod+r mode "resize"
-
diff --git a/kitty/kitty.conf b/kitty/kitty.conf
index 92ccf3f..2265c6b 100644
--- a/kitty/kitty.conf
+++ b/kitty/kitty.conf
@@ -1,3 +1,4 @@
font_family Fira Code
background_opacity 0.8
+allow_remote_control yes
diff --git a/mpd/mpd.conf b/mpd/mpd.conf
deleted file mode 100644
index f8e6763..0000000
--- a/mpd/mpd.conf
+++ /dev/null
@@ -1,399 +0,0 @@
-# Files and directories #######################################################
-#
-# This setting controls the top directory which MPD will search to discover the
-# available audio files and add them to the daemon's online database. This
-# setting defaults to the XDG directory, otherwise the music directory will be
-# be disabled and audio files will only be accepted over ipc socket (using
-# file:// protocol) or streaming files over an accepted protocol.
-#
-music_directory "~/Music"
-#
-# This setting sets the MPD internal playlist directory. The purpose of this
-# directory is storage for playlists created by MPD. The server will use
-# playlist files not created by the server but only if they are in the MPD
-# format. This setting defaults to playlist saving being disabled.
-#
-playlist_directory "~/.local/share/mpd/playlists"
-#
-# This setting sets the location of the MPD database. This file is used to
-# load the database at server start up and store the database while the
-# server is not up. This setting defaults to disabled which will allow
-# MPD to accept files over ipc socket (using file:// protocol) or streaming
-# files over an accepted protocol.
-#
-db_file "~/.local/share/mpd/database"
-#
-# These settings are the locations for the daemon log files for the daemon.
-# These logs are great for troubleshooting, depending on your log_level
-# settings.
-#
-# The special value "syslog" makes MPD use the local syslog daemon. This
-# setting defaults to logging to syslog.
-#
-log_file "~/.local/share/mpd/log"
-#
-# This setting sets the location of the file which stores the process ID
-# for use of mpd --kill and some init scripts. This setting is disabled by
-# default and the pid file will not be stored.
-#
-pid_file "~/.local/share/mpd/pid"
-#
-# This setting sets the location of the file which contains information about
-# most variables to get MPD back into the same general shape it was in before
-# it was brought down. This setting is disabled by default and the server
-# state will be reset on server start up.
-#
-state_file "~/.local/share/mpd/state"
-#
-# The location of the sticker database. This is a database which
-# manages dynamic information attached to songs.
-#
-sticker_file "~/.local/share/mpd/sticker.sql"
-#
-###############################################################################
-
-
-# General music daemon options ################################################
-#
-# This setting specifies the user that MPD will run as. MPD should never run as
-# root and you may use this setting to make MPD change its user ID after
-# initialization. This setting is disabled by default and MPD is run as the
-# current user.
-#
-#user "nobody"
-#
-# This setting specifies the group that MPD will run as. If not specified
-# primary group of user specified with "user" setting will be used (if set).
-# This is useful if MPD needs to be a member of group such as "audio" to
-# have permission to use sound card.
-#
-#group "nogroup"
-#
-# This setting sets the address for the daemon to listen on. Careful attention
-# should be paid if this is assigned to anything other then the default, any.
-# This setting can deny access to control of the daemon. Not effective if
-# systemd socket activiation is in use.
-#
-# For network
-bind_to_address "0.0.0.0"
-#
-# And for Unix Socket
-#bind_to_address "~/.mpd/socket"
-#
-# This setting is the TCP port that is desired for the daemon to get assigned
-# to.
-#
-port "6600"
-#
-# Suppress all messages below the given threshold. Use "verbose" for
-# troubleshooting.
-#
-#log_level "notice"
-#
-# Setting "restore_paused" to "yes" puts MPD into pause mode instead
-# of starting playback after startup.
-#
-#restore_paused "no"
-#
-# This setting enables MPD to create playlists in a format usable by other
-# music players.
-#
-#save_absolute_paths_in_playlists "no"
-#
-# This setting defines a list of tag types that will be extracted during the
-# audio file discovery process. The complete list of possible values can be
-# found in the user manual.
-#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
-#
-# This example just enables the "comment" tag without disabling all
-# the other supported tags:
-#metadata_to_use "+comment"
-#
-# This setting enables automatic update of MPD's database when files in
-# music_directory are changed.
-#
-#auto_update "yes"
-#
-# Limit the depth of the directories being watched, 0 means only watch
-# the music directory itself. There is no limit by default.
-#
-#auto_update_depth "3"
-#
-###############################################################################
-
-
-# Symbolic link behavior ######################################################
-#
-# If this setting is set to "yes", MPD will discover audio files by following
-# symbolic links outside of the configured music_directory.
-#
-#follow_outside_symlinks "yes"
-#
-# If this setting is set to "yes", MPD will discover audio files by following
-# symbolic links inside of the configured music_directory.
-#
-#follow_inside_symlinks "yes"
-#
-###############################################################################
-
-
-# Zeroconf / Avahi Service Discovery ##########################################
-#
-# If this setting is set to "yes", service information will be published with
-# Zeroconf / Avahi.
-#
-#zeroconf_enabled "yes"
-#
-# The argument to this setting will be the Zeroconf / Avahi unique name for
-# this MPD server on the network. %h will be replaced with the hostname.
-#
-#zeroconf_name "Music Player @ %h"
-#
-###############################################################################
-
-
-# Permissions #################################################################
-#
-# If this setting is set, MPD will require password authorization. The password
-# setting can be specified multiple times for different password profiles.
-#
-#password "password@read,add,control,admin"
-#
-# This setting specifies the permissions a user has who has not yet logged in.
-#
-#default_permissions "read,add,control,admin"
-#
-###############################################################################
-
-
-# Database #######################################################################
-#
-
-#database {
-# plugin "proxy"
-# host "other.mpd.host"
-# port "6600"
-#}
-
-# Input #######################################################################
-#
-
-input {
- plugin "curl"
-# proxy "proxy.isp.com:8080"
-# proxy_user "user"
-# proxy_password "password"
-}
-
-#
-###############################################################################
-
-# Audio Output ################################################################
-#
-# MPD supports various audio output types, as well as playing through multiple
-# audio outputs at the same time, through multiple audio_output settings
-# blocks. Setting this block is optional, though the server will only attempt
-# autodetection for one sound card.
-#
-# An example of an ALSA output:
-#
-#audio_output {
-# type "alsa"
-# name "My ALSA Device"
-## device "hw:0,0" # optional
-## mixer_type "hardware" # optional
-## mixer_device "default" # optional
-## mixer_control "PCM" # optional
-## mixer_index "0" # optional
-#}
-#
-# An example of an OSS output:
-#
-#audio_output {
-# type "oss"
-# name "My OSS Device"
-## device "/dev/dsp" # optional
-## mixer_type "hardware" # optional
-## mixer_device "/dev/mixer" # optional
-## mixer_control "PCM" # optional
-#}
-#
-# An example of a shout output (for streaming to Icecast):
-#
-#audio_output {
-# type "shout"
-# encoder "vorbis" # optional
-# name "My Shout Stream"
-# host "localhost"
-# port "8000"
-# mount "/mpd.ogg"
-# password "hackme"
-# quality "5.0"
-# bitrate "128"
-# format "44100:16:1"
-## protocol "icecast2" # optional
-## user "source" # optional
-## description "My Stream Description" # optional
-## url "http://example.com" # optional
-## genre "jazz" # optional
-## public "no" # optional
-## timeout "2" # optional
-## mixer_type "software" # optional
-#}
-#
-# An example of a recorder output:
-#
-#audio_output {
-# type "recorder"
-# name "My recorder"
-# encoder "vorbis" # optional, vorbis or lame
-# path "/var/lib/mpd/recorder/mpd.ogg"
-## quality "5.0" # do not define if bitrate is defined
-# bitrate "128" # do not define if quality is defined
-# format "44100:16:1"
-#}
-#
-# An example of a httpd output (built-in HTTP streaming server):
-#
-#audio_output {
-# type "httpd"
-# name "My HTTP Stream"
-# encoder "vorbis" # optional, vorbis or lame
-# port "8000"
-# bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
-## quality "5.0" # do not define if bitrate is defined
-# bitrate "128" # do not define if quality is defined
-# format "44100:16:1"
-# max_clients "0" # optional 0=no limit
-#}
-#
-# An example of a pulseaudio output (streaming to a remote pulseaudio server)
-#
-audio_output {
- type "pulse"
- name "MPD"
-# server "localhost" # optional
-# sink "remote_server_sink" # optional
-# media_role "media_role" #optional
-}
-#
-# An example of a winmm output (Windows multimedia API).
-#
-#audio_output {
-# type "winmm"
-# name "My WinMM output"
-## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
-# or
-## device "0" # optional
-## mixer_type "hardware" # optional
-#}
-#
-# An example of a wasapi output (Windows multimedia API).
-#
-#audio_output {
-# type "wasapi"
-# name "My WASAPI output"
-## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
-# or
-## device "0" # optional
-## Exclusive mode blocks all other audio source, and get best audio quality without resampling.
-## exclusive "no" # optional
-## Enumerate all devices in log.
-## enumerate "no" # optional
-#}
-#
-# An example of an openal output.
-#
-#audio_output {
-# type "openal"
-# name "My OpenAL output"
-## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
-#}
-#
-# An example of an sndio output.
-#
-#audio_output {
-# type "sndio"
-# name "sndio output"
-# mixer_type "hardware"
-#}
-#
-# An example of an OS X output:
-#
-#audio_output {
-# type "osx"
-# name "My OS X Device"
-## device "Built-in Output" # optional
-## channel_map "-1,-1,0,1" # optional
-#}
-#
-## Example "pipe" output:
-#
-#audio_output {
-# type "pipe"
-# name "my pipe"
-# command "aplay -f cd 2>/dev/null"
-## Or if you're want to use AudioCompress
-# command "AudioCompress -m | aplay -f cd 2>/dev/null"
-## Or to send raw PCM stream through PCM:
-# command "nc example.org 8765"
-# format "44100:16:2"
-#}
-#
-## An example of a null output (for no audio output):
-#
-#audio_output {
-# type "null"
-# name "My Null Output"
-# mixer_type "none" # optional
-#}
-#
-###############################################################################
-
-
-# Normalization automatic volume adjustments ##################################
-#
-# This setting specifies the type of ReplayGain to use. This setting can have
-# the argument "off", "album", "track" or "auto". "auto" is a special mode that
-# chooses between "track" and "album" depending on the current state of
-# random playback. If random playback is enabled then "track" mode is used.
-# See for more details about ReplayGain.
-# This setting is off by default.
-#
-#replaygain "album"
-#
-# This setting sets the pre-amp used for files that have ReplayGain tags. By
-# default this setting is disabled.
-#
-#replaygain_preamp "0"
-#
-# This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
-# By default this setting is disabled.
-#
-#replaygain_missing_preamp "0"
-#
-# This setting enables or disables ReplayGain limiting.
-# MPD calculates actual amplification based on the ReplayGain tags
-# and replaygain_preamp / replaygain_missing_preamp setting.
-# If replaygain_limit is enabled MPD will never amplify audio signal
-# above its original level. If replaygain_limit is disabled such amplification
-# might occur. By default this setting is enabled.
-#
-#replaygain_limit "yes"
-#
-# This setting enables on-the-fly normalization volume adjustment. This will
-# result in the volume of all playing audio to be adjusted so the output has
-# equal "loudness". This setting is disabled by default.
-#
-#volume_normalization "no"
-#
-###############################################################################
-
-# Character Encoding ##########################################################
-#
-# If file or directory names do not display correctly for your locale then you
-# may need to modify this setting.
-#
-#filesystem_charset "UTF-8"
-#
-###############################################################################
diff --git a/nvim/after/plugin/nvim-tree.lua b/nvim/after/plugin/nvim-tree.lua
index dc5b3e9..22edc6a 100644
--- a/nvim/after/plugin/nvim-tree.lua
+++ b/nvim/after/plugin/nvim-tree.lua
@@ -1,23 +1,19 @@
require('nvim-tree').setup {
- sort_by = 'case_sensitive',
- view = {
- adaptive_size = true,
- mappings = {
- custom_only = false,
- list = {},
+ sort_by = 'case_sensitive',
+ view = {
+ adaptive_size = true,
},
- },
- renderer = {
- group_empty = true,
- highlight_git = true,
- highlight_opened_files = "name",
- indent_markers = {
- enable = true,
+ renderer = {
+ group_empty = true,
+ highlight_git = true,
+ highlight_opened_files = "name",
+ indent_markers = {
+ enable = true,
+ },
+ },
+ filters = {
+ dotfiles = true,
},
- },
- filters = {
- dotfiles = true,
- },
}
require("lsp-file-operations").setup()
diff --git a/nvim/init.lua b/nvim/init.lua
index b7d936b..b92df42 100644
--- a/nvim/init.lua
+++ b/nvim/init.lua
@@ -34,8 +34,8 @@ vim.opt.incsearch = true
vim.opt.signcolumn = 'yes'
vim.opt.updatetime = 50
-vim.opt.completeopt = {'menuone', 'noselect', 'noinsert'}
-vim.opt.shortmess = vim.opt.shortmess + { c = true}
+vim.opt.completeopt = { 'menuone', 'noselect', 'noinsert' }
+vim.opt.shortmess = vim.opt.shortmess + { c = true }
vim.opt.timeoutlen = 1000 -- For agda unicode chars to work properly
@@ -48,14 +48,17 @@ require('kalle.plugins')
vim.cmd.colorscheme('carbonfox')
vim.g.vimtex_compiler_latexmk = { -- Make vimtex allow shell-escape while compiling
- options = {
- '-shell-escape',
- '-verbose',
- '-file-line-error',
- '-synctex=1',
- '-interaction=nonstopmode'
- }
+ options = {
+ '-shell-escape',
+ '-verbose',
+ '-file-line-error',
+ '-synctex=1',
+ '-interaction=nonstopmode'
+ }
}
+-- Autoformat on save
+vim.cmd [[autocmd BufWritePre * lua vim.lsp.buf.format()]]
+
-- TODO:
-- - Debugger integration (gdb?, java?/kotlin?, rust?, etc) - nvim-dap and friends
diff --git a/nvim/lua/kalle/plugins.lua b/nvim/lua/kalle/plugins.lua
index 9329929..3efcc4b 100644
--- a/nvim/lua/kalle/plugins.lua
+++ b/nvim/lua/kalle/plugins.lua
@@ -6,129 +6,130 @@ vim.cmd([[
]])
local fn = vim.fn
-local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
+local install_path = fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim'
if fn.empty(fn.glob(install_path)) > 0 then
- packer_bootstrap = fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
- vim.cmd [[packadd packer.nvim]]
+ packer_bootstrap = fn.system({ 'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim',
+ install_path })
+ vim.cmd [[packadd packer.nvim]]
end
-return require('packer').startup({function(use)
- use('ashinkarov/nvim-agda')
- use('lervag/vimtex')
- use('vigoux/LanguageTool.nvim')
+return require('packer').startup({
+ function(use)
+ use('ashinkarov/nvim-agda')
+ use('lervag/vimtex')
+ use('vigoux/LanguageTool.nvim')
- use('wbthomason/packer.nvim')
- use('EdenEast/nightfox.nvim')
- use('folke/which-key.nvim')
- use('numToStr/FTerm.nvim')
+ use('wbthomason/packer.nvim')
+ use('EdenEast/nightfox.nvim')
+ use('folke/which-key.nvim')
+ use('numToStr/FTerm.nvim')
- use('brenoprata10/nvim-highlight-colors')
+ use('brenoprata10/nvim-highlight-colors')
- use('jiaoshijie/undotree')
+ use('jiaoshijie/undotree')
- use('j-hui/fidget.nvim')
+ use('j-hui/fidget.nvim')
- use('elkowar/yuck.vim')
+ use('elkowar/yuck.vim')
- use('numToStr/Comment.nvim')
- use('RRethy/vim-illuminate')
+ use('numToStr/Comment.nvim')
+ use('RRethy/vim-illuminate')
- use {
- 'nvim-treesitter/nvim-treesitter',
- run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
- }
- use('https://git.sr.ht/~p00f/nvim-ts-rainbow')
- use('windwp/nvim-autopairs')
- use('windwp/nvim-ts-autotag')
+ use {
+ 'nvim-treesitter/nvim-treesitter',
+ run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
+ }
+ use('https://git.sr.ht/~p00f/nvim-ts-rainbow')
+ use('windwp/nvim-autopairs')
+ use('windwp/nvim-ts-autotag')
- use {
- 'kosayoda/nvim-lightbulb',
- requires = 'antoinemadec/FixCursorHold.nvim',
- }
+ use {
+ 'kosayoda/nvim-lightbulb',
+ requires = 'antoinemadec/FixCursorHold.nvim',
+ }
- use {
- 'kyazdani42/nvim-tree.lua',
- requires = {
- 'kyazdani42/nvim-web-devicons',
- },
- }
+ use {
+ 'kyazdani42/nvim-tree.lua',
+ requires = {
+ 'kyazdani42/nvim-web-devicons',
+ },
+ }
- use {
- 'antosha417/nvim-lsp-file-operations',
- requires = {
- { "nvim-lua/plenary.nvim" },
- { "kyazdani42/nvim-tree.lua" },
+ use {
+ 'antosha417/nvim-lsp-file-operations',
+ requires = {
+ { "nvim-lua/plenary.nvim" },
+ { "kyazdani42/nvim-tree.lua" },
+ }
+ }
+
+ use {
+ "williamboman/mason.nvim",
+ "williamboman/mason-lspconfig.nvim",
+ }
+
+ use('simrat39/rust-tools.nvim')
+
+ use('chentoast/marks.nvim')
+
+ use('neovim/nvim-lspconfig')
+
+ use('mfussenegger/nvim-dap')
+ use('rcarriga/nvim-dap-ui')
+ use('theHamsta/nvim-dap-virtual-text')
+ use('nvim-telescope/telescope-dap.nvim')
+ use('jayp0521/mason-nvim-dap.nvim')
+
+ use {
+ 'hrsh7th/cmp-nvim-lsp',
+ 'hrsh7th/cmp-buffer',
+ 'hrsh7th/cmp-path',
+ 'hrsh7th/cmp-cmdline',
+ 'hrsh7th/cmp-nvim-lsp-signature-help',
+ 'hrsh7th/nvim-cmp',
+ 'L3MON4D3/LuaSnip',
+ 'saadparwaiz1/cmp_luasnip',
+ }
+
+ use 'famiu/bufdelete.nvim'
+
+ use {
+ 'TimUntersberger/neogit',
+ 'lewis6991/gitsigns.nvim',
+ }
+ use('nvim-lua/plenary.nvim')
+
+ use('nvim-lualine/lualine.nvim')
+ use {
+ 'akinsho/bufferline.nvim', tag = "v2.*",
+ requires = 'kyazdani42/nvim-web-devicons'
+ }
+
+ use {
+ 'nvim-telescope/telescope.nvim', tag = '0.1.0',
+ requires = {
+ 'nvim-lua/plenary.nvim'
+ },
+ }
+
+ use('nvim-telescope/telescope-ui-select.nvim')
+
+ use('folke/todo-comments.nvim')
+
+
+ -- Automatically set up your configuration after cloning packer.nvim
+ -- Put this at the end after all plugins
+ if packer_bootstrap then
+ require('packer').sync()
+ end
+ end,
+ config = {
+ auto_reload_compiled = false, -- Automatically reload the compiled file after creating it.
+ display = {
+ open_fn = function()
+ return require('packer.util').float({ border = 'single' })
+ end
+ }
}
- }
-
- use {
- "williamboman/mason.nvim",
- "williamboman/mason-lspconfig.nvim",
- }
-
- use('simrat39/rust-tools.nvim')
-
- use('chentoast/marks.nvim')
-
- use('neovim/nvim-lspconfig')
-
- use('mfussenegger/nvim-dap')
- use('rcarriga/nvim-dap-ui')
- use('theHamsta/nvim-dap-virtual-text')
- use('nvim-telescope/telescope-dap.nvim')
- use('jayp0521/mason-nvim-dap.nvim')
-
- use {
- 'hrsh7th/cmp-nvim-lsp',
- 'hrsh7th/cmp-buffer',
- 'hrsh7th/cmp-path',
- 'hrsh7th/cmp-cmdline',
- 'hrsh7th/cmp-nvim-lsp-signature-help',
- 'hrsh7th/nvim-cmp',
- 'L3MON4D3/LuaSnip',
- 'saadparwaiz1/cmp_luasnip',
- }
-
- use 'famiu/bufdelete.nvim'
-
- use {
- 'TimUntersberger/neogit',
- 'lewis6991/gitsigns.nvim',
- }
- use('nvim-lua/plenary.nvim')
-
- use('nvim-lualine/lualine.nvim')
- use {
- 'akinsho/bufferline.nvim', tag = "v2.*",
- requires = 'kyazdani42/nvim-web-devicons'
- }
-
- use {
- 'nvim-telescope/telescope.nvim', tag = '0.1.0',
- requires = {
- 'nvim-lua/plenary.nvim'
- },
- }
-
- use('nvim-telescope/telescope-ui-select.nvim')
-
- use('folke/todo-comments.nvim')
-
-
- -- Automatically set up your configuration after cloning packer.nvim
- -- Put this at the end after all plugins
- if packer_bootstrap then
- require('packer').sync()
- end
-end,
- config = {
- auto_reload_compiled = false, -- Automatically reload the compiled file after creating it.
- display = {
- open_fn = function()
- return require('packer.util').float({ border = 'single' })
- end
- }
- }
})
-- run bootstrap: nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync'
-
diff --git a/nvim/plugin/packer_compiled.lua b/nvim/plugin/packer_compiled.lua
index 0b0de39..54e1667 100644
--- a/nvim/plugin/packer_compiled.lua
+++ b/nvim/plugin/packer_compiled.lua
@@ -49,8 +49,8 @@ local function save_profiles(threshold)
end
time([[Luarocks path setup]], true)
-local package_path_str = "/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
-local install_cpath_pattern = "/home/kalle/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/lua/5.1/?.so"
+local package_path_str = "/home/kalle/.cache/nvim/packer_hererocks/2.1.1694285958/share/lua/5.1/?.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.1694285958/share/lua/5.1/?/init.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.1694285958/lib/luarocks/rocks-5.1/?.lua;/home/kalle/.cache/nvim/packer_hererocks/2.1.1694285958/lib/luarocks/rocks-5.1/?/init.lua"
+local install_cpath_pattern = "/home/kalle/.cache/nvim/packer_hererocks/2.1.1694285958/lib/lua/5.1/?.so"
if not string.find(package.path, package_path_str, 1, true) then
package.path = package.path .. ';' .. package_path_str
end
diff --git a/nvim/spell/en.utf-8.add b/nvim/spell/en.utf-8.add
index 883c6f7..a2639e4 100644
--- a/nvim/spell/en.utf-8.add
+++ b/nvim/spell/en.utf-8.add
@@ -59,3 +59,4 @@ dto
api
loadPage
hits
+Bruijn
diff --git a/nvim/spell/en.utf-8.add.spl b/nvim/spell/en.utf-8.add.spl
index d2c01dd..3d67986 100644
Binary files a/nvim/spell/en.utf-8.add.spl and b/nvim/spell/en.utf-8.add.spl differ
diff --git a/picom/picom.conf b/picom/picom.conf
deleted file mode 100644
index c793074..0000000
--- a/picom/picom.conf
+++ /dev/null
@@ -1,172 +0,0 @@
-#################################
-# Background-Blurring #
-#################################
-
-# Blur background of semi-transparent / ARGB windows.
-# Bad in performance, with driver-dependent behavior.
-# The name of the switch may change without prior notifications.
-#
-blur-background = true;
-
-# Specify the blur convolution kernel, with the following format:
-# example:
-# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
-#
-# blur-kern = ''
-blur-method = "gaussian"
-blur-size = 11
-blur-deviation = 5
-
-
-# Exclude conditions for background blur.
-# blur-background-exclude = []
-blur-background-exclude = [
- "window_type = 'dock'",
- "window_type = 'desktop'",
- "class_g = 'timer'",
- "_GTK_FRAME_EXTENTS@:c"
-];
-
-#################################
-# Shadows #
-#################################
-
-# Specify a list of conditions of windows that should have no shadow.
-#
-# examples:
-# shadow-exclude = "n:e:Notification";
-#
-# shadow-exclude = []
-shadow-exclude = [
- "name = 'Notification'",
- "class_g = 'Conky'",
- "class_g ?= 'Notify-osd'",
- "class_g = 'Cairo-clock'",
- "class_g = 'timer'",
- "_GTK_FRAME_EXTENTS@:c"
-];
-
-#################################
-# General Settings #
-#################################
-
-# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
-# `xrender` is the default one.
-#
-# backend = 'glx'
-backend = "glx";
-
-# Enable/disable VSync.
-# vsync = false
-vsync = true
-
-# Try to detect WM windows (a non-override-redirect window with no
-# child that has 'WM_STATE') and mark them as active.
-mark-wmwin-focused = true;
-
-# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
-mark-ovredir-focused = true;
-
-# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
-# not passing '_NET_WM_OPACITY' of client windows to frame windows.
-detect-client-opacity = true;
-
-# Specify refresh rate of the screen. If not specified or 0, picom will
-# try detecting this with X RandR extension.
-refresh-rate = 144;
-
-# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
-# in the same group focused at the same time.
-#
-# detect-transient = false
-detect-transient = true
-
-# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
-# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
-# detect-transient is enabled, too.
-#
-# detect-client-leader = false
-detect-client-leader = true
-
-# GLX backend: Avoid rebinding pixmap on window damage.
-# Probably could improve performance on rapid window content changes,
-# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
-# Recommended if it works.
-#
-# glx-no-rebind-pixmap = false
-
-# Disable the use of damage information.
-# This cause the whole screen to be redrawn everytime, instead of the part of the screen
-# has actually changed. Potentially degrades the performance, but might fix some artifacts.
-# The opposing option is use-damage
-#
-# no-use-damage = false
-use-damage = true
-
-# Use X Sync fence to sync clients' draw calls, to make sure all draw
-# calls are finished before picom starts drawing. Needed on nvidia-drivers
-# with GLX backend for some users.
-#
-xrender-sync-fence = false
-
-# Set the log level. Possible values are:
-# "trace", "debug", "info", "warn", "error"
-# in increasing level of importance. Case doesn't matter.
-# If using the "TRACE" log level, it's better to log into a file
-# using *--log-file*, since it can generate a huge stream of logs.
-#
-# log-level = "debug"
-log-level = "warn";
-
-# Set the log file.
-# If *--log-file* is never specified, logs will be written to stderr.
-# Otherwise, logs will to written to the given file, though some of the early
-# logs might still be written to the stderr.
-# When setting this option from the config file, it is recommended to use an absolute path.
-#
-# log-file = '/path/to/your/log/file'
-
-# Show all X errors (for debugging)
-# show-all-xerrors = false
-
-# Write process ID to a file.
-# write-pid-path = '/path/to/your/log/file'
-
-# Window type settings
-#
-# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
-# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
-# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
-# "tooltip", "notification", "combo", and "dnd".
-#
-# Following per window-type options are available: ::
-#
-# fade, shadow:::
-# Controls window-type-specific shadow and fade settings.
-#
-# opacity:::
-# Controls default opacity of the window type.
-#
-# focus:::
-# Controls whether the window of this type is to be always considered focused.
-# (By default, all window types except "normal" and "dialog" has this on.)
-#
-# full-shadow:::
-# Controls whether shadow is drawn under the parts of the window that you
-# normally won't be able to see. Useful when the window has parts of it
-# transparent, and you want shadows in those areas.
-#
-# redir-ignore:::
-# Controls whether this type of windows should cause screen to become
-# redirected again after been unredirected. If you have unredir-if-possible
-# set, and doesn't want certain window to cause unnecessary screen redirection,
-# you can set this to `true`.
-#
-wintypes:
-{
- tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
- dock = { shadow = false; }
- dnd = { shadow = false; }
- popup_menu = { opacity = 0.8; }
- dropdown_menu = { opacity = 0.8; }
-};
diff --git a/polybar/config b/polybar/config
deleted file mode 100644
index d8ce1bc..0000000
--- a/polybar/config
+++ /dev/null
@@ -1,176 +0,0 @@
-[colors]
-transparent = #00000000
-background = #282a36
-background-current = #44475a
-foreground = #f8f8f2
-button = #2d1349
-cyan = #5ba9bd
-green = #209a4b
-orange = #cf885c
-pink = #ff79c6
-purple = #7d53b9
-red = #cc3333
-yellow = #997700
-
-[bar/primary]
-monitor = ${env:MONITOR:DP-4}
-width = 100%
-height = 28
-
-background = ${colors.transparent}
-foregorund = ${colors.foreground}
-
-# No under/over line
-line-size = 0
-# Small border to pull it away from the green edges.
-border-size = 5
-border-bottom-size = 0
-border-color = ${colors.transparent}
-
-padding = 1
-
-module-margin-left = 1
-module-margin-right = 0
-
-font-0 = "Roboto Mono Nerd Font:pixelsize=12;2"
-
-tray-position = right
-tray-background = ${colors.background}
-tray-reparent = true
-
-modules-left = i3
-modules-center = utility mpd calculator
-modules-right = memory pulseaudio du_root date
-
-[module/i3]
-type = internal/i3
-format =
-index-sort = true
-wrapping-scroll = false
-
-; Only show workspaces on the same output as the bar
-pin-workspaces = true
-
-label-mode-padding = 2
-label-mode-foreground = #000
-label-mode-background = ${colors.background}
-
-; focused = Active workspace on focused monitor
-label-focused = %index%
-label-focused-background = ${colors.background-current}
-label-focused-padding = 2
-
-; unfocused = Inactive workspace on any monitor
-label-unfocused = %index%
-label-unfocused-background = ${colors.background}
-label-unfocused-padding = 2
-
-; visible = Active workspace on unfocused monitor
-label-visible = %index%
-label-visible-background = ${self.label-focused-background}
-label-visible-padding = ${self.label-focused-padding}
-
-; urgent = Workspace with urgency hint set
-label-urgent = %index%
-label-urgent-background = ${colors.red}
-label-urgent-padding = 2
-
-[module/utility]
-type = custom/text
-content = " "
-content-background = ${colors.button}
-
-click-left = "bash -c $HOME/.dots/scripts/utilities-menu"
-
-
-[module/mpd]
-type = internal/mpd
-format-online = " "
-format-online-background = ${colors.background}
-format-online-prefix = " "
-format-online-prefix-background = ${colors.purple}
-
-icon-prev = " 玲"
-icon-stop = " 栗"
-icon-play = " 契"
-icon-pause = " "
-icon-next = " 怜"
-
-label-song = " %artist% - %title% "
-label-song-maxlen = 25
-label-song-ellipsis = true
-
-
-[module/calculator]
-type = custom/text
-content = " "
-content-background = ${colors.button}
-
-click-left = "rofi -show calc -theme appsmenu -modi calc -no-persist-history -no-show-match -no-sort"
-
-
-[module/memory]
-type = internal/memory
-interval = 2
-format-prefix = " "
-format-prefix-background = ${colors.red}
-format-background = ${colors.background}
-label = " %gb_used% "
-
-
-[module/pulseaudio]
-type = internal/pulseaudio
-
-format-volume =
-format-volume-background = ${colors.background}
-format-volume-prefix = " 墳 "
-format-volume-prefix-background = ${colors.cyan}
-
-format-muted =
-format-muted-background = ${colors.background}
-format-muted-prefix = " 墳 "
-format-muted-prefix-background = ${colors.cyan}
-
-label-volume = " %percentage%% "
-
-label-muted = " Muted "
-
-
-[module/du_root]
-type = internal/fs
-interval = 25
-
-mount-0 = /
-
-label-mounted = " %percentage_used%% "
-label-unmounted = " "
-
-format-mounted =
-format-mounted-background = ${colors.background}
-format-mounted-prefix = " "
-format-mounted-prefix-background = ${colors.green}
-
-format-unmounted =
-format-unmounted-background = ${colors.background}
-format-unmounted-prefix = " "
-format-unmounted-prefix-background = ${colors.green}
-
-
-[module/date]
-type = internal/date
-interval = 5
-
-date =
-date-alt = " %Y-%m-%d"
-
-time = "%H:%M "
-time-alt = "%H:%M:%S "
-
-format-background = ${colors.background}
-format-prefix = " "
-format-prefix-foreground = ${colors.foreground}
-format-prefix-background = ${colors.yellow}
-
-label = %date% %time%
-
-; vim:ft=dosini
diff --git a/rofi/themes/appsmenu.rasi b/rofi/themes/appsmenu.rasi
deleted file mode 100644
index 8df5d15..0000000
--- a/rofi/themes/appsmenu.rasi
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * This theme is intended for a 8x2 items list menu with a headerbar.
- */
-
-configuration {
- show-icons: true;
-}
-
-@import "shared/settings.rasi"
-* {
- background-color: transparent;
- text-color: @foreground-list;
- font: @text-font;
-}
-
-
-#window {
- padding: @list-8-window-padding;
-}
-inputbar,
-prompt,
-textbox-prompt-colon,
-entry {
- background-color: @background;
-}
-#inputbar {
- children: [ prompt, textbox-prompt-colon, entry ];
- margin: @inputbar-margin;
- width: 100%;
-}
-#prompt {
- padding: @prompt-padding;
- background-color: @accent;
- text-color: @background-focus;
- width: 100%;
-}
-#message {
- padding: @list-element-padding;
- margin: @list-element-margin;
- background-color: @background-focus;
- border: @list-element-border;
- border-color: @on;
-}
-#textbox-prompt-colon {
- expand: false;
- str: " : : ";
- padding: @apps-textbox-prompt-colon-padding;
-}
-#entry {
- text-color: @accent;
- padding: @entry-padding;
-}
-#element {
- padding: @list-element-padding;
- margin: @list-element-margin;
- border: @list-element-border;
- background-color: @background-focus;
- border-color: @background-focus;
-}
-#element.selected {
- background-color: @background;
- text-color: @accent;
- border-color: @accent;
-}
-
-element-icon {
- size: 24px;
-}
-
diff --git a/rofi/themes/shared/colorschemes/dark-amber.rasi b/rofi/themes/shared/colorschemes/dark-amber.rasi
deleted file mode 100644
index ae63794..0000000
--- a/rofi/themes/shared/colorschemes/dark-amber.rasi
+++ /dev/null
@@ -1,10 +0,0 @@
-* {
- accent: #ffbf00;
- background: #1c1c1c;
- background-light: #1f1f1f;
- background-focus: #282828;
- foreground: #888888;
- foreground-list: #bbbbbb;
- on: #44ad4d;
- off: #e34039;
-}
diff --git a/rofi/themes/shared/colorschemes/dark-steel-blue.rasi b/rofi/themes/shared/colorschemes/dark-steel-blue.rasi
deleted file mode 100644
index 210dbe4..0000000
--- a/rofi/themes/shared/colorschemes/dark-steel-blue.rasi
+++ /dev/null
@@ -1,10 +0,0 @@
-* {
- accent: #728cbb;
- background: #1c1c1c;
- background-light: #1f1f1f;
- background-focus: #282828;
- foreground: #888888;
- foreground-list: #bbbbbb;
- on: #44ad4d;
- off: #e34039;
-}
diff --git a/rofi/themes/shared/colorschemes/dracula.rasi b/rofi/themes/shared/colorschemes/dracula.rasi
deleted file mode 100644
index 67f1a08..0000000
--- a/rofi/themes/shared/colorschemes/dracula.rasi
+++ /dev/null
@@ -1,10 +0,0 @@
-* {
- accent: #cc3333;
- background: #282a36;
- background-light: #44475a;
- background-focus: #282828;
- foreground: #888888;
- foreground-list: #bbbbbb;
- on: #44ad4d;
- off: #e34039;
-}
diff --git a/rofi/themes/shared/colorschemes/gruvbox.rasi b/rofi/themes/shared/colorschemes/gruvbox.rasi
deleted file mode 100644
index 1e646e0..0000000
--- a/rofi/themes/shared/colorschemes/gruvbox.rasi
+++ /dev/null
@@ -1,10 +0,0 @@
-* {
- accent: #83a598;
- background: #282828;
- background-light: #282828;
- background-focus: #1d2021;
- foreground: #ebdbb2;
- foreground-list: #ebdbb2;
- on: #83a598;
- off: #fb4934;
-}
diff --git a/rofi/themes/shared/colorschemes/light-blue.rasi b/rofi/themes/shared/colorschemes/light-blue.rasi
deleted file mode 100644
index 103861b..0000000
--- a/rofi/themes/shared/colorschemes/light-blue.rasi
+++ /dev/null
@@ -1,10 +0,0 @@
-* {
- accent: #6699ff;
- background: #f2f2f2;
- background-light: #e2e2e2;
- background-focus: #d2d2d2;
- foreground: #333333;
- foreground-list: #222222;
- on: #44ad4d;
- off: #e34039;
-}
diff --git a/rofi/themes/shared/option-menu.rasi b/rofi/themes/shared/option-menu.rasi
deleted file mode 100644
index c23ab3b..0000000
--- a/rofi/themes/shared/option-menu.rasi
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Settings used in every rofi option menu:
- * - i3layoutmenu
- * - mpdmenu
- * - powermenu
- * - scrotmenu
- */
-@import "settings.rasi"
-* {
- background-color: @background;
- text-color: @foreground;
- font: @icon-font;
-}
-#window {
- children: [ horibox ];
-}
-#horibox {
- children: [ listview ];
-}
-#listview {
- layout: horizontal;
-}
-#element {
- padding: @option-element-padding;
- background-color: @background-light;
-}
-#element.selected {
- background-color: @accent;
- text-color: @background;
-}
-
diff --git a/rofi/themes/shared/resolutions/1920x1080.rasi b/rofi/themes/shared/resolutions/1920x1080.rasi
deleted file mode 100644
index 6eed8b4..0000000
--- a/rofi/themes/shared/resolutions/1920x1080.rasi
+++ /dev/null
@@ -1,40 +0,0 @@
-* {
- /* General */
- text-font: "Comfortaa 16";
- text-font-mono: "RobotoMono Nerd Font Regular 14";
- icon-font: "Hurmit Nerd Font Mono 60";
- icon-font-small: "Hurmit Nerd Font Mono 24";
- inputbar-margin: 4px 4px;
- prompt-padding: 16px 20px;
- entry-padding: 18px 16px 16px 0px;
- /* list menus: appsmenu, networkmenu and nmvpnmenu */
- list-element-padding: 20px;
- list-element-margin: @inputbar-margin;
- list-element-border: 0px 0px 0px 8px;
- list-8-window-padding: 219px 360px;
- /* option menus: i3layoutmenu, mpdmenu, powermenu and scrotmenu */
- /**
- * Values bellow are 'no-padding' ones for a size 60 (@icon-font) font, played around using this character: ■
- * We then add add 100 actual padding around the icons.
- * -12px 0px -19px -96px */
- option-element-padding: 88px 100px 81px 4px;
- option-3-window-padding: 415px 446px;
- option-3-listview-spacing: 140px;
- option-5-window-padding: 415px 183px;
- option-5-listview-spacing: 77px;
- option-6-listview-spacing: 50px;
- /* appsmenu */
- apps-textbox-prompt-colon-padding: 16px;
- /* mpdmenu */
- mpd-window-padding: 379px 111px;
- mpd-inputbar-margin: 10px 0px;
- mpd-prompt-padding: 14px 20px 10px 20px;
- mpd-prompt-margin: 0px 0px 0px -2px;
- mpd-element-border: 12px;
- /* Every @option-element-padding minus @mpd-element-border */
- mpd-element-padding: 76px 88px 69px -16px;
- /* networkmenu */
- network-textbox-prompt-colon-padding: 14px 10px 10px 10px;
- /* nmvpnmenu */
- nmvpn-textbox-prompt-colon-padding: @network-textbox-prompt-colon-padding;
-}
diff --git a/rofi/themes/shared/settings.rasi b/rofi/themes/shared/settings.rasi
deleted file mode 100644
index 01bf186..0000000
--- a/rofi/themes/shared/settings.rasi
+++ /dev/null
@@ -1,11 +0,0 @@
-/**
- * Allows to change the settings of every menu simply by editing this file
- */
-@import "colorschemes/dracula.rasi"
-@import "resolutions/1920x1080.rasi"
-
-#window {
- width: 100%;
- height: 100%;
-}
-
diff --git a/setup.sh b/setup.sh
index 7e9a3d2..52c1daa 100755
--- a/setup.sh
+++ b/setup.sh
@@ -1,8 +1,24 @@
#!/usr/bin/env bash
+#
cd $(dirname $0)
DOTS_DIR=$(pwd)
+function link_config {
+ NAME="$1"
+ TARGET="$2"
+ FROM="$DOTS_DIR/$3"
+ if [ -d "$TARGET" ]; then
+ echo "[$NAME] Configuration directory exists. Skipping."
+ else
+ ln -s "$FROM" "$TARGET"
+ fi
+}
+
+link_config "Dunst" "$HOME/.config/dunst" "dunst"
+link_config "Kitty" "$HOME/.config/kitty" "kitty"
+link_config "Eww" "$HOME/.config/eww" "eww"
+
# Neovim
NVIM_DIR="$HOME/.config/nvim"
@@ -17,88 +33,6 @@ else
nvim --headless -c 'autocmd User PackerComplete quitall' -c 'PackerSync'
fi
-# i3-gaps
-I3_DIR="$HOME/.config/i3"
-
-# Check if the i3 directory exists. If it does we skip this part of the script and inform the user.
-if [ -d $I3_DIR ]; then
- echo "[I3] Configuration directory exists. Skipping."
-else
- # Symlink the config
- ln -s $DOTS_DIR/i3 $I3_DIR
-fi
-
-# Picom
-PICOM_DIR="$HOME/.config/picom"
-
-# Check if the picom directory exists. If it does we skip this part of the script and inform the user.
-if [ -d $PICOM_DIR ]; then
- echo "[PICOM] Configuration directory exists. Skipping."
-else
- ln -s $DOTS_DIR/picom $PICOM_DIR
-fi
-
-# Polybar
-POLYBAR_DIR="$HOME/.config/polybar"
-
-# Check if the polybar directory exists. If it does we skip this part of the script and inform the user.
-if [ -d $POLYBAR_DIR ]; then
- echo "[POLYBAR] Configuration directory exists. Skipping."
-else
- ln -s $DOTS_DIR/polybar $POLYBAR_DIR
-fi
-
-# Dunst
-DUNST_DIR="$HOME/.config/dunst"
-
-# Check if the dunst directory exists. If it does we skip this part of the script and inform the user.'
-if [ -d $DUNST_DIR ]; then
- echo "[DUNST] Configuration directory exists. Skipping."
-else
- ln -s $DOTS_DIR/dunst $DUNST_DIR
-fi
-
-# Kitty
-KITTY_DIR="$HOME/.config/kitty"
-
-# Check if the kitty directory exists. If it does we skip this part of the script and inform the user.
-if [ -d $KITTY_DIR ]; then
- echo "[KITTY] Configuration directory exists. Skipping."
-else
- ln -s $DOTS_DIR/kitty $KITTY_DIR
-fi
-
-# MPD
-MPD_DIR="$HOME/.config/mpd"
-
-# Check if the mpd directory exists. If it does we skip this part of the script and inform the user.
-if [ -d $MPD_DIR ]; then
- echo "[MPD] Configuration directory exists. Skipping."
-else
- ln -s $DOTS_DIR/mpd $MPD_DIR
-fi
-
-# ZSH
-ZSHRC="$HOME/.zshrc"
-
-# Check if the zshrc file exists. If it does we skip this part of the script and inform the user.
-if [ -f $ZSHRC ]; then
- echo "[ZSH] Configuration file exists. Skipping."
-else
- ln -s "$DOTS_DIR/zsh/.zshrc" $ZSHRC
-fi
-
-# Rofi
-ROFI_DIR="$HOME/.config/rofi"
-
-# Check if the rofi directory exists. If it does we skip this part of the script and inform the user.
-if [ -d $ROFI_DIR ]; then
- echo "[ROFI] Configuration file exists. Skipping."
-else
- ln -s $DOTS_DIR/rofi $ROFI_DIR
-fi
-
-
# Scripts
SCRIPT_DIR="$HOME/bin/scripts"
@@ -115,3 +49,4 @@ TEMPLATE_DIR="$HOME/Templates"
rmdir "$TEMPLATE_DIR"
ln -s "$DOTS_DIR/Templates" "$TEMPLATE_DIR"
+
diff --git a/zsh/.zshrc b/zsh/.zshrc
deleted file mode 100644
index 42061d7..0000000
--- a/zsh/.zshrc
+++ /dev/null
@@ -1,83 +0,0 @@
-autoload compinit
-
-compinit
-
-# Menu driven command completion.
-zstyle ':completion:*' menu select
-# Make ZSH complete aliases.
-setopt COMPLETE_ALIASES
-# Allow ZSH to complete in priviliged environments.
-zstyle ':completion::complete:*' gain-privileges 1
-## case-insensitive (uppercase from lowercase) completion
-zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
-autoload -U colors && colors
-
-# When typing a directory name cd to it.
-setopt autocd
-
-# Add ~/bin and ~/bin.scripts to my path
-export PATH=$PATH:$HOME/bin/:$HOME/bin/scripts/:$HOME/.emacs.d/bin/
-
-# Set the prompt.
-export PS1="[%F{6}%n%f@%M %F{4}%(5~|%-1~/…/%3~|%4~)%f] "
-
-# Function to download a full youtube playlist using youtube-dl.
-function playlist-dl {
- echo "Looking up playlist name..."
- pl_line=$(youtube-dl --flat-playlist "$1" | grep "\[download\] Downloading playlist: ")
- pl_name=$(echo ${pl_line:33} | tr '/' ' ')
- echo "Found playlist by name: $pl_name"
- echo "Downloading it into directory: $pl_name"
-
- mkdir "$pl_name"
- cd "$pl_name"
- youtube-dl --extract-audio --audio-format mp3 -o "%(title)s.%(ext)s" "$1"
- cd ../
-}
-
-function cd-courses {
- dir=$(ls ~/Uni | fzf)
- cd ~/Uni/$dir
-}
-
-function cd-projects {
- dir=$(find ~/Projects -maxdepth 3 -type d | fzf)
- cd $dir
-}
-
-function script-edit {
- scripts=$(ls ~/bin/scripts/)"$(echo -e "\nzshrc")"
-
- selected=$(echo $scripts | fzf)
- case $selected in
- "zshrc")
- nvim ~/.zshrc
- ;;
- *)
- nvim ~/bin/scripts/$selected
- ;;
- esac
-}
-
-function compile {
- gcc -no-pie -g -o $2 $1
-}
-
-# Set EDITOR to be nvim.
-export EDITOR=nvim
-
-# Aliases
-alias ls="lsd"
-alias grep="grep --color"
-alias vim="nvim"
-alias vi="nvim"
-alias open="xdg-open"
-
-alias gg="git-graph --model simple --color always | less -r"
-alias gi="gitinspector --grading=true -f \"java,fxml,css,py,html\" -F html -x author:\"OOP Project Team\""
-alias se="script-edit"
-alias c="cd-courses"
-alias proj="cd-projects"
-
-# Add fish like syntax highlighting to zsh.
-source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh