cumulative update
This commit is contained in:
parent
3ecbac352e
commit
c360fc2339
71 changed files with 3281 additions and 380 deletions
3
.Xresources
Normal file
3
.Xresources
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
Xft.dpi: 96
|
||||||
|
Xcursor.size: 24
|
||||||
|
Xcursor.theme: Breeze
|
23
.config/X11/autostart
Executable file
23
.config/X11/autostart
Executable file
|
@ -0,0 +1,23 @@
|
||||||
|
set -x
|
||||||
|
|
||||||
|
setxkbmap -layout us,ru -option grp:win_space_toggle
|
||||||
|
xset r rate 300 40
|
||||||
|
xwallpaper --zoom ${HOME}/.local/share/wallpaper/wallpaper.png
|
||||||
|
|
||||||
|
launch() {
|
||||||
|
cmd="$1"
|
||||||
|
shift
|
||||||
|
pkill "${cmd}"
|
||||||
|
"${cmd}" "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
xrdb -merge ~/.Xresources
|
||||||
|
|
||||||
|
launch xsettingsd &
|
||||||
|
# launch picom --config="${HOME}/.config/picom.conf" &
|
||||||
|
launch copyq &
|
||||||
|
launch dunst &
|
||||||
|
launch flameshot &
|
||||||
|
launch dwmblocks &
|
||||||
|
|
||||||
|
# vim: ft=bash
|
8
.config/X11/xprofile
Normal file
8
.config/X11/xprofile
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
systemctl --user import-environment DISPLAY
|
||||||
|
|
||||||
|
export TERMINAL=/usr/bin/alacritty
|
||||||
|
export TERM=/usr/bin/alacritty
|
||||||
|
export _JAVA_AWT_WM_NONREPARENTING=1
|
||||||
|
export AWT_TOOLKIT=MToolkit
|
||||||
|
|
||||||
|
# vim: ft=bash
|
|
@ -1,4 +1,56 @@
|
||||||
|
live_config_reload: true
|
||||||
|
colors:
|
||||||
|
bright:
|
||||||
|
black: "0x5c6370"
|
||||||
|
blue: "0x61afef"
|
||||||
|
cyan: "0x56b6c2"
|
||||||
|
green: "0x98c379"
|
||||||
|
magenta: "0xc678dd"
|
||||||
|
red: "0xe06c75"
|
||||||
|
white: "0xe6efff"
|
||||||
|
yellow: "0xd19a66"
|
||||||
|
normal:
|
||||||
|
black: "0x1e2127"
|
||||||
|
blue: "0x61afef"
|
||||||
|
cyan: "0x56b6c2"
|
||||||
|
green: "0x98c379"
|
||||||
|
magenta: "0xc678dd"
|
||||||
|
red: "0xe06c75"
|
||||||
|
white: "0x828791"
|
||||||
|
yellow: "0xd19a66"
|
||||||
|
primary:
|
||||||
|
background: "0x1e2127"
|
||||||
|
bright_foreground: "0xe6efff"
|
||||||
|
foreground: "0xabb2bf"
|
||||||
|
cursor:
|
||||||
|
style:
|
||||||
|
blinking: Off
|
||||||
|
shape: Block
|
||||||
|
env:
|
||||||
|
TERM: xterm-256color
|
||||||
|
font:
|
||||||
|
size: 11
|
||||||
|
glyph_offset:
|
||||||
|
x: 0
|
||||||
|
y: 0
|
||||||
|
normal:
|
||||||
|
family: "Mononoki Nerd Font"
|
||||||
|
offset:
|
||||||
|
x: 1
|
||||||
|
y: 2
|
||||||
|
keyboard:
|
||||||
|
bindings:
|
||||||
|
- chars: "\x1f"
|
||||||
|
key: Slash
|
||||||
|
mods: Control
|
||||||
|
- chars: "\0"
|
||||||
|
key: Space
|
||||||
|
mods: Control
|
||||||
|
- chars: "\e"
|
||||||
|
key: Back
|
||||||
|
mods: Control
|
||||||
window:
|
window:
|
||||||
|
dynamic_padding: true
|
||||||
dimensions:
|
dimensions:
|
||||||
columns: 140
|
columns: 140
|
||||||
lines: 45
|
lines: 45
|
||||||
|
@ -6,72 +58,3 @@ window:
|
||||||
x: 2
|
x: 2
|
||||||
y: 2
|
y: 2
|
||||||
|
|
||||||
dynamic_padding: true
|
|
||||||
|
|
||||||
font:
|
|
||||||
normal:
|
|
||||||
family: "Mononoki Nerd Font"
|
|
||||||
size: 10.5
|
|
||||||
|
|
||||||
offset:
|
|
||||||
x: 1
|
|
||||||
y: 2
|
|
||||||
|
|
||||||
glyph_offset:
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
|
|
||||||
colors:
|
|
||||||
primary:
|
|
||||||
background: '0x1e2127'
|
|
||||||
foreground: '0xabb2bf'
|
|
||||||
bright_foreground: '0xe6efff'
|
|
||||||
|
|
||||||
normal:
|
|
||||||
black: '0x1e2127'
|
|
||||||
red: '0xe06c75'
|
|
||||||
green: '0x98c379'
|
|
||||||
yellow: '0xd19a66'
|
|
||||||
blue: '0x61afef'
|
|
||||||
magenta: '0xc678dd'
|
|
||||||
cyan: '0x56b6c2'
|
|
||||||
white: '0x828791'
|
|
||||||
|
|
||||||
bright:
|
|
||||||
black: '0x5c6370'
|
|
||||||
red: '0xe06c75'
|
|
||||||
green: '0x98c379'
|
|
||||||
yellow: '0xd19a66'
|
|
||||||
blue: '0x61afef'
|
|
||||||
magenta: '0xc678dd'
|
|
||||||
cyan: '0x56b6c2'
|
|
||||||
white: '0xe6efff'
|
|
||||||
|
|
||||||
dim:
|
|
||||||
black: '0x1e2127'
|
|
||||||
red: '0xe06c75'
|
|
||||||
green: '0x98c379'
|
|
||||||
yellow: '0xd19a66'
|
|
||||||
blue: '0x61afef'
|
|
||||||
magenta: '0xc678dd'
|
|
||||||
cyan: '0x56b6c2'
|
|
||||||
white: '0x828791'
|
|
||||||
|
|
||||||
cursor:
|
|
||||||
style:
|
|
||||||
shape: Block
|
|
||||||
blinking: Off
|
|
||||||
|
|
||||||
live_config_reload: true
|
|
||||||
|
|
||||||
shell:
|
|
||||||
program: wsl
|
|
||||||
args:
|
|
||||||
- sh
|
|
||||||
- -c
|
|
||||||
- '"cd ${HOME}; exec ${SHELL}"'
|
|
||||||
|
|
||||||
key_bindings:
|
|
||||||
- { key: 'Slash', mods: 'Control', chars: "\x1f"}
|
|
||||||
- { key: 'Space', mods: 'Control', chars: "\x00"}
|
|
||||||
- { key: 'Back', mods: 'Control', chars: "\x1b\x7f"}
|
|
||||||
|
|
445
.config/dunst/dunstrc
Normal file
445
.config/dunst/dunstrc
Normal file
|
@ -0,0 +1,445 @@
|
||||||
|
# See dunst(5) for all configuration options
|
||||||
|
|
||||||
|
[global]
|
||||||
|
### Display ###
|
||||||
|
|
||||||
|
# Which monitor should the notifications be displayed on.
|
||||||
|
monitor = 0
|
||||||
|
|
||||||
|
# Display notification on focused monitor. Possible modes are:
|
||||||
|
# mouse: follow mouse pointer
|
||||||
|
# keyboard: follow window with keyboard focus
|
||||||
|
# none: don't follow anything
|
||||||
|
#
|
||||||
|
# "keyboard" needs a window manager that exports the
|
||||||
|
# _NET_ACTIVE_WINDOW property.
|
||||||
|
# This should be the case for almost all modern window managers.
|
||||||
|
#
|
||||||
|
# If this option is set to mouse or keyboard, the monitor option
|
||||||
|
# will be ignored.
|
||||||
|
follow = none
|
||||||
|
|
||||||
|
### Geometry ###
|
||||||
|
|
||||||
|
# dynamic width from 0 to 300
|
||||||
|
# width = (0, 300)
|
||||||
|
# constant width of 300
|
||||||
|
width = 400
|
||||||
|
|
||||||
|
# The maximum height of a single notification, excluding the frame.
|
||||||
|
height = 1000
|
||||||
|
|
||||||
|
# Position the notification in the top right corner
|
||||||
|
origin = top-right
|
||||||
|
|
||||||
|
# Offset from the origin
|
||||||
|
offset = 12x42
|
||||||
|
|
||||||
|
# Scale factor. It is auto-detected if value is 0.
|
||||||
|
scale = 0
|
||||||
|
|
||||||
|
# Maximum number of notification (0 means no limit)
|
||||||
|
notification_limit = 0
|
||||||
|
|
||||||
|
### Progress bar ###
|
||||||
|
|
||||||
|
# Turn on the progess bar. It appears when a progress hint is passed with
|
||||||
|
# for example dunstify -h int:value:12
|
||||||
|
progress_bar = true
|
||||||
|
|
||||||
|
# Set the progress bar height. This includes the frame, so make sure
|
||||||
|
# it's at least twice as big as the frame width.
|
||||||
|
progress_bar_height = 10
|
||||||
|
|
||||||
|
# Set the frame width of the progress bar
|
||||||
|
progress_bar_frame_width = 1
|
||||||
|
|
||||||
|
# Set the minimum width for the progress bar
|
||||||
|
progress_bar_min_width = 150
|
||||||
|
|
||||||
|
# Set the maximum width for the progress bar
|
||||||
|
progress_bar_max_width = 300
|
||||||
|
|
||||||
|
|
||||||
|
# Show how many messages are currently hidden (because of
|
||||||
|
# notification_limit).
|
||||||
|
indicate_hidden = yes
|
||||||
|
|
||||||
|
# The transparency of the window. Range: [0; 100].
|
||||||
|
# This option will only work if a compositing window manager is
|
||||||
|
# present (e.g. xcompmgr, compiz, etc.). (X11 only)
|
||||||
|
transparency = 10
|
||||||
|
|
||||||
|
# Draw a line of "separator_height" pixel height between two
|
||||||
|
# notifications.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
separator_height = 2
|
||||||
|
|
||||||
|
# Padding between text and separator.
|
||||||
|
padding = 8
|
||||||
|
|
||||||
|
# Horizontal padding.
|
||||||
|
horizontal_padding = 8
|
||||||
|
|
||||||
|
# Padding between text and icon.
|
||||||
|
text_icon_padding = 0
|
||||||
|
|
||||||
|
# Defines width in pixels of frame around the notification window.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
frame_width = 1
|
||||||
|
|
||||||
|
# Defines color of the frame around the notification window.
|
||||||
|
frame_color = "#3e4452"
|
||||||
|
|
||||||
|
# Define a color for the separator.
|
||||||
|
# possible values are:
|
||||||
|
# * auto: dunst tries to find a color fitting to the background;
|
||||||
|
# * foreground: use the same color as the foreground;
|
||||||
|
# * frame: use the same color as the frame;
|
||||||
|
# * anything else will be interpreted as a X color.
|
||||||
|
separator_color = frame
|
||||||
|
|
||||||
|
# Sort messages by urgency.
|
||||||
|
sort = yes
|
||||||
|
|
||||||
|
# Don't remove messages, if the user is idle (no mouse or keyboard input)
|
||||||
|
# for longer than idle_threshold seconds.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
# A client can set the 'transient' hint to bypass this. See the rules
|
||||||
|
# section for how to disable this if necessary
|
||||||
|
idle_threshold = 10
|
||||||
|
|
||||||
|
### Text ###
|
||||||
|
|
||||||
|
font = Mononoki Nerd Font 10
|
||||||
|
|
||||||
|
# The spacing between lines. If the height is smaller than the
|
||||||
|
# font height, it will get raised to the font height.
|
||||||
|
line_height = 0
|
||||||
|
|
||||||
|
# Possible values are:
|
||||||
|
# full: Allow a small subset of html markup in notifications:
|
||||||
|
# <b>bold</b>
|
||||||
|
# <i>italic</i>
|
||||||
|
# <s>strikethrough</s>
|
||||||
|
# <u>underline</u>
|
||||||
|
#
|
||||||
|
# For a complete reference see
|
||||||
|
# <https://docs.gtk.org/Pango/pango_markup.html>.
|
||||||
|
#
|
||||||
|
# strip: This setting is provided for compatibility with some broken
|
||||||
|
# clients that send markup even though it's not enabled on the
|
||||||
|
# server. Dunst will try to strip the markup but the parsing is
|
||||||
|
# simplistic so using this option outside of matching rules for
|
||||||
|
# specific applications *IS GREATLY DISCOURAGED*.
|
||||||
|
#
|
||||||
|
# no: Disable markup parsing, incoming notifications will be treated as
|
||||||
|
# plain text. Dunst will not advertise that it has the body-markup
|
||||||
|
# capability if this is set as a global setting.
|
||||||
|
#
|
||||||
|
# It's important to note that markup inside the format option will be parsed
|
||||||
|
# regardless of what this is set to.
|
||||||
|
markup = full
|
||||||
|
|
||||||
|
# The format of the message. Possible variables are:
|
||||||
|
# %a appname
|
||||||
|
# %s summary
|
||||||
|
# %b body
|
||||||
|
# %i iconname (including its path)
|
||||||
|
# %I iconname (without its path)
|
||||||
|
# %p progress value if set ([ 0%] to [100%]) or nothing
|
||||||
|
# %n progress value if set without any extra characters
|
||||||
|
# %% Literal %
|
||||||
|
# Markup is allowed
|
||||||
|
format = "<b>%s</b>\n%b"
|
||||||
|
|
||||||
|
# Alignment of message text.
|
||||||
|
# Possible values are "left", "center" and "right".
|
||||||
|
alignment = left
|
||||||
|
|
||||||
|
# Vertical alignment of message text and icon.
|
||||||
|
# Possible values are "top", "center" and "bottom".
|
||||||
|
vertical_alignment = center
|
||||||
|
|
||||||
|
# Show age of message if message is older than show_age_threshold
|
||||||
|
# seconds.
|
||||||
|
# Set to -1 to disable.
|
||||||
|
show_age_threshold = 60
|
||||||
|
|
||||||
|
# Specify where to make an ellipsis in long lines.
|
||||||
|
# Possible values are "start", "middle" and "end".
|
||||||
|
ellipsize = middle
|
||||||
|
|
||||||
|
# Ignore newlines '\n' in notifications.
|
||||||
|
ignore_newline = no
|
||||||
|
|
||||||
|
# Stack together notifications with the same content
|
||||||
|
stack_duplicates = true
|
||||||
|
|
||||||
|
# Hide the count of stacked notifications with the same content
|
||||||
|
hide_duplicate_count = false
|
||||||
|
|
||||||
|
# Display indicators for URLs (U) and actions (A).
|
||||||
|
show_indicators = no
|
||||||
|
|
||||||
|
### Icons ###
|
||||||
|
|
||||||
|
# Align icons left/right/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
|
||||||
|
|
||||||
|
# Scale larger icons down to this size, set to 0 to disable
|
||||||
|
max_icon_size = 48
|
||||||
|
|
||||||
|
# Paths to default icons.
|
||||||
|
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
||||||
|
|
||||||
|
### History ###
|
||||||
|
|
||||||
|
# Should a notification popped up from history be sticky or timeout
|
||||||
|
# as if it would normally do.
|
||||||
|
sticky_history = yes
|
||||||
|
|
||||||
|
# Maximum amount of notifications kept in history
|
||||||
|
history_length = 100
|
||||||
|
|
||||||
|
### Misc/Advanced ###
|
||||||
|
|
||||||
|
# dmenu path.
|
||||||
|
dmenu = dmenu -p dunst:
|
||||||
|
|
||||||
|
# Browser for opening urls in context menu.
|
||||||
|
browser = /usr/bin/xdg-open
|
||||||
|
|
||||||
|
# Always run rule-defined scripts, even if the notification is suppressed
|
||||||
|
always_run_script = true
|
||||||
|
|
||||||
|
# Define the title of the windows spawned by dunst
|
||||||
|
title = Dunst
|
||||||
|
|
||||||
|
# Define the class of the windows spawned by dunst
|
||||||
|
class = Dunst
|
||||||
|
|
||||||
|
# Define the corner radius of the notification window
|
||||||
|
# in pixel size. If the radius is 0, you have no rounded
|
||||||
|
# corners.
|
||||||
|
# The radius will be automatically lowered if it exceeds half of the
|
||||||
|
# notification height to avoid clipping text and/or icons.
|
||||||
|
corner_radius = 0
|
||||||
|
|
||||||
|
# Ignore the dbus closeNotification message.
|
||||||
|
# Useful to enforce the timeout set by dunst configuration. Without this
|
||||||
|
# parameter, an application may close the notification sent before the
|
||||||
|
# user defined timeout.
|
||||||
|
ignore_dbusclose = false
|
||||||
|
|
||||||
|
### Wayland ###
|
||||||
|
# These settings are Wayland-specific. They have no effect when using X11
|
||||||
|
|
||||||
|
# Uncomment this if you want to let notications appear under fullscreen
|
||||||
|
# applications (default: overlay)
|
||||||
|
# layer = top
|
||||||
|
|
||||||
|
# Set this to true to use X11 output on Wayland.
|
||||||
|
force_xwayland = false
|
||||||
|
|
||||||
|
### Legacy
|
||||||
|
|
||||||
|
# Use the Xinerama extension instead of RandR for multi-monitor support.
|
||||||
|
# This setting is provided for compatibility with older nVidia drivers that
|
||||||
|
# do not support RandR and using it on systems that support RandR is highly
|
||||||
|
# discouraged.
|
||||||
|
#
|
||||||
|
# By enabling this setting dunst will not be able to detect when a monitor
|
||||||
|
# is connected or disconnected which might break follow mode if the screen
|
||||||
|
# layout changes.
|
||||||
|
force_xinerama = false
|
||||||
|
|
||||||
|
### mouse
|
||||||
|
|
||||||
|
# Defines list of actions for each mouse event
|
||||||
|
# Possible values are:
|
||||||
|
# * none: Don't do anything.
|
||||||
|
# * do_action: Invoke the action determined by the action_name rule. If there is no
|
||||||
|
# such action, open the context menu.
|
||||||
|
# * open_url: If the notification has exactly one url, open it. If there are multiple
|
||||||
|
# ones, open the context menu.
|
||||||
|
# * close_current: Close current notification.
|
||||||
|
# * close_all: Close all notifications.
|
||||||
|
# * context: Open context menu for the notification.
|
||||||
|
# * context_all: Open context menu for all notifications.
|
||||||
|
# These values can be strung together for each mouse event, and
|
||||||
|
# will be executed in sequence.
|
||||||
|
mouse_left_click = close_current
|
||||||
|
mouse_middle_click = do_action, close_current
|
||||||
|
mouse_right_click = context
|
||||||
|
|
||||||
|
# Experimental features that may or may not work correctly. Do not expect them
|
||||||
|
# to have a consistent behaviour across releases.
|
||||||
|
[experimental]
|
||||||
|
# Calculate the dpi to use on a per-monitor basis.
|
||||||
|
# If this setting is enabled the Xft.dpi value will be ignored and instead
|
||||||
|
# dunst will attempt to calculate an appropriate dpi value for each monitor
|
||||||
|
# using the resolution and physical size. This might be useful in setups
|
||||||
|
# where there are multiple screens with very different dpi values.
|
||||||
|
per_monitor_dpi = false
|
||||||
|
|
||||||
|
|
||||||
|
[urgency_low]
|
||||||
|
# IMPORTANT: colors have to be defined in quotation marks.
|
||||||
|
# Otherwise the "#" and following would be interpreted as a comment.
|
||||||
|
background = "#282c34"
|
||||||
|
foreground = "#abb2bf"
|
||||||
|
timeout = 10
|
||||||
|
# Icon for notifications with low urgency, uncomment to enable
|
||||||
|
#new_icon = /path/to/icon
|
||||||
|
|
||||||
|
[urgency_normal]
|
||||||
|
background = "#282c34"
|
||||||
|
foreground = "#abb2bf"
|
||||||
|
timeout = 10
|
||||||
|
# Icon for notifications with normal urgency, uncomment to enable
|
||||||
|
#new_icon = /path/to/icon
|
||||||
|
|
||||||
|
[urgency_critical]
|
||||||
|
background = "#282c34"
|
||||||
|
foreground = "#abb2bf"
|
||||||
|
frame_color = "#ff0000"
|
||||||
|
timeout = 0
|
||||||
|
# Icon for notifications with critical urgency, uncomment to enable
|
||||||
|
#new_icon = /path/to/icon
|
||||||
|
|
||||||
|
# Every section that isn't one of the above is interpreted as a rules to
|
||||||
|
# override settings for certain messages.
|
||||||
|
#
|
||||||
|
# Messages can be matched by
|
||||||
|
# appname (discouraged, see desktop_entry)
|
||||||
|
# body
|
||||||
|
# category
|
||||||
|
# desktop_entry
|
||||||
|
# icon
|
||||||
|
# match_transient
|
||||||
|
# msg_urgency
|
||||||
|
# stack_tag
|
||||||
|
# summary
|
||||||
|
#
|
||||||
|
# and you can override the
|
||||||
|
# background
|
||||||
|
# foreground
|
||||||
|
# format
|
||||||
|
# frame_color
|
||||||
|
# fullscreen
|
||||||
|
# new_icon
|
||||||
|
# set_stack_tag
|
||||||
|
# set_transient
|
||||||
|
# set_category
|
||||||
|
# timeout
|
||||||
|
# urgency
|
||||||
|
# skip_display
|
||||||
|
# history_ignore
|
||||||
|
# action_name
|
||||||
|
# word_wrap
|
||||||
|
# ellipsize
|
||||||
|
# alignment
|
||||||
|
#
|
||||||
|
# Shell-like globbing will get expanded.
|
||||||
|
#
|
||||||
|
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
|
||||||
|
# GLib based applications export their desktop-entry name. In comparison to the appname,
|
||||||
|
# the desktop-entry won't get localized.
|
||||||
|
#
|
||||||
|
# SCRIPTING
|
||||||
|
# You can specify a script that gets run when the rule matches by
|
||||||
|
# setting the "script" option.
|
||||||
|
# The script will be called as follows:
|
||||||
|
# script appname summary body icon urgency
|
||||||
|
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
|
||||||
|
#
|
||||||
|
# NOTE: It might be helpful to run dunst -print in a terminal in order
|
||||||
|
# to find fitting options for rules.
|
||||||
|
|
||||||
|
# Disable the transient hint so that idle_threshold cannot be bypassed from the
|
||||||
|
# client
|
||||||
|
#[transient_disable]
|
||||||
|
# match_transient = yes
|
||||||
|
# set_transient = no
|
||||||
|
#
|
||||||
|
# Make the handling of transient notifications more strict by making them not
|
||||||
|
# be placed in history.
|
||||||
|
#[transient_history_ignore]
|
||||||
|
# match_transient = yes
|
||||||
|
# history_ignore = yes
|
||||||
|
|
||||||
|
# fullscreen values
|
||||||
|
# show: show the notifications, regardless if there is a fullscreen window opened
|
||||||
|
# delay: displays the new notification, if there is no fullscreen window active
|
||||||
|
# If the notification is already drawn, it won't get undrawn.
|
||||||
|
# pushback: same as delay, but when switching into fullscreen, the notification will get
|
||||||
|
# withdrawn from screen again and will get delayed like a new notification
|
||||||
|
#[fullscreen_delay_everything]
|
||||||
|
# fullscreen = delay
|
||||||
|
#[fullscreen_show_critical]
|
||||||
|
# msg_urgency = critical
|
||||||
|
# fullscreen = show
|
||||||
|
|
||||||
|
#[espeak]
|
||||||
|
# summary = "*"
|
||||||
|
# script = dunst_espeak.sh
|
||||||
|
|
||||||
|
#[script-test]
|
||||||
|
# summary = "*script*"
|
||||||
|
# script = dunst_test.sh
|
||||||
|
|
||||||
|
#[ignore]
|
||||||
|
# # This notification will not be displayed
|
||||||
|
# summary = "foobar"
|
||||||
|
# skip_display = true
|
||||||
|
|
||||||
|
[spotify]
|
||||||
|
appname = "Spotify"
|
||||||
|
format = ""
|
||||||
|
|
||||||
|
[history-ignore]
|
||||||
|
appname = "no-history"
|
||||||
|
history_ignore = yes
|
||||||
|
|
||||||
|
#[history-ignore]
|
||||||
|
# # This notification will not be saved in history
|
||||||
|
# summary = "foobar"
|
||||||
|
# history_ignore = yes
|
||||||
|
|
||||||
|
#[skip-display]
|
||||||
|
# # This notification will not be displayed, but will be included in the history
|
||||||
|
# summary = "foobar"
|
||||||
|
# skip_display = yes
|
||||||
|
|
||||||
|
#[signed_on]
|
||||||
|
# appname = Pidgin
|
||||||
|
# summary = "*signed on*"
|
||||||
|
# urgency = low
|
||||||
|
#
|
||||||
|
#[signed_off]
|
||||||
|
# appname = Pidgin
|
||||||
|
# summary = *signed off*
|
||||||
|
# urgency = low
|
||||||
|
#
|
||||||
|
#[says]
|
||||||
|
# appname = Pidgin
|
||||||
|
# summary = *says*
|
||||||
|
# urgency = critical
|
||||||
|
#
|
||||||
|
#[twitter]
|
||||||
|
# appname = Pidgin
|
||||||
|
# summary = *twitter.com*
|
||||||
|
# urgency = normal
|
||||||
|
#
|
||||||
|
#[stack-volumes]
|
||||||
|
# appname = "some_volume_notifiers"
|
||||||
|
# set_stack_tag = "volume"
|
||||||
|
#
|
||||||
|
# vim: ft=cfg
|
||||||
|
|
16
.config/gtk-3.0/settings.ini
Normal file
16
.config/gtk-3.0/settings.ini
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
[Settings]
|
||||||
|
gtk-theme-name=Yaru-dark
|
||||||
|
gtk-icon-theme-name=Yaru-dark
|
||||||
|
gtk-font-name=Sans 10
|
||||||
|
gtk-cursor-theme-size=24
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_TEXT
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=0
|
||||||
|
gtk-menu-images=1
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle=hintfull
|
||||||
|
gtk-xft-rgba=rgb
|
||||||
|
gtk-cursor-theme-name=Breeze
|
|
@ -1,36 +1,38 @@
|
||||||
{
|
{
|
||||||
"Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" },
|
"Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" },
|
||||||
"LuaSnip": { "branch": "master", "commit": "f03089854a8e15594a01562fa7192d0009a6fbe7" },
|
"LuaSnip": { "branch": "master", "commit": "878ace11983444d865a72e1759dbcc331d1ace4c" },
|
||||||
"Navigator.nvim": { "branch": "master", "commit": "91d86506ac2a039504d5205d32a1d4bc7aa57072" },
|
"Navigator.nvim": { "branch": "master", "commit": "91d86506ac2a039504d5205d32a1d4bc7aa57072" },
|
||||||
"bufferline.nvim": { "branch": "main", "commit": "1a3397556d194bb1f2cc530b07124ccc512c5501" },
|
"black-nvim": { "branch": "master", "commit": "8fb3efc562b67269e6f31f8653297f826534fa4b" },
|
||||||
"cmake-tools.nvim": { "branch": "master", "commit": "edbf419e00b21e83d45f4a17edffb2035d7a0ce6" },
|
"bufferline.nvim": { "branch": "main", "commit": "99337f63f0a3c3ab9519f3d1da7618ca4f91cffe" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
|
"cmake-tools.nvim": { "branch": "master", "commit": "13ac73e88af371552379cbdbd57fee3550ade691" },
|
||||||
|
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
||||||
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
||||||
"fidget.nvim": { "branch": "main", "commit": "785efc604f6ffe3c3fdd2ea86262804d48863ee1" },
|
"fidget.nvim": { "branch": "main", "commit": "ef99df04a1c53a453602421bc0f756997edc8289" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" },
|
"friendly-snippets": { "branch": "main", "commit": "d0610077b6129cf9f7f78afbe3a1425d60f6e2f1" },
|
||||||
"indent-blankline.nvim": { "branch": "master", "commit": "dbd90bb689ff10d21fee6792eb8928f0584b5860" },
|
"indent-blankline.nvim": { "branch": "master", "commit": "d98f537c3492e87b6dc6c2e3f66ac517528f406f" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
|
"lazy.nvim": { "branch": "main", "commit": "24fa2a97085ca8a7220b5b078916f81e316036fd" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" },
|
"lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" },
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "4eb8e15e3c0757303d4c6dea64d2981fc679e990" },
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "a4caa0d083aab56f6cd5acf2d42331b74614a585" },
|
||||||
"mason.nvim": { "branch": "main", "commit": "41e75af1f578e55ba050c863587cffde3556ffa6" },
|
"mason.nvim": { "branch": "main", "commit": "49ff59aded1047a773670651cfa40e76e63c6377" },
|
||||||
"neodev.nvim": { "branch": "main", "commit": "1676d2c24186fc30005317e0306d20c639b2351b" },
|
"neodev.nvim": { "branch": "main", "commit": "ce9a2e8eaba5649b553529c5498acb43a6c317cd" },
|
||||||
"nvim-autopairs": { "branch": "master", "commit": "0f04d78619cce9a5af4f355968040f7d675854a1" },
|
"nvim-autopairs": { "branch": "master", "commit": "c15de7e7981f1111642e7e53799e1211d4606cb9" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "0b751f6beef40fd47375eaf53d3057e0bfa317e4" },
|
"nvim-cmp": { "branch": "main", "commit": "5260e5e8ecadaf13e6b82cf867a909f54e15fd07" },
|
||||||
"nvim-lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" },
|
"nvim-lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "694aaec65733e2d54d393abf80e526f86726c988" },
|
"nvim-lspconfig": { "branch": "master", "commit": "7cb90cf656139dc59cf86206946ec85571671b5b" },
|
||||||
"nvim-notify": { "branch": "master", "commit": "e4a2022f4fec2d5ebc79afa612f96d8b11c627b3" },
|
"nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" },
|
||||||
"nvim-tree.lua": { "branch": "master", "commit": "05f55c1fd6470b31627655c528245794e3cd4b2c" },
|
"nvim-tree.lua": { "branch": "master", "commit": "5a87ffe35c4739ffb6b62052572583ad277a20ae" },
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "0791b5ebb590a2d44e20640c52679df1fc42e8ab" },
|
"nvim-treesitter": { "branch": "master", "commit": "5c924407cf110e9da4f3ba02ffed127b4198ad89" },
|
||||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" },
|
"nvim-treesitter-textobjects": { "branch": "master", "commit": "3557e41418b4a6c5b85d5d64abe94c9c50fa9b14" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "5efb8bd06841f91f97c90e16de85e96d57e9c862" },
|
"nvim-web-devicons": { "branch": "master", "commit": "b77921fdc44833c994fdb389d658ccbce5490c16" },
|
||||||
"onedark.nvim": { "branch": "master", "commit": "e7c656ac6b6460aaab817cbd0c9d5c043eda4b43" },
|
"onedark.nvim": { "branch": "master", "commit": "8e4b79b0e6495ddf29552178eceba1e147e6cecf" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
|
"plenary.nvim": { "branch": "master", "commit": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683" },
|
||||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" },
|
"telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" },
|
||||||
"telescope.nvim": { "branch": "0.1.x", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
|
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||||
"vim-fugitive": { "branch": "master", "commit": "46eaf8918b347906789df296143117774e827616" },
|
"trouble.nvim": { "branch": "main", "commit": "cf81aaca820017388fc630c534774c95b58233f2" },
|
||||||
|
"vim-fugitive": { "branch": "master", "commit": "4f59455d2388e113bd510e85b310d15b9228ca0d" },
|
||||||
"vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" },
|
"vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" },
|
||||||
"vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" },
|
"vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" },
|
||||||
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
|
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
|
||||||
"vim-tmux": { "branch": "master", "commit": "cfe76281efc29890548cf9eedd42ad51c7a1faf0" },
|
"vim-tmux": { "branch": "master", "commit": "cfe76281efc29890548cf9eedd42ad51c7a1faf0" },
|
||||||
"vim-wakatime": { "branch": "master", "commit": "87c6861ea81700ec4a6a27c81413cf07cb2c883c" }
|
"vim-wakatime": { "branch": "master", "commit": "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23" }
|
||||||
}
|
}
|
|
@ -1,18 +1,19 @@
|
||||||
-- Open NvimTree on startup
|
-- Open NvimTree on startup
|
||||||
local function open_nvim_tree(data)
|
vim.api.nvim_create_autocmd({ "VimEnter" }, {
|
||||||
local real_file = vim.fn.filereadable(data.file) == 1
|
callback = function(data)
|
||||||
local no_name = data.file == "" and vim.bo[data.buf].buftype == ""
|
local real_file = vim.fn.filereadable(data.file) == 1
|
||||||
local directory = vim.fn.isdirectory(data.file) == 1
|
local no_name = data.file == "" and vim.bo[data.buf].buftype == ""
|
||||||
|
local directory = vim.fn.isdirectory(data.file) == 1
|
||||||
|
|
||||||
if real_file or no_name then
|
if real_file or no_name then
|
||||||
require("nvim-tree.api").tree.toggle({ focus = false, find_file = true, })
|
require("nvim-tree.api").tree.toggle({ focus = false, find_file = true, })
|
||||||
elseif directory then
|
elseif directory then
|
||||||
vim.cmd.enew()
|
vim.cmd.enew()
|
||||||
vim.cmd.cd(data.file)
|
vim.cmd.cd(data.file)
|
||||||
require("nvim-tree.api").tree.open()
|
require("nvim-tree.api").tree.open()
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
})
|
||||||
vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = open_nvim_tree })
|
|
||||||
|
|
||||||
-- Resotre cursor on exit
|
-- Resotre cursor on exit
|
||||||
-- vim.api.nvim_create_autocmd("VimLeave", {
|
-- vim.api.nvim_create_autocmd("VimLeave", {
|
||||||
|
|
1
.config/nvim/lua/config/lsp/cmake.lua
Normal file
1
.config/nvim/lua/config/lsp/cmake.lua
Normal file
|
@ -0,0 +1 @@
|
||||||
|
return {}
|
1
.config/nvim/lua/config/lsp/gopls.lua
Normal file
1
.config/nvim/lua/config/lsp/gopls.lua
Normal file
|
@ -0,0 +1 @@
|
||||||
|
return {}
|
|
@ -4,7 +4,38 @@ require('mason-lspconfig').setup()
|
||||||
local mason_lspconfig = require('mason-lspconfig')
|
local mason_lspconfig = require('mason-lspconfig')
|
||||||
|
|
||||||
local on_attach = function(_, bufnr)
|
local on_attach = function(_, bufnr)
|
||||||
require("config.lsp.keybinds").init_keymap(bufnr)
|
local nmap = function(keys, func, desc)
|
||||||
|
if desc then
|
||||||
|
desc = 'LSP: ' .. desc
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.keymap.set('n', keys, func, { buffer = bufnr, desc = desc })
|
||||||
|
end
|
||||||
|
|
||||||
|
nmap('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame')
|
||||||
|
nmap('<leader>ca', vim.lsp.buf.code_action, '[C]ode [A]ction')
|
||||||
|
|
||||||
|
nmap('gd', require('telescope.builtin').lsp_definitions, '[G]oto [D]efinition')
|
||||||
|
nmap('gr', require('telescope.builtin').lsp_references, '[G]oto [R]eferences')
|
||||||
|
nmap('gI', require('telescope.builtin').lsp_implementations, '[G]oto [I]mplementation')
|
||||||
|
nmap('<leader>D', require('telescope.builtin').lsp_type_definitions, 'Type [D]efinition')
|
||||||
|
nmap("<leader>i", vim.diagnostic.open_float)
|
||||||
|
|
||||||
|
nmap('<leader>ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols')
|
||||||
|
nmap('<leader>ws', require('telescope.builtin').lsp_dynamic_workspace_symbols, '[W]orkspace [S]ymbols')
|
||||||
|
|
||||||
|
-- See `:help K` for why this keymap
|
||||||
|
nmap('K', vim.lsp.buf.hover, 'Hover Documentation')
|
||||||
|
nmap('<C-k>', vim.lsp.buf.signature_help, 'Signature Documentation')
|
||||||
|
|
||||||
|
-- Lesser used LSP functionality
|
||||||
|
nmap('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration')
|
||||||
|
nmap('<leader>wa', vim.lsp.buf.add_workspace_folder, '[W]orkspace [A]dd Folder')
|
||||||
|
nmap('<leader>wr', vim.lsp.buf.remove_workspace_folder, '[W]orkspace [R]emove Folder')
|
||||||
|
nmap('<leader>wl', function()
|
||||||
|
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
||||||
|
end, '[W]orkspace [L]ist Folders')
|
||||||
|
-- require("config.lsp.keybinds").init_keymap(bufnr)
|
||||||
|
|
||||||
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
|
||||||
vim.lsp.buf.format()
|
vim.lsp.buf.format()
|
||||||
|
@ -15,6 +46,9 @@ local servers = {
|
||||||
clangd = require("config.lsp.clangd"),
|
clangd = require("config.lsp.clangd"),
|
||||||
pyright = require("config.lsp.pyright"),
|
pyright = require("config.lsp.pyright"),
|
||||||
lua_ls = require("config.lsp.lua_ls"),
|
lua_ls = require("config.lsp.lua_ls"),
|
||||||
|
gopls = require("config.lsp.gopls"),
|
||||||
|
rust_analyzer = require("config.lsp.rust_analyzer"),
|
||||||
|
cmake = require("config.lsp.cmake"),
|
||||||
}
|
}
|
||||||
|
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
|
|
@ -1,36 +1 @@
|
||||||
local M = {}
|
return {}
|
||||||
|
|
||||||
function M.init_keymap(bufnr)
|
|
||||||
local nmap = function(keys, func, desc)
|
|
||||||
if desc then
|
|
||||||
desc = 'LSP: ' .. desc
|
|
||||||
end
|
|
||||||
|
|
||||||
vim.keymap.set('n', keys, func, { buffer = bufnr, desc = desc })
|
|
||||||
end
|
|
||||||
|
|
||||||
nmap('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame')
|
|
||||||
nmap('<leader>ca', vim.lsp.buf.code_action, '[C]ode [A]ction')
|
|
||||||
|
|
||||||
nmap('gd', require('telescope.builtin').lsp_definitions, '[G]oto [D]efinition')
|
|
||||||
nmap('gr', require('telescope.builtin').lsp_references, '[G]oto [R]eferences')
|
|
||||||
nmap('gI', require('telescope.builtin').lsp_implementations, '[G]oto [I]mplementation')
|
|
||||||
nmap('<leader>D', require('telescope.builtin').lsp_type_definitions, 'Type [D]efinition')
|
|
||||||
|
|
||||||
nmap('<leader>ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols')
|
|
||||||
nmap('<leader>ws', require('telescope.builtin').lsp_dynamic_workspace_symbols, '[W]orkspace [S]ymbols')
|
|
||||||
|
|
||||||
-- See `:help K` for why this keymap
|
|
||||||
nmap('K', vim.lsp.buf.hover, 'Hover Documentation')
|
|
||||||
nmap('<C-k>', vim.lsp.buf.signature_help, 'Signature Documentation')
|
|
||||||
|
|
||||||
-- Lesser used LSP functionality
|
|
||||||
nmap('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration')
|
|
||||||
nmap('<leader>wa', vim.lsp.buf.add_workspace_folder, '[W]orkspace [A]dd Folder')
|
|
||||||
nmap('<leader>wr', vim.lsp.buf.remove_workspace_folder, '[W]orkspace [R]emove Folder')
|
|
||||||
nmap('<leader>wl', function()
|
|
||||||
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
|
||||||
end, '[W]orkspace [L]ist Folders')
|
|
||||||
end
|
|
||||||
|
|
||||||
return M
|
|
||||||
|
|
1
.config/nvim/lua/config/lsp/rust_analyzer.lua
Normal file
1
.config/nvim/lua/config/lsp/rust_analyzer.lua
Normal file
|
@ -0,0 +1 @@
|
||||||
|
return {}
|
|
@ -2,15 +2,15 @@ local map = vim.keymap.set
|
||||||
|
|
||||||
-- Unbind keys
|
-- Unbind keys
|
||||||
map('n', '<C-q>', '<NOP>')
|
map('n', '<C-q>', '<NOP>')
|
||||||
map('v', 'K', '<NOP>')
|
-- map('v', 'K', '<NOP>')
|
||||||
|
|
||||||
-- Movement between buffers
|
-- Movement between buffers
|
||||||
map({ 'n', 'v', 'i' }, '<A-u>', ':bp<CR>')
|
map({ 'n', 'v' }, '<A-u>', ':bp<CR>', { silent = true })
|
||||||
map({ 'n', 'v', 'i' }, '<A-i>', ':bn<CR>')
|
map({ 'n', 'v' }, '<A-i>', ':bn<CR>', { silent = true })
|
||||||
|
|
||||||
-- Remap for dealing with word wrap
|
-- Remap for dealing with word wrap
|
||||||
map('n', 'k', 'v:count == 0 ? "gk" : "k"', { expr = true, silent = true })
|
map({ 'n', 'v' }, 'k', 'v:count == 0 ? "gk" : "k"', { expr = true, silent = true })
|
||||||
map('n', 'j', 'v:count == 0 ? "gj" : "j"', { expr = true, silent = true })
|
map({ 'n', 'v' }, 'j', 'v:count == 0 ? "gj" : "j"', { expr = true, silent = true })
|
||||||
|
|
||||||
-- Exit buffers/nvim with <leader>
|
-- Exit buffers/nvim with <leader>
|
||||||
map('n', '<leader>q', function() require('utils.close_buffer').close_buffer() end)
|
map('n', '<leader>q', function() require('utils.close_buffer').close_buffer() end)
|
||||||
|
@ -18,6 +18,12 @@ map('n', '<leader>1', function() require('utils.close_buffer').close_buffer(true
|
||||||
map('n', '<leader>Q', ':%bd | quit<CR>')
|
map('n', '<leader>Q', ':%bd | quit<CR>')
|
||||||
map('n', '<leader>!', ':%bd! | quit!<CR>')
|
map('n', '<leader>!', ':%bd! | quit!<CR>')
|
||||||
map('n', '<leader>w', ':write<CR>')
|
map('n', '<leader>w', ':write<CR>')
|
||||||
|
map('n', '<leader>W', function() vim.cmd.write(vim.fn.input("File: ")) end)
|
||||||
|
map('n', '<leader>e', ':e<CR>')
|
||||||
|
|
||||||
|
-- Duplicate leader feats to gradually move to
|
||||||
|
map('n', '<C-q>', function() require('utils.close_buffer').close_buffer() end)
|
||||||
|
map('n', '<C-1>', function() require('utils.close_buffer').close_buffer(true) end)
|
||||||
|
|
||||||
-- Copy and paste from clipboard
|
-- Copy and paste from clipboard
|
||||||
map('n', '<leader>y', '"+yy<ESC>')
|
map('n', '<leader>y', '"+yy<ESC>')
|
||||||
|
@ -25,7 +31,16 @@ map('v', '<leader>y', '"+y<ESC>')
|
||||||
map({ 'n', 'v' }, '<leader>p', '"+p<ESC>')
|
map({ 'n', 'v' }, '<leader>p', '"+p<ESC>')
|
||||||
map({ 'n', 'v' }, '<leader>P', '"+P<ESC>')
|
map({ 'n', 'v' }, '<leader>P', '"+P<ESC>')
|
||||||
|
|
||||||
|
-- buffer size
|
||||||
|
map({ 'n', 'v' }, '<leader>n', '<C-w>10<')
|
||||||
|
map({ 'n', 'v' }, '<leader>m', '<C-w>10>')
|
||||||
|
map({ 'n', 'v' }, '<leader>N', '<C-w>6-')
|
||||||
|
map({ 'n', 'v' }, '<leader>M', '<C-w>6+')
|
||||||
|
|
||||||
-- Remap <M-BS> to remove last word
|
-- Remap <M-BS> to remove last word
|
||||||
map('i', '<M-BS>', '<C-w>')
|
map('i', '<M-BS>', '<C-w>')
|
||||||
|
|
||||||
map('n', '<leader>F', function() vim.lsp.buf.format() end)
|
map('n', '<leader>F', function() vim.lsp.buf.format() end)
|
||||||
|
|
||||||
|
map('n', '<C-M-k>', ':m-2<CR>', { silent = true })
|
||||||
|
map('n', '<C-M-j>', ':m+1<CR>', { silent = true })
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
-- Highlight search results
|
||||||
vim.o.hlsearch = true
|
vim.o.hlsearch = true
|
||||||
|
|
||||||
-- Enable line numbers
|
-- Enable line numbers
|
||||||
|
@ -7,8 +8,12 @@ vim.wo.relativenumber = true
|
||||||
-- Enable mouse mode
|
-- Enable mouse mode
|
||||||
vim.o.mouse = 'a'
|
vim.o.mouse = 'a'
|
||||||
|
|
||||||
-- Enable break indent
|
-- Indentation
|
||||||
vim.o.breakindent = true
|
vim.o.breakindent = true
|
||||||
|
vim.o.tabstop = 4
|
||||||
|
vim.o.shiftwidth = 4
|
||||||
|
vim.o.expandtab = true
|
||||||
|
vim.o.smartindent = false
|
||||||
|
|
||||||
-- Save undo history
|
-- Save undo history
|
||||||
vim.o.undofile = true
|
vim.o.undofile = true
|
||||||
|
|
|
@ -2,7 +2,7 @@ require("cmake-tools").setup {
|
||||||
cmake_command = "cmake", -- this is used to specify cmake command path
|
cmake_command = "cmake", -- this is used to specify cmake command path
|
||||||
cmake_regenerate_on_save = true, -- auto generate when save CMakeLists.txt
|
cmake_regenerate_on_save = true, -- auto generate when save CMakeLists.txt
|
||||||
cmake_generate_options = { "-DCMAKE_EXPORT_COMPILE_COMMANDS=1" }, -- this will be passed when invoke `CMakeGenerate`
|
cmake_generate_options = { "-DCMAKE_EXPORT_COMPILE_COMMANDS=1" }, -- this will be passed when invoke `CMakeGenerate`
|
||||||
cmake_build_options = {}, -- this will be passed when invoke `CMakeBuild`
|
cmake_build_options = { "-j14" }, -- this will be passed when invoke `CMakeBuild`
|
||||||
-- support macro expansion:
|
-- support macro expansion:
|
||||||
-- ${kit}
|
-- ${kit}
|
||||||
-- ${kitGenerator}
|
-- ${kitGenerator}
|
||||||
|
@ -60,16 +60,15 @@ require("cmake-tools").setup {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
cmake_notifications = {
|
cmake_notifications = {
|
||||||
enabled = false, -- show cmake execution progress in nvim-notify
|
enabled = true, -- show cmake execution progress in nvim-notify
|
||||||
spinner = { "⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏" }, -- icons used for progress display
|
spinner = { "⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏" }, -- icons used for progress display
|
||||||
refresh_rate_ms = 100, -- how often to iterate icons
|
refresh_rate_ms = 100, -- how often to iterate icons
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
local map = vim.keymap.set
|
|
||||||
|
|
||||||
-- Mappings
|
-- Mappings
|
||||||
map('n', '<leader>b', ':CMakeBuild<CR>')
|
vim.keymap.set('n', '<leader>b', ':CMakeBuild<CR>')
|
||||||
map('n', '<leader>c', ':CMakeClose<CR>')
|
vim.keymap.set('n', '<leader>c', ':CMakeClose<CR>')
|
||||||
map('n', '<leader>r', ':CMakeRun<CR>')
|
vim.keymap.set('n', '<leader>r', ':CMakeRun<CR>')
|
||||||
|
vim.keymap.set('n', '<leader>G', ':CMakeGenerate<CR>')
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
local map = vim.keymap.set
|
local map = vim.keymap.set
|
||||||
|
|
||||||
map('n', '<C-_>', require('Comment.api').toggle.linewise.current)
|
map({ 'n', 'i' }, '<C-_>', require('Comment.api').toggle.linewise.current)
|
||||||
map('i', '<C-_>', require('Comment.api').toggle.linewise.current)
|
|
||||||
map('x', '<C-_>', function()
|
map('v', '<C-_>', function()
|
||||||
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes('<ESC>', true, false, true), 'nx', false)
|
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes('<ESC>', true, false, true), 'nx', false)
|
||||||
require('Comment.api').toggle.linewise(vim.fn.visualmode())
|
require('Comment.api').toggle.linewise(vim.fn.visualmode())
|
||||||
end
|
end
|
||||||
|
|
|
@ -7,3 +7,4 @@ require('config.plugins.nvim-tree')
|
||||||
require('config.plugins.telescope')
|
require('config.plugins.telescope')
|
||||||
require('config.plugins.treesitter')
|
require('config.plugins.treesitter')
|
||||||
require('config.plugins.navigator')
|
require('config.plugins.navigator')
|
||||||
|
require('config.plugins.trouble')
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
require('nvim-autopairs').setup({
|
require('nvim-autopairs').setup({
|
||||||
disable_filetype = { "TelescopePrompt" , "vim" },
|
disable_filetype = { "TelescopePrompt" , "vim" },
|
||||||
enable_check_bracket_line = false,
|
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,6 +1,15 @@
|
||||||
vim.g.loaded_netrw = 1
|
vim.g.loaded_netrw = 1
|
||||||
vim.g.loaded_netrwPlugin = 1
|
vim.g.loaded_netrwPlugin = 1
|
||||||
|
|
||||||
require("nvim-tree").setup()
|
require("nvim-tree").setup({
|
||||||
|
update_focused_file = {
|
||||||
|
enable = true,
|
||||||
|
update_root = false,
|
||||||
|
ignore_list = { "help" },
|
||||||
|
},
|
||||||
|
filters = {
|
||||||
|
custom = { '.git' },
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
vim.keymap.set('n', '<C-b>', ':NvimTreeToggle<CR>')
|
vim.keymap.set('n', '<C-m>', ':NvimTreeToggle<CR>', { silent=true })
|
||||||
|
|
|
@ -9,18 +9,15 @@ require('telescope').setup {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
-- Enable telescope fzf native, if installed
|
|
||||||
pcall(require('telescope').load_extension, 'fzf')
|
pcall(require('telescope').load_extension, 'fzf')
|
||||||
|
|
||||||
-- See `:help telescope.builtin`
|
|
||||||
vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' })
|
vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' })
|
||||||
-- vim.keymap.set('n', '<leader><space>', require('telescope.builtin').buffers, { desc = '[ ] Find existing buffers' })
|
|
||||||
vim.keymap.set('n', '<leader>/', function()
|
vim.keymap.set('n', '<leader>/', function()
|
||||||
-- You can pass additional configuration to telescope to change theme, layout, etc.
|
|
||||||
require('telescope.builtin').current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
|
require('telescope.builtin').current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
|
||||||
winblend = 10,
|
winblend = 10,
|
||||||
previewer = false,
|
previewer = false,
|
||||||
})
|
})
|
||||||
|
|
||||||
end, { desc = '[/] Fuzzily search in current buffer' })
|
end, { desc = '[/] Fuzzily search in current buffer' })
|
||||||
|
|
||||||
vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
|
vim.keymap.set('n', '<leader>gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' })
|
||||||
|
@ -30,3 +27,4 @@ vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { de
|
||||||
vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
|
vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' })
|
||||||
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })
|
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' })
|
||||||
vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' })
|
vim.keymap.set('n', '<leader>sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' })
|
||||||
|
vim.keymap.set('n', '<leader>sm', require('telescope.builtin').treesitter)
|
||||||
|
|
|
@ -4,7 +4,7 @@ vim.defer_fn(function()
|
||||||
ensure_installed = { 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'tsx', 'javascript', 'typescript', 'vimdoc', 'vim', 'bash' },
|
ensure_installed = { 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'tsx', 'javascript', 'typescript', 'vimdoc', 'vim', 'bash' },
|
||||||
|
|
||||||
-- Autoinstall languages that are not installed. Defaults to false (but you can change for yourself!)
|
-- Autoinstall languages that are not installed. Defaults to false (but you can change for yourself!)
|
||||||
auto_install = false,
|
auto_install = true,
|
||||||
|
|
||||||
highlight = { enable = true },
|
highlight = { enable = true },
|
||||||
indent = { enable = true },
|
indent = { enable = true },
|
||||||
|
@ -51,15 +51,7 @@ vim.defer_fn(function()
|
||||||
['[]'] = '@class.outer',
|
['[]'] = '@class.outer',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
swap = {
|
swap = { enable = false, },
|
||||||
enable = true,
|
|
||||||
swap_next = {
|
|
||||||
['<leader>a'] = '@parameter.inner',
|
|
||||||
},
|
|
||||||
swap_previous = {
|
|
||||||
['<leader>A'] = '@parameter.inner',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
end, 0)
|
end, 0)
|
||||||
|
|
6
.config/nvim/lua/config/plugins/trouble.lua
Normal file
6
.config/nvim/lua/config/plugins/trouble.lua
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
vim.keymap.set("n", "<leader>xx", function() require("trouble").toggle() end)
|
||||||
|
vim.keymap.set("n", "<leader>xw", function() require("trouble").toggle("workspace_diagnostics") end)
|
||||||
|
vim.keymap.set("n", "<leader>xd", function() require("trouble").toggle("document_diagnostics") end)
|
||||||
|
vim.keymap.set("n", "<leader>xq", function() require("trouble").toggle("quickfix") end)
|
||||||
|
vim.keymap.set("n", "<leader>xl", function() require("trouble").toggle("loclist") end)
|
||||||
|
vim.keymap.set("n", "gR", function() require("trouble").toggle("lsp_references") end)
|
|
@ -1,8 +1,5 @@
|
||||||
return {
|
return {
|
||||||
-- Add indentation guides even on blank lines
|
|
||||||
'lukas-reineke/indent-blankline.nvim',
|
'lukas-reineke/indent-blankline.nvim',
|
||||||
-- Enable `lukas-reineke/indent-blankline.nvim`
|
|
||||||
-- See `:help ibl`
|
|
||||||
main = 'ibl',
|
main = 'ibl',
|
||||||
opts = {},
|
opts = {},
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,17 +1,19 @@
|
||||||
return {
|
return {
|
||||||
|
'Civitasv/cmake-tools.nvim',
|
||||||
|
'averms/black-nvim',
|
||||||
'numToStr/Navigator.nvim',
|
'numToStr/Navigator.nvim',
|
||||||
|
'nvim-lualine/lualine.nvim',
|
||||||
|
'nvim-tree/nvim-tree.lua',
|
||||||
|
'nvim-tree/nvim-web-devicons',
|
||||||
|
'rcarriga/nvim-notify',
|
||||||
|
'tmux-plugins/vim-tmux',
|
||||||
'tpope/vim-fugitive',
|
'tpope/vim-fugitive',
|
||||||
'tpope/vim-rhubarb',
|
'tpope/vim-rhubarb',
|
||||||
'tpope/vim-sleuth',
|
'tpope/vim-sleuth',
|
||||||
'tpope/vim-surround',
|
'tpope/vim-surround',
|
||||||
'tmux-plugins/vim-tmux',
|
|
||||||
'nvim-lualine/lualine.nvim',
|
|
||||||
'nvim-tree/nvim-tree.lua',
|
|
||||||
'nvim-tree/nvim-web-devicons',
|
|
||||||
'Civitasv/cmake-tools.nvim',
|
|
||||||
'rcarriga/nvim-notify',
|
|
||||||
{ 'numToStr/Comment.nvim', opts = {} },
|
|
||||||
{ 'akinsho/bufferline.nvim', config = {} },
|
{ 'akinsho/bufferline.nvim', config = {} },
|
||||||
{ 'ethanholz/nvim-lastplace', config = {} },
|
{ 'ethanholz/nvim-lastplace', config = {} },
|
||||||
{ 'wakatime/vim-wakatime', event = 'VeryLazy' },
|
{ 'numToStr/Comment.nvim', opts = {} },
|
||||||
|
-- { 'wakatime/vim-wakatime', event = 'VeryLazy' },
|
||||||
|
{ "folke/trouble.nvim", dependencies = { "nvim-tree/nvim-web-devicons" }, opts = { }, }
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,9 +3,6 @@ return {
|
||||||
branch = '0.1.x',
|
branch = '0.1.x',
|
||||||
dependencies = {
|
dependencies = {
|
||||||
'nvim-lua/plenary.nvim',
|
'nvim-lua/plenary.nvim',
|
||||||
{
|
{ 'nvim-telescope/telescope-fzf-native.nvim', build = 'make', },
|
||||||
'nvim-telescope/telescope-fzf-native.nvim',
|
|
||||||
build = 'make',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,3 @@
|
||||||
-- return {
|
|
||||||
-- 'aserowy/tmux.nvim',
|
|
||||||
-- event = "VeryLazy",
|
|
||||||
-- }
|
|
||||||
return {
|
return {
|
||||||
"numToStr/Navigator.nvim",
|
"numToStr/Navigator.nvim",
|
||||||
}
|
}
|
||||||
|
|
2
.config/picom.conf
Normal file
2
.config/picom.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
backend = "glx";
|
||||||
|
vsync = true;
|
54
.config/taskell/bindings.ini
Normal file
54
.config/taskell/bindings.ini
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
# general
|
||||||
|
quit = q
|
||||||
|
undo = u
|
||||||
|
redo = r
|
||||||
|
search = /
|
||||||
|
help = ?
|
||||||
|
due = !
|
||||||
|
|
||||||
|
# navigation
|
||||||
|
previous = k
|
||||||
|
next = j
|
||||||
|
left = h
|
||||||
|
right = l
|
||||||
|
bottom = G
|
||||||
|
top = g
|
||||||
|
|
||||||
|
# new tasks
|
||||||
|
new = a
|
||||||
|
newAbove = O
|
||||||
|
newBelow = o
|
||||||
|
duplicate = +
|
||||||
|
|
||||||
|
# editing tasks
|
||||||
|
edit = e, A, i
|
||||||
|
clear = C
|
||||||
|
delete = D
|
||||||
|
detail = <Enter>
|
||||||
|
dueDate = @
|
||||||
|
clearDate = <Backspace>
|
||||||
|
|
||||||
|
# moving tasks
|
||||||
|
moveUp = K
|
||||||
|
moveDown = J
|
||||||
|
# move to top of previous list
|
||||||
|
moveLeftTop = ˙
|
||||||
|
# move to top of next list
|
||||||
|
moveRightTop = ¬
|
||||||
|
# move to bottom of previous list
|
||||||
|
moveLeftBottom = H
|
||||||
|
# move to bottom of next list
|
||||||
|
moveRightBottom = L
|
||||||
|
# move to bottom of last list
|
||||||
|
complete = <Space>
|
||||||
|
# move to top of last list
|
||||||
|
completeToTop = T
|
||||||
|
# select a list to move to
|
||||||
|
moveMenu = m
|
||||||
|
|
||||||
|
# lists
|
||||||
|
listNew = N
|
||||||
|
listEdit = E
|
||||||
|
listDelete = X
|
||||||
|
listRight = >
|
||||||
|
listLeft = <
|
17
.config/taskell/config.ini
Normal file
17
.config/taskell/config.ini
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
[general]
|
||||||
|
filename = TASKS.md
|
||||||
|
|
||||||
|
[layout]
|
||||||
|
padding = 1
|
||||||
|
column_width = 30
|
||||||
|
column_padding = 3
|
||||||
|
description_indicator = "≡"
|
||||||
|
statusbar = false
|
||||||
|
|
||||||
|
[markdown]
|
||||||
|
title = "##"
|
||||||
|
task = "-"
|
||||||
|
summary = " >"
|
||||||
|
due = " @"
|
||||||
|
subtask = " *"
|
||||||
|
localTimes = false
|
8
.config/taskell/template.md
Normal file
8
.config/taskell/template.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
## To Do
|
||||||
|
|
||||||
|
|
||||||
|
## Doing
|
||||||
|
|
||||||
|
|
||||||
|
## Done
|
||||||
|
|
25
.config/taskell/theme.ini
Normal file
25
.config/taskell/theme.ini
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
[other]
|
||||||
|
|
||||||
|
; list title
|
||||||
|
title.fg = green
|
||||||
|
|
||||||
|
; status bar
|
||||||
|
statusBar.bg = blue
|
||||||
|
statusBar.fg = black
|
||||||
|
|
||||||
|
; current list title
|
||||||
|
titleCurrent.fg = blue
|
||||||
|
|
||||||
|
; current task
|
||||||
|
taskCurrent.fg = magenta
|
||||||
|
|
||||||
|
; subtasks
|
||||||
|
; selected
|
||||||
|
subtaskCurrent.fg = magenta
|
||||||
|
; incomplete
|
||||||
|
subtaskIncomplete.fg = blue
|
||||||
|
; complete
|
||||||
|
subtaskComplete.fg = yellow
|
||||||
|
|
||||||
|
; disabled
|
||||||
|
disabled.fg = yellow
|
|
@ -10,8 +10,8 @@ bind i next-window
|
||||||
|
|
||||||
bind n new-window -c "#{pane_current_path}"
|
bind n new-window -c "#{pane_current_path}"
|
||||||
|
|
||||||
bind k split-window -v
|
bind k split-window -v -c "#{pane_current_path}"
|
||||||
bind l split-window -h
|
bind l split-window -h -c "#{pane_current_path}"
|
||||||
|
|
||||||
# Rebind command key to ;
|
# Rebind command key to ;
|
||||||
bind \; command-prompt
|
bind \; command-prompt
|
||||||
|
|
|
@ -15,7 +15,9 @@ set -g @batt_icon_charge_tier1 '! !'
|
||||||
# Change date and time format
|
# Change date and time format
|
||||||
set -g @onedark_time_format "%I:%M %p"
|
set -g @onedark_time_format "%I:%M %p"
|
||||||
set -g @onedark_date_format "%D"
|
set -g @onedark_date_format "%D"
|
||||||
set -g @onedark_widgets "#{battery_icon_charge} #{battery_percentage}%"
|
set -g @onedark_widgets "#{battery_icon_charge} #{battery_percentage}"
|
||||||
|
|
||||||
|
set-environment -g TMUX_PLUGIN_MANAGER_PATH '~/.local/share/tmux-plugins'
|
||||||
|
|
||||||
# Run tmux-plugin-manager
|
# Run tmux-plugin-manager
|
||||||
run '~/.local/share/tmux-plugins/tpm/tpm'
|
run '~/.local/share/tmux-plugins/tpm/tpm'
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
setw -g mouse on
|
setw -g mouse on
|
||||||
|
|
||||||
# Enable 256 color mode and TrueColor
|
# Enable 256 color mode and TrueColor
|
||||||
set -s default-terminal "tmux-256color"
|
set -g default-terminal "tmux-256color"
|
||||||
set -as terminal-overrides ",xterm*:Tc"
|
set -ag terminal-overrides ",xterm-256color:RGB"
|
||||||
|
|
||||||
# Get rid of nvim escape delay
|
# Get rid of nvim escape delay
|
||||||
set -s escape-time 0
|
set -s escape-time 0
|
||||||
|
|
2104
.config/zsh/.zcompdump
Normal file
2104
.config/zsh/.zcompdump
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,3 +1,4 @@
|
||||||
# if [ -z "$SSH_AUTH_SOCK" ]; then
|
# if [ -z "$SSH_AUTH_SOCK" ]; then
|
||||||
# eval "$(ssh-agent -s)"
|
# eval "$(ssh-agent -s)"
|
||||||
# fi
|
# fi
|
||||||
|
systemctl --user import-environment XDG_CURRENT_DESKTOP
|
||||||
|
|
|
@ -1,12 +1,8 @@
|
||||||
# unused for now
|
set -a
|
||||||
|
|
||||||
export PATH="${$(find ~/.local/bin -type d -printf %p:)%%:}:$PATH"
|
export PATH="${$(find ~/.local/bin -type d -printf %p:)%%:}:$PATH"
|
||||||
|
#
|
||||||
# default apps
|
# lc vars
|
||||||
export EDITOR="/usr/bin/nvim"
|
|
||||||
export GPG_TTY=$(tty)
|
|
||||||
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
|
|
||||||
export MANROFFOPT="-c"
|
|
||||||
|
|
||||||
export LANG="en_US.UTF-8"
|
export LANG="en_US.UTF-8"
|
||||||
export LC_CTYPE="en_US.UTF-8"
|
export LC_CTYPE="en_US.UTF-8"
|
||||||
export LC_NUMERIC="en_US.UTF-8"
|
export LC_NUMERIC="en_US.UTF-8"
|
||||||
|
@ -21,3 +17,18 @@ export LC_TELEPHONE="en_US.UTF-8"
|
||||||
export LC_MEASUREMENT="en_US.UTF-8"
|
export LC_MEASUREMENT="en_US.UTF-8"
|
||||||
export LC_IDENTIFICATION="en_US.UTF-8"
|
export LC_IDENTIFICATION="en_US.UTF-8"
|
||||||
export LC_ALL="en_US.UTF-8"
|
export LC_ALL="en_US.UTF-8"
|
||||||
|
|
||||||
|
# default apps
|
||||||
|
export EDITOR="/usr/bin/nvim"
|
||||||
|
export GPG_TTY="$(tty)"
|
||||||
|
export MANPAGER="sh -c 'col -bx | batcat -l man -p'"
|
||||||
|
export MANROFFOPT="-c"
|
||||||
|
export MTR_OPTIONS="-t"
|
||||||
|
|
||||||
|
export XDG_CURRENT_DESKTOP="gtk"
|
||||||
|
export XDG_SESSION_DESKTOP="$XDG_CURRENT_DESKTOP"
|
||||||
|
export WINDOW_MANAGER="dwm"
|
||||||
|
|
||||||
|
export SUDO_ASKPASS="${HOME}/.local/bin/scripts/dmenu_askpass"
|
||||||
|
|
||||||
|
set +a
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
[[ $- != *i* ]] && return
|
||||||
|
|
||||||
# ls colors
|
# ls colors
|
||||||
eval "$(dircolors -b)"
|
eval "$(dircolors -b)"
|
||||||
|
|
||||||
|
@ -5,6 +7,7 @@ eval "$(dircolors -b)"
|
||||||
HISTSIZE=10000000
|
HISTSIZE=10000000
|
||||||
SAVEHIST=10000000
|
SAVEHIST=10000000
|
||||||
HISTFILE="${HOME}/.cache/zsh_history"
|
HISTFILE="${HOME}/.cache/zsh_history"
|
||||||
|
|
||||||
setopt hist_expire_dups_first
|
setopt hist_expire_dups_first
|
||||||
setopt hist_ignore_dups
|
setopt hist_ignore_dups
|
||||||
setopt hist_ignore_all_dups
|
setopt hist_ignore_all_dups
|
||||||
|
@ -29,18 +32,12 @@ bindkey "^[[1;3D" backward-word
|
||||||
bindkey "^[[1;5D" backward-word
|
bindkey "^[[1;5D" backward-word
|
||||||
|
|
||||||
|
|
||||||
bindkey "^[^H" backward-word
|
bindkey "^[n" backward-word
|
||||||
bindkey "^[^L" forward-word
|
bindkey "^[m" forward-word
|
||||||
bindkey "^[h" backward-char
|
|
||||||
bindkey "^[f" forward-char
|
|
||||||
|
|
||||||
# completions
|
# completions
|
||||||
autoload -Uz compinit
|
autoload -Uz compinit
|
||||||
if [[ -n ${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then
|
compinit
|
||||||
compinit;
|
|
||||||
else
|
|
||||||
compinit -C;
|
|
||||||
fi;
|
|
||||||
|
|
||||||
zstyle ':completion:*' menu select
|
zstyle ':completion:*' menu select
|
||||||
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
|
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'
|
||||||
|
@ -58,17 +55,43 @@ alias ll="ls -lh"
|
||||||
alias tree="ls --tree"
|
alias tree="ls --tree"
|
||||||
|
|
||||||
# set bat as help pager
|
# set bat as help pager
|
||||||
alias -g -- -h='-h 2>&1 | bat --language=help --style=plain'
|
alias -g -- --help='--help 2>&1 | batcat --language=help --style=plain'
|
||||||
alias -g -- --help='--help 2>&1 | bat --language=help --style=plain'
|
|
||||||
|
|
||||||
# useful cd aliases
|
# useful cd aliases
|
||||||
alias ..="cd .."
|
alias ..="cd ../"
|
||||||
alias ...="cd ../.."
|
alias ...="cd ../../"
|
||||||
alias ....="cd ../../../"
|
alias ....="cd ../../../"
|
||||||
|
alias .....="cd ../../../../"
|
||||||
|
alias ......="cd ../../../../../"
|
||||||
|
alias .......="cd ../../../../../../"
|
||||||
|
|
||||||
# aliases
|
# aliases
|
||||||
alias dt="git --git-dir=$HOME/.dotfiles/git --work-tree=$HOME"
|
|
||||||
alias rz="exec zsh"
|
alias rz="exec zsh"
|
||||||
alias reload_completion="autoload -Uz compinit && compinit"
|
|
||||||
alias gitignore="cp ${HOME}/.local/share/gitignore-template ./.gitignore"
|
|
||||||
alias venv="source _venv"
|
alias venv="source _venv"
|
||||||
|
alias cdb="compiledb "
|
||||||
|
alias info="pinfo "
|
||||||
|
alias bat="batcat "
|
||||||
|
alias img="nsxiv "
|
||||||
|
alias xclip="xclip -selection clipboard"
|
||||||
|
alias d="diff --color -u "
|
||||||
|
|
||||||
|
# function aliases
|
||||||
|
bl () { brightnessctl set $1% &> /dev/null }
|
||||||
|
clines() { find $@ \( -name '*.cpp' -o -name '*.[ch]' \) -a ! -path '*cmake-build*' | xargs wc -l }
|
||||||
|
nosw() { alacritty --class 'noswallow' -e "$@" }; compdef _command nosw
|
||||||
|
t() { if [ -z "$1" ]; then taskell ~/.taskell.md; else taskell "$1"; fi }
|
||||||
|
|
||||||
|
# git aliases
|
||||||
|
alias gitignore="cp ${HOME}/.local/share/gitignore-template ./.gitignore"
|
||||||
|
alias gs="git status"
|
||||||
|
alias gc="git commit"
|
||||||
|
alias gp="git push"
|
||||||
|
alias gl="git log"
|
||||||
|
alias ga="git add"
|
||||||
|
alias gck="git checkout"
|
||||||
|
alias gb="git branch"
|
||||||
|
alias gd="git diff"
|
||||||
|
alias gr="git restore"
|
||||||
|
|
||||||
|
# disable xon controll chars
|
||||||
|
stty -ixon
|
||||||
|
|
BIN
.fonts/MononokiNerdFont-Bold.ttf
Normal file
BIN
.fonts/MononokiNerdFont-Bold.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFont-BoldItalic.ttf
Normal file
BIN
.fonts/MononokiNerdFont-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFont-Italic.ttf
Normal file
BIN
.fonts/MononokiNerdFont-Italic.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFont-Regular.ttf
Normal file
BIN
.fonts/MononokiNerdFont-Regular.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontMono-Bold.ttf
Normal file
BIN
.fonts/MononokiNerdFontMono-Bold.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontMono-BoldItalic.ttf
Normal file
BIN
.fonts/MononokiNerdFontMono-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontMono-Italic.ttf
Normal file
BIN
.fonts/MononokiNerdFontMono-Italic.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontMono-Regular.ttf
Normal file
BIN
.fonts/MononokiNerdFontMono-Regular.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontPropo-Bold.ttf
Normal file
BIN
.fonts/MononokiNerdFontPropo-Bold.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontPropo-BoldItalic.ttf
Normal file
BIN
.fonts/MononokiNerdFontPropo-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontPropo-Italic.ttf
Normal file
BIN
.fonts/MononokiNerdFontPropo-Italic.ttf
Normal file
Binary file not shown.
BIN
.fonts/MononokiNerdFontPropo-Regular.ttf
Normal file
BIN
.fonts/MononokiNerdFontPropo-Regular.ttf
Normal file
Binary file not shown.
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -1,3 +0,0 @@
|
||||||
# lazy.nvim lockfile
|
|
||||||
.config/tmux/plugins/
|
|
||||||
.zcompdump
|
|
3
.gitmodules
vendored
3
.gitmodules
vendored
|
@ -1,3 +0,0 @@
|
||||||
[submodule ".local/share/tmux-plugins/tpm"]
|
|
||||||
path = .local/share/tmux-plugins/tpm
|
|
||||||
url = https://github.com/tmux-plugins/tpm
|
|
19
.gtkrc-2.0
Normal file
19
.gtkrc-2.0
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# DO NOT EDIT! This file will be overwritten by LXAppearance.
|
||||||
|
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
|
||||||
|
|
||||||
|
# include "~/.gtkrc-2.0.mine"
|
||||||
|
gtk-theme-name="Yaru-dark"
|
||||||
|
gtk-icon-theme-name="Yaru-dark"
|
||||||
|
gtk-font-name="Sans 10"
|
||||||
|
gtk-cursor-theme-name="Breeze"
|
||||||
|
gtk-cursor-theme-size=24
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_TEXT
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=0
|
||||||
|
gtk-menu-images=1
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=1
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle="hintfull"
|
||||||
|
gtk-xft-rgba="rgb"
|
|
@ -1,8 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
|
|
||||||
read -p "Date: " date
|
|
||||||
export GIT_AUTHOR_DATE="${date}"
|
|
||||||
export GIT_COMMITTER_DATE="${date}"
|
|
||||||
|
|
||||||
git $@
|
|
72
.local/scripts/_venv
Normal file
72
.local/scripts/_venv
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
VENV_FOLDER=".venv"
|
||||||
|
OPERATION=c
|
||||||
|
|
||||||
|
deactivate_() {
|
||||||
|
if [ ! -z "${VIRTUAL_ENV}" ]; then
|
||||||
|
deactivate
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
create_or_activate() {
|
||||||
|
if [ -z "${VIRTUAL_ENV}" ]; then
|
||||||
|
if [ -d "${VENV_FOLDER}" ]; then
|
||||||
|
source ./${VENV_FOLDER}/bin/activate
|
||||||
|
else
|
||||||
|
python3 -m venv "${VENV_FOLDER}"
|
||||||
|
source ./${VENV_FOLDER}/bin/activate
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
deactivate
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
remove() {
|
||||||
|
deactivate_
|
||||||
|
if [ -d "${VENV_FOLDER}" ]; then
|
||||||
|
rm -r "${VENV_FOLDER}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
while [ "$#" -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
'-c'|"--create")
|
||||||
|
OPERATION=c
|
||||||
|
;;
|
||||||
|
|
||||||
|
'-r'|"--remove")
|
||||||
|
OPERATION=r
|
||||||
|
;;
|
||||||
|
|
||||||
|
'-d'|"--deactivate")
|
||||||
|
deactivate_
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
|
||||||
|
'-h'|"--help")
|
||||||
|
echo "venv [OPTION] [VENV_FOLDER]"
|
||||||
|
echo
|
||||||
|
echo "ARGUMENTS:"
|
||||||
|
echo "\t VENV_FOLDER \t\t Folder containing virtual environment"
|
||||||
|
echo
|
||||||
|
echo "OPTIONS:"
|
||||||
|
echo "\t -c, --create \t\t Create virtual environment"
|
||||||
|
echo "\t -d, --deactivate \t Exit virtual environment"
|
||||||
|
echo "\t -r, --remove \t\t Deactivate and remove virtual environment"
|
||||||
|
echo "\t -h, --help \t\t Print this message"
|
||||||
|
return
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
VENV_FOLDER="$1"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
case "${OPERATION}" in
|
||||||
|
c) create_or_activate;;
|
||||||
|
r) remove;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# vim: set ft=sh
|
45
.local/scripts/cast
Executable file
45
.local/scripts/cast
Executable file
|
@ -0,0 +1,45 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
PIDFILE="${XDG_RUNTIME_DIR}/mkchromecast.pid"
|
||||||
|
|
||||||
|
WIDTH=1440
|
||||||
|
HEIGHT=1080
|
||||||
|
ASPECT_OFFSET=240
|
||||||
|
OUTPUT_NAME='DVI-I-1-1'
|
||||||
|
|
||||||
|
command() {
|
||||||
|
echo "ffmpeg -ac 2 -ar 44100 -frame_size 2048 -fragment_size 2048 -f pulse -ac 2 -i Mkchromecast.monitor -f x11grab -r 30 -s ${WIDTH}x${HEIGHT} -i :0.0+$1,0 -vcodec libx264 -preset veryfast -tune zerolatency -maxrate 10000k -bufsize 20000k -pix_fmt yuv420p -g 60 -f mp4 -vf scale=1280:720 -movflags frag_keyframe+empty_moov -ar 44100 -acodec libvorbis pipe:1"
|
||||||
|
}
|
||||||
|
|
||||||
|
set -x
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
xrandr --output DVI-I-1-1 --off
|
||||||
|
pid="$(cat ${PIDFILE})"
|
||||||
|
rm "${PIDFILE}"
|
||||||
|
pkill -35 dwmblocks
|
||||||
|
kill -INT "${pid}"
|
||||||
|
}
|
||||||
|
|
||||||
|
run() {
|
||||||
|
xrandr --setprovideroutputsource 1 0
|
||||||
|
xrandr --addmode DVI-I-1-1 1920x1080
|
||||||
|
xrandr --output ${OUTPUT_NAME} --mode 1920x1080 --rate 60 --right-of eDP-1
|
||||||
|
|
||||||
|
echo $$ > "${PIDFILE}"
|
||||||
|
pkill -35 dwmblocks
|
||||||
|
offset=$(( "$(xrandr | grep DVI | cut -d ' ' -f 3 | cut -d '+' -f 2)" + ${ASPECT_OFFSET} ))
|
||||||
|
systemd-inhibit --what=handle-lid-switch sleep 2592000 &
|
||||||
|
exec mkchromecast --video --command "$(command ${offset})"
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ "$1" = "-k" ]; then
|
||||||
|
cleanup
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "${PIDFILE}" ]; then
|
||||||
|
cleanup || run
|
||||||
|
else
|
||||||
|
run
|
||||||
|
fi
|
3
.local/scripts/dmenu_askpass
Executable file
3
.local/scripts/dmenu_askpass
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo $(dmenu -p "$1" -nf '#3a3a3a' <&-)
|
34
.local/scripts/dual_monitor
Executable file
34
.local/scripts/dual_monitor
Executable file
|
@ -0,0 +1,34 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
MODELINE=$(cvt 4120 1440 144 | tail -1 | cut -d " " -f 2- | tr -d '"')
|
||||||
|
RES="$(echo $MODELINE | cut -d ' ' -f 1 | tr -d '\"')"
|
||||||
|
OUTPUT="DVI-I-1-1"
|
||||||
|
|
||||||
|
create() {
|
||||||
|
xrandr --newmode $(echo $MODELINE)
|
||||||
|
xrandr --addmode ${OUTPUT} "${RES}"
|
||||||
|
xrandr --output ${OUTPUT} --mode "${RES}"
|
||||||
|
}
|
||||||
|
|
||||||
|
remove() {
|
||||||
|
xrandr --output ${OUTPUT} --off
|
||||||
|
xrandr --delmode ${OUTPUT} "${RES}"
|
||||||
|
xrandr --rmmode "${RES}"
|
||||||
|
}
|
||||||
|
|
||||||
|
create_or_remove() {
|
||||||
|
if [ ! -z "$(xrandr | grep ${RES} | grep '*')" ]; then
|
||||||
|
remove
|
||||||
|
else
|
||||||
|
create
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
'-c'|'--create') create
|
||||||
|
;;
|
||||||
|
'-d'|'--delete') remove
|
||||||
|
;;
|
||||||
|
*) create_or_remove
|
||||||
|
;;
|
||||||
|
esac
|
14
.local/scripts/gdt
Executable file
14
.local/scripts/gdt
Executable file
|
@ -0,0 +1,14 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ ! -d .git ]; then
|
||||||
|
echo "missing .git dir!"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Last commit: $(git log | grep 'Date' | cut -d ' ' -f 4- | head -1)"
|
||||||
|
read -p "Date: " date
|
||||||
|
|
||||||
|
export GIT_AUTHOR_DATE="${date}"
|
||||||
|
export GIT_COMMITTER_DATE="${date}"
|
||||||
|
|
||||||
|
git "$@"
|
44
.local/scripts/vpn
Executable file
44
.local/scripts/vpn
Executable file
|
@ -0,0 +1,44 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
IFNAME="wg_swe"
|
||||||
|
|
||||||
|
while [ "$#" -gt 0 ]; do
|
||||||
|
case "$1" in
|
||||||
|
'd'|'-d'|'--dpi') DPI="_d"
|
||||||
|
;;
|
||||||
|
'm'|'msk') IFNAME='wg_msk'
|
||||||
|
;;
|
||||||
|
'-v'|'--verbose') VERBOSE=1
|
||||||
|
;;
|
||||||
|
'--visual') USE_TERMINAL=1
|
||||||
|
;;
|
||||||
|
*) echo "Wrong argument!"; exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
shift
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ -z "${VERBOSE}" ]; then
|
||||||
|
exec &>/dev/null
|
||||||
|
else
|
||||||
|
set -x
|
||||||
|
fi
|
||||||
|
|
||||||
|
UP_NAME="$(ip link show | grep 'wg' | cut -d ' ' -f 2 | sed 's/://')"
|
||||||
|
|
||||||
|
sudo_a() {
|
||||||
|
dmenu -p "$1" <&-
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ ! -z "${USE_TERMINAL}" ]; then
|
||||||
|
LAUNCH_CMD=(sudo -A -p "Password:")
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${UP_NAME}" ]; then
|
||||||
|
IFNAME="${IFNAME}${DPI}"
|
||||||
|
${LAUNCH_CMD[@]} wg-quick up ${IFNAME}
|
||||||
|
else
|
||||||
|
${LAUNCH_CMD[@]} wg-quick down ${UP_NAME}
|
||||||
|
fi
|
||||||
|
|
||||||
|
pkill -36 dwmblocks
|
39
.local/scripts/xr
Executable file
39
.local/scripts/xr
Executable file
|
@ -0,0 +1,39 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# supress stderr
|
||||||
|
exec 2> /dev/null
|
||||||
|
|
||||||
|
change_dpi() {
|
||||||
|
sed -i -E "s/Xft\.dpi: .*?/Xft\.dpi: $1/g" ~/.Xresources
|
||||||
|
sed -i -E "s/Xcursor\.size: .*?/Xcursor\.size: $2/g" ~/.Xresources
|
||||||
|
|
||||||
|
sed -i -E "s/gtk-cursor-theme-size=.*?/gtk-cursor-theme-size=$2/g" ~/.config/gtk-3.0/settings.ini
|
||||||
|
|
||||||
|
sed -i -E "s/gtk-cursor-theme-size=.*?/gtk-cursor-theme-size=$2/g" ~/.gtkrc-2.0
|
||||||
|
|
||||||
|
echo "Xft/DPI $(expr $1 \* 1024)" > ~/.xsettingsd
|
||||||
|
echo "Gtk/CursorThemeSize $2" >> ~/.xsettingsd
|
||||||
|
|
||||||
|
xrdb -merge ~/.Xresources
|
||||||
|
killall -HUP dwm
|
||||||
|
killall -HUP xsettingsd
|
||||||
|
}
|
||||||
|
|
||||||
|
EXT_MON="$(xrandr | grep -ow "\(DP-[0-9]\) connected" | cut -d " " -f 1)"
|
||||||
|
INT_MODELINE=$(cvt 1560 1040 90 | grep "Modeline" | cut -d " " -f 2- | tr -d '"')
|
||||||
|
INT_RES="$(echo $INT_MODELINE | cut -d ' ' -f 1 | tr -d '\"')"
|
||||||
|
|
||||||
|
if [[ -z "${EXT_MON}" ]]; then
|
||||||
|
xrandr --delmode eDP-1 "${INT_RES}"
|
||||||
|
xrandr --rmmode "${INT_RES}"
|
||||||
|
xrandr --output eDP-1 --pos 0x0 --mode "3120x2080" --rate 90 --primary --output DP-1 --off --output DP-2 --off --output DP-3 --off --output DP-4 --off
|
||||||
|
change_dpi 192 48
|
||||||
|
else
|
||||||
|
xrandr --rmmode "${INT_RES}"
|
||||||
|
xrandr --newmode $(echo $INT_MODELINE)
|
||||||
|
xrandr --addmode eDP-1 "${INT_RES}"
|
||||||
|
xrandr --output eDP-1 --pos 2560x400 --mode "${INT_RES}" --output ${EXT_MON} --pos 0x0 --mode "2560x1440" --rate 144 --primary
|
||||||
|
change_dpi 96 24
|
||||||
|
fi
|
||||||
|
|
||||||
|
${HOME}/.config/X11/autostart
|
|
@ -1,139 +0,0 @@
|
||||||
### Languages
|
|
||||||
# C++
|
|
||||||
*.d
|
|
||||||
*.slo
|
|
||||||
*.lo
|
|
||||||
*.o
|
|
||||||
*.obj
|
|
||||||
*.gch
|
|
||||||
*.pch
|
|
||||||
*.so
|
|
||||||
*.dylib
|
|
||||||
*.dll
|
|
||||||
*.mod
|
|
||||||
*.smod
|
|
||||||
*.lai
|
|
||||||
*.la
|
|
||||||
*.a
|
|
||||||
*.lib
|
|
||||||
*.exe
|
|
||||||
*.out
|
|
||||||
*.app
|
|
||||||
|
|
||||||
# Python
|
|
||||||
__pycache__/
|
|
||||||
*.py[cod]
|
|
||||||
*$py.class
|
|
||||||
*.so
|
|
||||||
.Python
|
|
||||||
build/
|
|
||||||
develop-eggs/
|
|
||||||
dist/
|
|
||||||
downloads/
|
|
||||||
eggs/
|
|
||||||
.eggs/
|
|
||||||
lib/
|
|
||||||
lib64/
|
|
||||||
parts/
|
|
||||||
sdist/
|
|
||||||
var/
|
|
||||||
wheels/
|
|
||||||
share/python-wheels/
|
|
||||||
*.egg-info/
|
|
||||||
.installed.cfg
|
|
||||||
*.egg
|
|
||||||
MANIFEST
|
|
||||||
*.manifest
|
|
||||||
*.spec
|
|
||||||
pip-log.txt
|
|
||||||
pip-delete-this-directory.txt
|
|
||||||
htmlcov/
|
|
||||||
.tox/
|
|
||||||
.nox/
|
|
||||||
.coverage
|
|
||||||
.coverage.*
|
|
||||||
.cache
|
|
||||||
nosetests.xml
|
|
||||||
coverage.xml
|
|
||||||
*.cover
|
|
||||||
*.py,cover
|
|
||||||
.hypothesis/
|
|
||||||
.pytest_cache/
|
|
||||||
cover/
|
|
||||||
*.mo
|
|
||||||
*.pot
|
|
||||||
*.log
|
|
||||||
local_settings.py
|
|
||||||
db.sqlite3
|
|
||||||
db.sqlite3-journal
|
|
||||||
instance/
|
|
||||||
.webassets-cache
|
|
||||||
.scrapy
|
|
||||||
docs/_build/
|
|
||||||
.pybuilder/
|
|
||||||
target/
|
|
||||||
.ipynb_checkpoints
|
|
||||||
profile_default/
|
|
||||||
ipython_config.py
|
|
||||||
.pdm.toml
|
|
||||||
__pypackages__/
|
|
||||||
celerybeat-schedule
|
|
||||||
celerybeat.pid
|
|
||||||
*.sage.py
|
|
||||||
.env
|
|
||||||
.venv
|
|
||||||
env/
|
|
||||||
venv/
|
|
||||||
ENV/
|
|
||||||
env.bak/
|
|
||||||
venv.bak/
|
|
||||||
.spyderproject
|
|
||||||
.spyproject
|
|
||||||
.ropeproject
|
|
||||||
/site
|
|
||||||
.mypy_cache/
|
|
||||||
.dmypy.json
|
|
||||||
dmypy.json
|
|
||||||
.pyre/
|
|
||||||
.pytype/
|
|
||||||
cython_debug/
|
|
||||||
poetry.toml
|
|
||||||
.ruff_cache/
|
|
||||||
pyrightconfig.json
|
|
||||||
|
|
||||||
### IDE
|
|
||||||
# JetBrains
|
|
||||||
.idea
|
|
||||||
*.iws
|
|
||||||
.idea_modules/
|
|
||||||
atlassian-ide-plugin.xml
|
|
||||||
.idea/replstate.xml
|
|
||||||
.idea/sonarlint/
|
|
||||||
com_crashlytics_export_strings.xml
|
|
||||||
crashlytics.properties
|
|
||||||
crashlytics-build.properties
|
|
||||||
fabric.properties
|
|
||||||
.idea/httpRequests
|
|
||||||
.idea/caches/build_file_checksums.ser
|
|
||||||
|
|
||||||
# VSCode
|
|
||||||
.vscode/*
|
|
||||||
.history/
|
|
||||||
*.vsix
|
|
||||||
.ionide
|
|
||||||
|
|
||||||
# CMake
|
|
||||||
cmake-build-*/
|
|
||||||
.cache/
|
|
||||||
CMakeLists.txt.user
|
|
||||||
CMakeCache.txt
|
|
||||||
CMakeFiles
|
|
||||||
CMakeScripts
|
|
||||||
Testing
|
|
||||||
Makefile
|
|
||||||
cmake_install.cmake
|
|
||||||
install_manifest.txt
|
|
||||||
compile_commands.json
|
|
||||||
CTestTestfile.cmake
|
|
||||||
_deps
|
|
||||||
*-prefix/
|
|
|
@ -1 +0,0 @@
|
||||||
Subproject commit 99469c4a9b1ccf77fade25842dc7bafbc8ce9946
|
|
BIN
.local/share/wallpaper/wallpaper.png
Normal file
BIN
.local/share/wallpaper/wallpaper.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
18
.local/statusbar/sb-battery
Executable file
18
.local/statusbar/sb-battery
Executable file
|
@ -0,0 +1,18 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
for battery in /sys/class/power_supply/BAT?*; do
|
||||||
|
[ -n "${capacity+x}" ] && printf " "
|
||||||
|
case "$(cat "$battery/status" 2>&1)" in
|
||||||
|
"Full") status="⚡ " ;;
|
||||||
|
"Discharging") status="🔋" ;;
|
||||||
|
"Charging") status="🔌" ;;
|
||||||
|
"Not charging") status="🛑" ;;
|
||||||
|
"Unknown") status="♻️" ;;
|
||||||
|
*) exit 1 ;;
|
||||||
|
esac
|
||||||
|
capacity="$(cat "$battery/capacity" 2>&1)"
|
||||||
|
# Will make a warn variable if discharging and low
|
||||||
|
[ "$status" = "🔋" ] && [ "$capacity" -le 25 ] && warn="❗"
|
||||||
|
# Prints the info
|
||||||
|
printf "%s%s%d%%" "$status" "$warn" "$capacity"; unset warn
|
||||||
|
done && printf "\\n"
|
7
.local/statusbar/sb-cast
Executable file
7
.local/statusbar/sb-cast
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
PIDFILE="${XDG_RUNTIME_DIR}/mkchromecast.pid"
|
||||||
|
|
||||||
|
if [ -f "${PIDFILE}" ]; then
|
||||||
|
printf "🔴 Casting"
|
||||||
|
fi
|
7
.local/statusbar/sb-vpn
Executable file
7
.local/statusbar/sb-vpn
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
IFNAME="$(ip link show | grep 'wg_' | cut -d ' ' -f 2 | sed 's/://' | sed 's/wg_//' | tr '[:lower:]' '[:upper:]' | sed 's/_D/ (dpi)/')"
|
||||||
|
|
||||||
|
if [ ! -z "${IFNAME}" ]; then
|
||||||
|
echo "🛡️ ${IFNAME}"
|
||||||
|
fi
|
6
.xinitrc
Normal file
6
.xinitrc
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
. ${HOME}/.config/X11/xprofile
|
||||||
|
xr
|
||||||
|
# . ${HOME}/.config/X11/autostart
|
||||||
|
|
||||||
|
exec dbus-run-session ssh-agent ${HOME}/.local/src/dwm/dwm
|
||||||
|
# ssh-agent /usr/bin/dwm
|
2
.xsettingsd
Normal file
2
.xsettingsd
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
Xft/DPI 98304
|
||||||
|
Gtk/CursorThemeSize 24
|
1
.zshenv
1
.zshenv
|
@ -1,3 +1,2 @@
|
||||||
export ZDOTDIR="${HOME}/.config/zsh"
|
export ZDOTDIR="${HOME}/.config/zsh"
|
||||||
|
|
||||||
source "${ZDOTDIR}/.zshenv"
|
source "${ZDOTDIR}/.zshenv"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue