diff --git a/.Xresources b/.Xresources new file mode 100644 index 0000000..7081bd2 --- /dev/null +++ b/.Xresources @@ -0,0 +1,3 @@ +Xft.dpi: 96 +Xcursor.size: 24 +Xcursor.theme: Breeze diff --git a/.config/X11/autostart b/.config/X11/autostart new file mode 100755 index 0000000..807e128 --- /dev/null +++ b/.config/X11/autostart @@ -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 diff --git a/.config/X11/xprofile b/.config/X11/xprofile new file mode 100644 index 0000000..abf2f22 --- /dev/null +++ b/.config/X11/xprofile @@ -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 diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml index c1b0615..3c1f9dc 100644 --- a/.config/alacritty/alacritty.yml +++ b/.config/alacritty/alacritty.yml @@ -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: + dynamic_padding: true dimensions: columns: 140 lines: 45 @@ -6,72 +58,3 @@ window: x: 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"} diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc new file mode 100644 index 0000000..c3e8cee --- /dev/null +++ b/.config/dunst/dunstrc @@ -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: + # bold + # italic + # strikethrough + # 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 + # 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 = "%s\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 + diff --git a/.config/gtk-3.0/settings.ini b/.config/gtk-3.0/settings.ini new file mode 100644 index 0000000..37f92ad --- /dev/null +++ b/.config/gtk-3.0/settings.ini @@ -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 diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index ce2b846..d190dfe 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -1,36 +1,38 @@ { "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, - "LuaSnip": { "branch": "master", "commit": "f03089854a8e15594a01562fa7192d0009a6fbe7" }, + "LuaSnip": { "branch": "master", "commit": "878ace11983444d865a72e1759dbcc331d1ace4c" }, "Navigator.nvim": { "branch": "master", "commit": "91d86506ac2a039504d5205d32a1d4bc7aa57072" }, - "bufferline.nvim": { "branch": "main", "commit": "1a3397556d194bb1f2cc530b07124ccc512c5501" }, - "cmake-tools.nvim": { "branch": "master", "commit": "edbf419e00b21e83d45f4a17edffb2035d7a0ce6" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" }, + "black-nvim": { "branch": "master", "commit": "8fb3efc562b67269e6f31f8653297f826534fa4b" }, + "bufferline.nvim": { "branch": "main", "commit": "99337f63f0a3c3ab9519f3d1da7618ca4f91cffe" }, + "cmake-tools.nvim": { "branch": "master", "commit": "13ac73e88af371552379cbdbd57fee3550ade691" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, - "fidget.nvim": { "branch": "main", "commit": "785efc604f6ffe3c3fdd2ea86262804d48863ee1" }, - "friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" }, - "indent-blankline.nvim": { "branch": "master", "commit": "dbd90bb689ff10d21fee6792eb8928f0584b5860" }, - "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, - "lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "4eb8e15e3c0757303d4c6dea64d2981fc679e990" }, - "mason.nvim": { "branch": "main", "commit": "41e75af1f578e55ba050c863587cffde3556ffa6" }, - "neodev.nvim": { "branch": "main", "commit": "1676d2c24186fc30005317e0306d20c639b2351b" }, - "nvim-autopairs": { "branch": "master", "commit": "0f04d78619cce9a5af4f355968040f7d675854a1" }, - "nvim-cmp": { "branch": "main", "commit": "0b751f6beef40fd47375eaf53d3057e0bfa317e4" }, + "fidget.nvim": { "branch": "main", "commit": "ef99df04a1c53a453602421bc0f756997edc8289" }, + "friendly-snippets": { "branch": "main", "commit": "d0610077b6129cf9f7f78afbe3a1425d60f6e2f1" }, + "indent-blankline.nvim": { "branch": "master", "commit": "d98f537c3492e87b6dc6c2e3f66ac517528f406f" }, + "lazy.nvim": { "branch": "main", "commit": "24fa2a97085ca8a7220b5b078916f81e316036fd" }, + "lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "a4caa0d083aab56f6cd5acf2d42331b74614a585" }, + "mason.nvim": { "branch": "main", "commit": "49ff59aded1047a773670651cfa40e76e63c6377" }, + "neodev.nvim": { "branch": "main", "commit": "ce9a2e8eaba5649b553529c5498acb43a6c317cd" }, + "nvim-autopairs": { "branch": "master", "commit": "c15de7e7981f1111642e7e53799e1211d4606cb9" }, + "nvim-cmp": { "branch": "main", "commit": "5260e5e8ecadaf13e6b82cf867a909f54e15fd07" }, "nvim-lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" }, - "nvim-lspconfig": { "branch": "master", "commit": "694aaec65733e2d54d393abf80e526f86726c988" }, - "nvim-notify": { "branch": "master", "commit": "e4a2022f4fec2d5ebc79afa612f96d8b11c627b3" }, - "nvim-tree.lua": { "branch": "master", "commit": "05f55c1fd6470b31627655c528245794e3cd4b2c" }, - "nvim-treesitter": { "branch": "master", "commit": "0791b5ebb590a2d44e20640c52679df1fc42e8ab" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" }, - "nvim-web-devicons": { "branch": "master", "commit": "5efb8bd06841f91f97c90e16de85e96d57e9c862" }, - "onedark.nvim": { "branch": "master", "commit": "e7c656ac6b6460aaab817cbd0c9d5c043eda4b43" }, - "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, - "telescope.nvim": { "branch": "0.1.x", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, - "vim-fugitive": { "branch": "master", "commit": "46eaf8918b347906789df296143117774e827616" }, + "nvim-lspconfig": { "branch": "master", "commit": "7cb90cf656139dc59cf86206946ec85571671b5b" }, + "nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" }, + "nvim-tree.lua": { "branch": "master", "commit": "5a87ffe35c4739ffb6b62052572583ad277a20ae" }, + "nvim-treesitter": { "branch": "master", "commit": "5c924407cf110e9da4f3ba02ffed127b4198ad89" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "3557e41418b4a6c5b85d5d64abe94c9c50fa9b14" }, + "nvim-web-devicons": { "branch": "master", "commit": "b77921fdc44833c994fdb389d658ccbce5490c16" }, + "onedark.nvim": { "branch": "master", "commit": "8e4b79b0e6495ddf29552178eceba1e147e6cecf" }, + "plenary.nvim": { "branch": "master", "commit": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" }, + "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, + "trouble.nvim": { "branch": "main", "commit": "cf81aaca820017388fc630c534774c95b58233f2" }, + "vim-fugitive": { "branch": "master", "commit": "4f59455d2388e113bd510e85b310d15b9228ca0d" }, "vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" }, "vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" }, "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" }, "vim-tmux": { "branch": "master", "commit": "cfe76281efc29890548cf9eedd42ad51c7a1faf0" }, - "vim-wakatime": { "branch": "master", "commit": "87c6861ea81700ec4a6a27c81413cf07cb2c883c" } + "vim-wakatime": { "branch": "master", "commit": "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23" } } \ No newline at end of file diff --git a/.config/nvim/lua/config/autocmd.lua b/.config/nvim/lua/config/autocmd.lua index 325e8c2..dcd5132 100644 --- a/.config/nvim/lua/config/autocmd.lua +++ b/.config/nvim/lua/config/autocmd.lua @@ -1,18 +1,19 @@ -- Open NvimTree on startup -local function open_nvim_tree(data) - local real_file = vim.fn.filereadable(data.file) == 1 - local no_name = data.file == "" and vim.bo[data.buf].buftype == "" - local directory = vim.fn.isdirectory(data.file) == 1 +vim.api.nvim_create_autocmd({ "VimEnter" }, { + callback = function(data) + local real_file = vim.fn.filereadable(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 - require("nvim-tree.api").tree.toggle({ focus = false, find_file = true, }) - elseif directory then - vim.cmd.enew() - vim.cmd.cd(data.file) - require("nvim-tree.api").tree.open() + if real_file or no_name then + require("nvim-tree.api").tree.toggle({ focus = false, find_file = true, }) + elseif directory then + vim.cmd.enew() + vim.cmd.cd(data.file) + require("nvim-tree.api").tree.open() + end end -end -vim.api.nvim_create_autocmd({ "VimEnter" }, { callback = open_nvim_tree }) +}) -- Resotre cursor on exit -- vim.api.nvim_create_autocmd("VimLeave", { diff --git a/.config/nvim/lua/config/lsp/cmake.lua b/.config/nvim/lua/config/lsp/cmake.lua new file mode 100644 index 0000000..a564707 --- /dev/null +++ b/.config/nvim/lua/config/lsp/cmake.lua @@ -0,0 +1 @@ +return {} diff --git a/.config/nvim/lua/config/lsp/gopls.lua b/.config/nvim/lua/config/lsp/gopls.lua new file mode 100644 index 0000000..a564707 --- /dev/null +++ b/.config/nvim/lua/config/lsp/gopls.lua @@ -0,0 +1 @@ +return {} diff --git a/.config/nvim/lua/config/lsp/init.lua b/.config/nvim/lua/config/lsp/init.lua index 9ce5d42..a38c85f 100644 --- a/.config/nvim/lua/config/lsp/init.lua +++ b/.config/nvim/lua/config/lsp/init.lua @@ -4,7 +4,38 @@ require('mason-lspconfig').setup() local mason_lspconfig = require('mason-lspconfig') 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('rn', vim.lsp.buf.rename, '[R]e[n]ame') + nmap('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('D', require('telescope.builtin').lsp_type_definitions, 'Type [D]efinition') + nmap("i", vim.diagnostic.open_float) + + nmap('ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols') + nmap('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('', vim.lsp.buf.signature_help, 'Signature Documentation') + + -- Lesser used LSP functionality + nmap('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration') + nmap('wa', vim.lsp.buf.add_workspace_folder, '[W]orkspace [A]dd Folder') + nmap('wr', vim.lsp.buf.remove_workspace_folder, '[W]orkspace [R]emove Folder') + nmap('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.lsp.buf.format() @@ -15,6 +46,9 @@ local servers = { clangd = require("config.lsp.clangd"), pyright = require("config.lsp.pyright"), 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() diff --git a/.config/nvim/lua/config/lsp/keybinds.lua b/.config/nvim/lua/config/lsp/keybinds.lua index cc3a3bd..a564707 100644 --- a/.config/nvim/lua/config/lsp/keybinds.lua +++ b/.config/nvim/lua/config/lsp/keybinds.lua @@ -1,36 +1 @@ -local M = {} - -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('rn', vim.lsp.buf.rename, '[R]e[n]ame') - nmap('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('D', require('telescope.builtin').lsp_type_definitions, 'Type [D]efinition') - - nmap('ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols') - nmap('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('', vim.lsp.buf.signature_help, 'Signature Documentation') - - -- Lesser used LSP functionality - nmap('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration') - nmap('wa', vim.lsp.buf.add_workspace_folder, '[W]orkspace [A]dd Folder') - nmap('wr', vim.lsp.buf.remove_workspace_folder, '[W]orkspace [R]emove Folder') - nmap('wl', function() - print(vim.inspect(vim.lsp.buf.list_workspace_folders())) - end, '[W]orkspace [L]ist Folders') -end - -return M +return {} diff --git a/.config/nvim/lua/config/lsp/rust_analyzer.lua b/.config/nvim/lua/config/lsp/rust_analyzer.lua new file mode 100644 index 0000000..a564707 --- /dev/null +++ b/.config/nvim/lua/config/lsp/rust_analyzer.lua @@ -0,0 +1 @@ +return {} diff --git a/.config/nvim/lua/config/mappings.lua b/.config/nvim/lua/config/mappings.lua index 557b78b..5730d2b 100644 --- a/.config/nvim/lua/config/mappings.lua +++ b/.config/nvim/lua/config/mappings.lua @@ -2,15 +2,15 @@ local map = vim.keymap.set -- Unbind keys map('n', '', '') -map('v', 'K', '') +-- map('v', 'K', '') -- Movement between buffers -map({ 'n', 'v', 'i' }, '', ':bp') -map({ 'n', 'v', 'i' }, '', ':bn') +map({ 'n', 'v' }, '', ':bp', { silent = true }) +map({ 'n', 'v' }, '', ':bn', { silent = true }) -- Remap for dealing with word wrap -map('n', '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' }, 'k', 'v:count == 0 ? "gk" : "k"', { expr = true, silent = true }) +map({ 'n', 'v' }, 'j', 'v:count == 0 ? "gj" : "j"', { expr = true, silent = true }) -- Exit buffers/nvim with map('n', 'q', function() require('utils.close_buffer').close_buffer() end) @@ -18,6 +18,12 @@ map('n', '1', function() require('utils.close_buffer').close_buffer(true map('n', 'Q', ':%bd | quit') map('n', '!', ':%bd! | quit!') map('n', 'w', ':write') +map('n', 'W', function() vim.cmd.write(vim.fn.input("File: ")) end) +map('n', 'e', ':e') + +-- Duplicate leader feats to gradually move to +map('n', '', function() require('utils.close_buffer').close_buffer() end) +map('n', '', function() require('utils.close_buffer').close_buffer(true) end) -- Copy and paste from clipboard map('n', 'y', '"+yy') @@ -25,7 +31,16 @@ map('v', 'y', '"+y') map({ 'n', 'v' }, 'p', '"+p') map({ 'n', 'v' }, 'P', '"+P') +-- buffer size +map({ 'n', 'v' }, 'n', '10<') +map({ 'n', 'v' }, 'm', '10>') +map({ 'n', 'v' }, 'N', '6-') +map({ 'n', 'v' }, 'M', '6+') + -- Remap to remove last word map('i', '', '') map('n', 'F', function() vim.lsp.buf.format() end) + +map('n', '', ':m-2', { silent = true }) +map('n', '', ':m+1', { silent = true }) diff --git a/.config/nvim/lua/config/options.lua b/.config/nvim/lua/config/options.lua index b3999e2..6dec8e9 100644 --- a/.config/nvim/lua/config/options.lua +++ b/.config/nvim/lua/config/options.lua @@ -1,3 +1,4 @@ +-- Highlight search results vim.o.hlsearch = true -- Enable line numbers @@ -7,8 +8,12 @@ vim.wo.relativenumber = true -- Enable mouse mode vim.o.mouse = 'a' --- Enable break indent +-- Indentation vim.o.breakindent = true +vim.o.tabstop = 4 +vim.o.shiftwidth = 4 +vim.o.expandtab = true +vim.o.smartindent = false -- Save undo history vim.o.undofile = true diff --git a/.config/nvim/lua/config/plugins/cmake-tools.lua b/.config/nvim/lua/config/plugins/cmake-tools.lua index f5f4854..c8ab65b 100644 --- a/.config/nvim/lua/config/plugins/cmake-tools.lua +++ b/.config/nvim/lua/config/plugins/cmake-tools.lua @@ -2,7 +2,7 @@ require("cmake-tools").setup { cmake_command = "cmake", -- this is used to specify cmake command path 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_build_options = {}, -- this will be passed when invoke `CMakeBuild` + cmake_build_options = { "-j14" }, -- this will be passed when invoke `CMakeBuild` -- support macro expansion: -- ${kit} -- ${kitGenerator} @@ -60,16 +60,15 @@ require("cmake-tools").setup { }, }, 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 refresh_rate_ms = 100, -- how often to iterate icons }, } -local map = vim.keymap.set - -- Mappings -map('n', 'b', ':CMakeBuild') -map('n', 'c', ':CMakeClose') -map('n', 'r', ':CMakeRun') +vim.keymap.set('n', 'b', ':CMakeBuild') +vim.keymap.set('n', 'c', ':CMakeClose') +vim.keymap.set('n', 'r', ':CMakeRun') +vim.keymap.set('n', 'G', ':CMakeGenerate') diff --git a/.config/nvim/lua/config/plugins/comment.lua b/.config/nvim/lua/config/plugins/comment.lua index b0d7d4d..23af015 100644 --- a/.config/nvim/lua/config/plugins/comment.lua +++ b/.config/nvim/lua/config/plugins/comment.lua @@ -1,8 +1,8 @@ local map = vim.keymap.set -map('n', '', require('Comment.api').toggle.linewise.current) -map('i', '', require('Comment.api').toggle.linewise.current) -map('x', '', function() +map({ 'n', 'i' }, '', require('Comment.api').toggle.linewise.current) + +map('v', '', function() vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes('', true, false, true), 'nx', false) require('Comment.api').toggle.linewise(vim.fn.visualmode()) end diff --git a/.config/nvim/lua/config/plugins/init.lua b/.config/nvim/lua/config/plugins/init.lua index 1771884..d5aeefa 100644 --- a/.config/nvim/lua/config/plugins/init.lua +++ b/.config/nvim/lua/config/plugins/init.lua @@ -7,3 +7,4 @@ require('config.plugins.nvim-tree') require('config.plugins.telescope') require('config.plugins.treesitter') require('config.plugins.navigator') +require('config.plugins.trouble') diff --git a/.config/nvim/lua/config/plugins/nvim-autopairs.lua b/.config/nvim/lua/config/plugins/nvim-autopairs.lua index c7064c7..261f664 100644 --- a/.config/nvim/lua/config/plugins/nvim-autopairs.lua +++ b/.config/nvim/lua/config/plugins/nvim-autopairs.lua @@ -1,4 +1,3 @@ require('nvim-autopairs').setup({ disable_filetype = { "TelescopePrompt" , "vim" }, - enable_check_bracket_line = false, }) diff --git a/.config/nvim/lua/config/plugins/nvim-tree.lua b/.config/nvim/lua/config/plugins/nvim-tree.lua index 6e49bfd..bce4fae 100644 --- a/.config/nvim/lua/config/plugins/nvim-tree.lua +++ b/.config/nvim/lua/config/plugins/nvim-tree.lua @@ -1,6 +1,15 @@ vim.g.loaded_netrw = 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', '', ':NvimTreeToggle') +vim.keymap.set('n', '', ':NvimTreeToggle', { silent=true }) diff --git a/.config/nvim/lua/config/plugins/telescope.lua b/.config/nvim/lua/config/plugins/telescope.lua index 44d80c9..145fe01 100644 --- a/.config/nvim/lua/config/plugins/telescope.lua +++ b/.config/nvim/lua/config/plugins/telescope.lua @@ -9,18 +9,15 @@ require('telescope').setup { }, } --- Enable telescope fzf native, if installed pcall(require('telescope').load_extension, 'fzf') --- See `:help telescope.builtin` vim.keymap.set('n', '?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' }) --- vim.keymap.set('n', '', require('telescope.builtin').buffers, { desc = '[ ] Find existing buffers' }) vim.keymap.set('n', '/', 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 { winblend = 10, previewer = false, }) + end, { desc = '[/] Fuzzily search in current buffer' }) vim.keymap.set('n', 'gf', require('telescope.builtin').git_files, { desc = 'Search [G]it [F]iles' }) @@ -30,3 +27,4 @@ vim.keymap.set('n', 'sw', require('telescope.builtin').grep_string, { de vim.keymap.set('n', 'sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' }) vim.keymap.set('n', 'sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' }) vim.keymap.set('n', 'sr', require('telescope.builtin').resume, { desc = '[S]earch [R]esume' }) +vim.keymap.set('n', 'sm', require('telescope.builtin').treesitter) diff --git a/.config/nvim/lua/config/plugins/treesitter.lua b/.config/nvim/lua/config/plugins/treesitter.lua index 6e30f54..03eda3e 100644 --- a/.config/nvim/lua/config/plugins/treesitter.lua +++ b/.config/nvim/lua/config/plugins/treesitter.lua @@ -4,7 +4,7 @@ vim.defer_fn(function() 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!) - auto_install = false, + auto_install = true, highlight = { enable = true }, indent = { enable = true }, @@ -51,15 +51,7 @@ vim.defer_fn(function() ['[]'] = '@class.outer', }, }, - swap = { - enable = true, - swap_next = { - ['a'] = '@parameter.inner', - }, - swap_previous = { - ['A'] = '@parameter.inner', - }, - }, + swap = { enable = false, }, }, } end, 0) diff --git a/.config/nvim/lua/config/plugins/trouble.lua b/.config/nvim/lua/config/plugins/trouble.lua new file mode 100644 index 0000000..a4e5c5b --- /dev/null +++ b/.config/nvim/lua/config/plugins/trouble.lua @@ -0,0 +1,6 @@ +vim.keymap.set("n", "xx", function() require("trouble").toggle() end) +vim.keymap.set("n", "xw", function() require("trouble").toggle("workspace_diagnostics") end) +vim.keymap.set("n", "xd", function() require("trouble").toggle("document_diagnostics") end) +vim.keymap.set("n", "xq", function() require("trouble").toggle("quickfix") end) +vim.keymap.set("n", "xl", function() require("trouble").toggle("loclist") end) +vim.keymap.set("n", "gR", function() require("trouble").toggle("lsp_references") end) diff --git a/.config/nvim/lua/plugins/indent-blankline.lua b/.config/nvim/lua/plugins/indent-blankline.lua index 75cb3f1..e445b28 100644 --- a/.config/nvim/lua/plugins/indent-blankline.lua +++ b/.config/nvim/lua/plugins/indent-blankline.lua @@ -1,8 +1,5 @@ return { - -- Add indentation guides even on blank lines 'lukas-reineke/indent-blankline.nvim', - -- Enable `lukas-reineke/indent-blankline.nvim` - -- See `:help ibl` main = 'ibl', opts = {}, } diff --git a/.config/nvim/lua/plugins/init.lua b/.config/nvim/lua/plugins/init.lua index fa1c230..85e8930 100644 --- a/.config/nvim/lua/plugins/init.lua +++ b/.config/nvim/lua/plugins/init.lua @@ -1,17 +1,19 @@ return { + 'Civitasv/cmake-tools.nvim', + 'averms/black-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-rhubarb', 'tpope/vim-sleuth', '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 = {} }, { '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 = { }, } } diff --git a/.config/nvim/lua/plugins/telescope.lua b/.config/nvim/lua/plugins/telescope.lua index a7acd6f..067db6f 100644 --- a/.config/nvim/lua/plugins/telescope.lua +++ b/.config/nvim/lua/plugins/telescope.lua @@ -3,9 +3,6 @@ return { branch = '0.1.x', dependencies = { 'nvim-lua/plenary.nvim', - { - 'nvim-telescope/telescope-fzf-native.nvim', - build = 'make', - }, + { 'nvim-telescope/telescope-fzf-native.nvim', build = 'make', }, }, } diff --git a/.config/nvim/lua/plugins/tmux-nvim.lua b/.config/nvim/lua/plugins/tmux-nvim.lua index 8224205..17c0688 100644 --- a/.config/nvim/lua/plugins/tmux-nvim.lua +++ b/.config/nvim/lua/plugins/tmux-nvim.lua @@ -1,7 +1,3 @@ --- return { --- 'aserowy/tmux.nvim', --- event = "VeryLazy", --- } return { "numToStr/Navigator.nvim", } diff --git a/.config/picom.conf b/.config/picom.conf new file mode 100644 index 0000000..da21c36 --- /dev/null +++ b/.config/picom.conf @@ -0,0 +1,2 @@ +backend = "glx"; +vsync = true; diff --git a/.config/taskell/bindings.ini b/.config/taskell/bindings.ini new file mode 100644 index 0000000..ab71078 --- /dev/null +++ b/.config/taskell/bindings.ini @@ -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 = +dueDate = @ +clearDate = + +# 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 = +# 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 = < diff --git a/.config/taskell/config.ini b/.config/taskell/config.ini new file mode 100644 index 0000000..a00b5cc --- /dev/null +++ b/.config/taskell/config.ini @@ -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 diff --git a/.config/taskell/template.md b/.config/taskell/template.md new file mode 100644 index 0000000..4da1daf --- /dev/null +++ b/.config/taskell/template.md @@ -0,0 +1,8 @@ +## To Do + + +## Doing + + +## Done + diff --git a/.config/taskell/theme.ini b/.config/taskell/theme.ini new file mode 100644 index 0000000..1228247 --- /dev/null +++ b/.config/taskell/theme.ini @@ -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 diff --git a/.config/tmux/keybinds.conf b/.config/tmux/keybinds.conf index 91f4b97..f06e0f9 100644 --- a/.config/tmux/keybinds.conf +++ b/.config/tmux/keybinds.conf @@ -10,8 +10,8 @@ bind i next-window bind n new-window -c "#{pane_current_path}" -bind k split-window -v -bind l split-window -h +bind k split-window -v -c "#{pane_current_path}" +bind l split-window -h -c "#{pane_current_path}" # Rebind command key to ; bind \; command-prompt diff --git a/.config/tmux/plugins.conf b/.config/tmux/plugins.conf index 3fd32af..6e6f90d 100644 --- a/.config/tmux/plugins.conf +++ b/.config/tmux/plugins.conf @@ -15,7 +15,9 @@ set -g @batt_icon_charge_tier1 '! !' # Change date and time format set -g @onedark_time_format "%I:%M %p" 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 '~/.local/share/tmux-plugins/tpm/tpm' diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf index 4f6b625..db056df 100644 --- a/.config/tmux/tmux.conf +++ b/.config/tmux/tmux.conf @@ -2,8 +2,8 @@ setw -g mouse on # Enable 256 color mode and TrueColor -set -s default-terminal "tmux-256color" -set -as terminal-overrides ",xterm*:Tc" +set -g default-terminal "tmux-256color" +set -ag terminal-overrides ",xterm-256color:RGB" # Get rid of nvim escape delay set -s escape-time 0 diff --git a/.config/zsh/.zcompdump b/.config/zsh/.zcompdump new file mode 100644 index 0000000..59599ca --- /dev/null +++ b/.config/zsh/.zcompdump @@ -0,0 +1,2104 @@ +#files: 1006 version: 5.9 + +_comps=( +'-' '_precommand' +'.' '_source' +'5g' '_go' +'5l' '_go' +'6g' '_go' +'6l' '_go' +'8g' '_go' +'8l' '_go' +'a2dismod' '_a2utils' +'a2dissite' '_a2utils' +'a2enmod' '_a2utils' +'a2ensite' '_a2utils' +'a2ps' '_a2ps' +'aaaa' '_hosts' +'aap' '_aap' +'abcde' '_abcde' +'ack' '_ack' +'ack2' '_ack' +'ack-grep' '_ack' +'ack-standalone' '_ack' +'acpi' '_acpi' +'acpitool' '_acpitool' +'acroread' '_acroread' +'adb' '_adb' +'add-zle-hook-widget' '_add-zle-hook-widget' +'add-zsh-hook' '_add-zsh-hook' +'admin' '_sccs' +'alacritty' '_alacritty' +'ali' '_mh' +'alias' '_alias' +'amaya' '_webbrowser' +'analyseplugin' '_analyseplugin' +'animate' '_imagemagick' +'anno' '_mh' +'ansible' '_ansible' +'ansible-config' '_ansible' +'ansible-console' '_ansible' +'ansible-doc' '_ansible' +'ansible-galaxy' '_ansible' +'ansible-inventory' '_ansible' +'ansible-playbook' '_ansible' +'ansible-pull' '_ansible' +'ansible-vault' '_ansible' +'ant' '_ant' +'antiword' '_antiword' +'aodh' '_openstack' +'aoss' '_precommand' +'apache2ctl' '_apachectl' +'apachectl' '_apachectl' +'aplay' '_alsa-utils' +'apm' '_apm' +'appletviewer' '_java' +'apropos' '_man' +'apt' '_apt' +'apt-cache' '_apt' +'apt-cdrom' '_apt' +'apt-config' '_apt' +'apt-file' '_apt-file' +'apt-get' '_apt' +'aptitude' '_aptitude' +'apt-mark' '_apt' +'apt-move' '_apt-move' +'apt-show-versions' '_apt-show-versions' +'apvlv' '_pdf' +'arduino-ctags' '_ctags' +'arecord' '_alsa-utils' +'arena' '_webbrowser' +'_arguments' '__arguments' +'arp' '_arp' +'arping' '_arping' +'-array-value-' '_value' +'asciidoctor' '_asciidoctor' +'asciinema' '_asciinema' +'ash' '_sh' +'-assign-parameter-' '_assign' +'at' '_at' +'atq' '_at' +'atrm' '_at' +'attr' '_attr' +'augtool' '_augeas' +'auto-apt' '_auto-apt' +'autoload' '_typeset' +'avahi-browse' '_avahi' +'avahi-browse-domains' '_avahi' +'avahi-resolve' '_avahi' +'avahi-resolve-address' '_avahi' +'avahi-resolve-host-name' '_avahi' +'awk' '_awk' +'axi-cache' '_axi-cache' +'b2sum' '_md5sum' +'barbican' '_openstack' +'base32' '_base64' +'base64' '_base64' +'basename' '_basename' +'basenc' '_basenc' +'bash' '_bash' +'batch' '_at' +'baz' '_baz' +'beadm' '_beadm' +'beep' '_beep' +'bg' '_jobs_bg' +'bibtex' '_bibtex' +'bindkey' '_bindkey' +'bison' '_bison' +'bmake' '_make' +'bogofilter' '_bogofilter' +'bogotune' '_bogofilter' +'bogoutil' '_bogofilter' +'bootctl' '_bootctl' +'bpython' '_bpython' +'bpython2' '_bpython' +'bpython2-gtk' '_bpython' +'bpython2-urwid' '_bpython' +'bpython3' '_bpython' +'bpython3-gtk' '_bpython' +'bpython3-urwid' '_bpython' +'bpython-gtk' '_bpython' +'bpython-urwid' '_bpython' +'-brace-parameter-' '_brace_parameter' +'brctl' '_brctl' +'bsdconfig' '_bsdconfig' +'bsdgrep' '_grep' +'bsdinstall' '_bsdinstall' +'bsdtar' '_tar' +'btdownloadcurses' '_bittorrent' +'btdownloadgui' '_bittorrent' +'btdownloadheadless' '_bittorrent' +'btlaunchmany' '_bittorrent' +'btlaunchmanycurses' '_bittorrent' +'btmakemetafile' '_bittorrent' +'btreannounce' '_bittorrent' +'btrename' '_bittorrent' +'btrfs' '_btrfs' +'bts' '_bts' +'btshowmetainfo' '_bittorrent' +'bttrack' '_bittorrent' +'bug' '_bug' +'buildhash' '_ispell' +'builtin' '_builtin' +'bunzip2' '_bzip2' +'burst' '_mh' +'busctl' '_busctl' +'bwrap' '_bwrap' +'bzcat' '_bzip2' +'bzegrep' '_grep' +'bzfgrep' '_grep' +'bzgrep' '_grep' +'bzip2' '_bzip2' +'bzip2recover' '_bzip2' +'bzr' '_bzr' +'c++' '_gcc' +'cabal' '_cabal' +'caffeinate' '_caffeinate' +'cal' '_cal' +'calendar' '_calendar' +'cat' '_cat' +'catchsegv' '_precommand' +'cc' '_gcc' +'ccal' '_ccal' +'cd' '_cd' +'cdbs-edit-patch' '_cdbs-edit-patch' +'cdc' '_sccs' +'cdcd' '_cdcd' +'cdr' '_cdr' +'cdrdao' '_cdrdao' +'cdrecord' '_cdrecord' +'ceilometer' '_openstack' +'certtool' '_gnutls' +'cftp' '_twisted' +'chage' '_users' +'chattr' '_chattr' +'chcon' '_chcon' +'chdir' '_cd' +'chflags' '_chflags' +'chfn' '_users' +'chgrp' '_chown' +'chimera' '_webbrowser' +'chkconfig' '_chkconfig' +'chkstow' '_stow' +'chmod' '_chmod' +'choom' '_choom' +'chown' '_chown' +'chpass' '_chsh' +'chroot' '_chroot' +'chrt' '_chrt' +'chsh' '_chsh' +'ci' '_rcs' +'cifsiostat' '_sysstat' +'cinder' '_openstack' +'ckeygen' '_twisted' +'cksum' '_cksum' +'clang' '_gcc' +'clang++' '_gcc' +'clay' '_clay' +'clear' '_nothing' +'cloudkitty' '_openstack' +'clusterdb' '_postgresql' +'cmp' '_cmp' +'co' '_rcs' +'code' '_code' +'column' '_column' +'comb' '_sccs' +'combine' '_imagemagick' +'combinediff' '_patchutils' +'comm' '_comm' +'-command-' '_autocd' +'command' '_command' +'-command-line-' '_normal' +'comp' '_mh' +'compadd' '_compadd' +'compdef' '_compdef' +'composer' '_composer' +'composer.phar' '_composer' +'composite' '_imagemagick' +'compress' '_compress' +'conch' '_twisted' +'-condition-' '_condition' +'config.status' '_configure' +'configure' '_configure' +'convert' '_imagemagick' +'coreadm' '_coreadm' +'cowsay' '_cowsay' +'cowthink' '_cowsay' +'cp' '_cp' +'cpio' '_cpio' +'cplay' '_cplay' +'cpupower' '_cpupower' +'createdb' '_postgresql' +'createuser' '_postgresql' +'crontab' '_crontab' +'crsh' '_cssh' +'cryptsetup' '_cryptsetup' +'cscope' '_cscope' +'csh' '_sh' +'csplit' '_csplit' +'cssh' '_cssh' +'csup' '_csup' +'ctags' '_ctags' +'ctags-exuberant' '_ctags' +'ctags-universal' '_ctags' +'ctr' '_ctr' +'cu' '_cu' +'curl' '_curl' +'cut' '_cut' +'cvlc' '_vlc' +'cvs' '_cvs' +'cvsup' '_cvsup' +'cygcheck' '_cygcheck' +'cygcheck.exe' '_cygcheck' +'cygpath' '_cygpath' +'cygpath.exe' '_cygpath' +'cygrunsrv' '_cygrunsrv' +'cygrunsrv.exe' '_cygrunsrv' +'cygserver' '_cygserver' +'cygserver.exe' '_cygserver' +'cygstart' '_cygstart' +'cygstart.exe' '_cygstart' +'dak' '_dak' +'darcs' '_darcs' +'dash' '_sh' +'date' '_date' +'dbus-launch' '_dbus' +'dbus-monitor' '_dbus' +'dbus-send' '_dbus' +'dch' '_debchange' +'dchroot' '_dchroot' +'dchroot-dsa' '_dchroot-dsa' +'dconf' '_dconf' +'dcop' '_dcop' +'dcopclient' '_dcop' +'dcopfind' '_dcop' +'dcopobject' '_dcop' +'dcopref' '_dcop' +'dcopstart' '_dcop' +'dcut' '_dcut' +'dd' '_dd' +'debchange' '_debchange' +'debcheckout' '_debcheckout' +'debdiff' '_debdiff' +'debfoster' '_debfoster' +'deborphan' '_deborphan' +'debsign' '_debsign' +'debsnap' '_debsnap' +'debuild' '_debuild' +'declare' '_typeset' +'-default-' '_default' +'defaults' '_defaults' +'delta' '_sccs' +'designate' '_openstack' +'devtodo' '_devtodo' +'df' '_df' +'dhclient' '_dhclient' +'dhclient3' '_dhclient' +'dhcpinfo' '_dhcpinfo' +'dict' '_dict' +'diff' '_diff' +'diff3' '_diff3' +'diffstat' '_diffstat' +'dig' '_dig' +'dillo' '_webbrowser' +'dircmp' '_directories' +'dirs' '_dirs' +'disable' '_disable' +'disown' '_jobs_fg' +'display' '_imagemagick' +'dist' '_mh' +'django-admin' '_django' +'django-admin.py' '_django' +'dkms' '_dkms' +'dladm' '_dladm' +'dlocate' '_dlocate' +'dmake' '_make' +'dmesg' '_dmesg' +'dmidecode' '_dmidecode' +'dnf' '_dnf' +'dnf-2' '_dnf' +'dnf-3' '_dnf' +'doas' '_doas' +'docker' '_docker' +'dockerd' '_docker' +'domainname' '_yp' +'dos2unix' '_dos2unix' +'dosdel' '_floppy' +'dosread' '_floppy' +'dpatch-edit-patch' '_dpatch-edit-patch' +'dpkg' '_dpkg' +'dpkg-buildpackage' '_dpkg-buildpackage' +'dpkg-cross' '_dpkg-cross' +'dpkg-deb' '_dpkg' +'dpkg-parsechangelog' '_dpkg-parsechangelog' +'dpkg-query' '_dpkg' +'dpkg-reconfigure' '_dpkg' +'dpkg-repack' '_dpkg-repack' +'dpkg-source' '_dpkg_source' +'dput' '_dput' +'drill' '_drill' +'dropbox' '_dropbox' +'dropdb' '_postgresql' +'dropuser' '_postgresql' +'dscverify' '_dscverify' +'dsh' '_dsh' +'dtrace' '_dtrace' +'dtruss' '_dtruss' +'du' '_du' +'dumpadm' '_dumpadm' +'dumper' '_dumper' +'dumper.exe' '_dumper' +'dupload' '_dupload' +'dvibook' '_dvi' +'dviconcat' '_dvi' +'dvicopy' '_dvi' +'dvidvi' '_dvi' +'dvipdf' '_dvi' +'dvips' '_dvi' +'dviselect' '_dvi' +'dvitodvi' '_dvi' +'dvitype' '_dvi' +'dwb' '_webbrowser' +'e2label' '_e2label' +'eatmydata' '_precommand' +'ecasound' '_ecasound' +'echotc' '_echotc' +'echoti' '_echoti' +'ed' '_ed' +'egrep' '_grep' +'elfdump' '_elfdump' +'elinks' '_elinks' +'emulate' '_emulate' +'enable' '_enable' +'enscript' '_enscript' +'entr' '_entr' +'env' '_env' +'eog' '_eog' +'epdfview' '_pdf' +'epsffit' '_psutils' +'-equal-' '_equal' +'erb' '_ruby' +'espeak' '_espeak' +'etags' '_etags' +'ethtool' '_ethtool' +'eu-nm' '_nm' +'eu-objdump' '_objdump' +'eu-readelf' '_readelf' +'eu-strings' '_strings' +'eval' '_precommand' +'eview' '_vim' +'evim' '_vim' +'evince' '_evince' +'ex' '_vi' +'exec' '_exec' +'expand' '_unexpand' +'explodepkg' '_pkgtool' +'export' '_typeset' +'express' '_webbrowser' +'extcheck' '_java' +'extractres' '_psutils' +'fakeroot' '_fakeroot' +'false' '_nothing' +'fc' '_fc' +'fc-list' '_xft_fonts' +'fc-match' '_xft_fonts' +'feh' '_feh' +'fetch' '_fetch' +'fetchmail' '_fetchmail' +'ffmpeg' '_ffmpeg' +'fg' '_jobs_fg' +'fgrep' '_grep' +'figlet' '_figlet' +'filterdiff' '_patchutils' +'find' '_find' +'findaffix' '_ispell' +'findmnt' '_findmnt' +'finger' '_finger' +'fink' '_fink' +'firefox' '_mozilla' +'-first-' '_first' +'fixdlsrps' '_psutils' +'fixfmps' '_psutils' +'fixmacps' '_psutils' +'fixpsditps' '_psutils' +'fixpspps' '_psutils' +'fixscribeps' '_psutils' +'fixtpps' '_psutils' +'fixwfwps' '_psutils' +'fixwpps' '_psutils' +'fixwwps' '_psutils' +'flac' '_flac' +'flatpak' '_flatpak' +'flex' '_flex' +'flex++' '_flex' +'flipdiff' '_patchutils' +'flist' '_mh' +'flists' '_mh' +'float' '_typeset' +'flowadm' '_flowadm' +'fmadm' '_fmadm' +'fmt' '_fmt' +'fmttest' '_mh' +'fned' '_zed' +'fnext' '_mh' +'fold' '_fold' +'folder' '_mh' +'folders' '_mh' +'fortune' '_fortune' +'forw' '_mh' +'fprev' '_mh' +'free' '_free' +'freebsd-make' '_make' +'freebsd-update' '_freebsd-update' +'freezer' '_openstack' +'fsh' '_fsh' +'fstat' '_fstat' +'fs_usage' '_fs_usage' +'ftp' '_hosts' +'functions' '_typeset' +'fuser' '_fuser' +'fusermount' '_fusermount' +'fwhois' '_whois' +'fw_update' '_fw_update' +'g++' '_gcc' +'galeon' '_webbrowser' +'gawk' '_awk' +'gb2sum' '_md5sum' +'gbase32' '_base64' +'gbase64' '_base64' +'gbasename' '_basename' +'gcat' '_cat' +'gcc' '_gcc' +'gccgo' '_go' +'gchgrp' '_chown' +'gchmod' '_chmod' +'gchown' '_chown' +'gchroot' '_chroot' +'gcksum' '_cksum' +'gcmp' '_cmp' +'gcomm' '_comm' +'gcore' '_gcore' +'gcp' '_cp' +'gcut' '_cut' +'gdate' '_date' +'gdb' '_gdb' +'gdd' '_dd' +'gdf' '_df' +'gdiff' '_diff' +'gdu' '_du' +'geany' '_geany' +'gegrep' '_grep' +'gem' '_gem' +'genisoimage' '_genisoimage' +'genv' '_env' +'get' '_sccs' +'getafm' '_psutils' +'getclip' '_getclip' +'getclip.exe' '_getclip' +'getconf' '_getconf' +'getent' '_getent' +'getfacl' '_getfacl' +'getfacl.exe' '_getfacl' +'getfattr' '_attr' +'getmail' '_getmail' +'getopt' '_getopt' +'getopts' '_vars' +'gex' '_vim' +'gexpand' '_unexpand' +'gfgrep' '_grep' +'gfind' '_find' +'gfmt' '_fmt' +'gfold' '_fold' +'ggetopt' '_getopt' +'ggrep' '_grep' +'ggv' '_gnome-gv' +'ghead' '_head' +'ghostscript' '_ghostscript' +'ghostview' '_pspdf' +'gid' '_id' +'ginstall' '_install' +'git' '_git' +'git-buildpackage' '_git-buildpackage' +'git-cvsserver' '_git' +'gitk' '_git' +'git-receive-pack' '_git' +'git-shell' '_git' +'git-upload-archive' '_git' +'git-upload-pack' '_git' +'gjoin' '_join' +'glance' '_openstack' +'gln' '_ln' +'global' '_global' +'glocate' '_locate' +'gls' '_ls' +'gm' '_graphicsmagick' +'gmake' '_make' +'gmd5sum' '_md5sum' +'gmkdir' '_mkdir' +'gmkfifo' '_mkfifo' +'gmknod' '_mknod' +'gmktemp' '_mktemp' +'gmplayer' '_mplayer' +'gmv' '_mv' +'gnl' '_nl' +'gnocchi' '_openstack' +'gnome-gv' '_gnome-gv' +'gnumfmt' '_numfmt' +'gnupod_addsong' '_gnupod' +'gnupod_addsong.pl' '_gnupod' +'gnupod_check' '_gnupod' +'gnupod_check.pl' '_gnupod' +'gnupod_INIT' '_gnupod' +'gnupod_INIT.pl' '_gnupod' +'gnupod_search' '_gnupod' +'gnupod_search.pl' '_gnupod' +'gnutls-cli' '_gnutls' +'gnutls-cli-debug' '_gnutls' +'gnutls-serv' '_gnutls' +'god' '_od' +'gofmt' '_go' +'gpasswd' '_gpasswd' +'gpaste' '_paste' +'gpatch' '_patch' +'gpg' '_gpg' +'gpg2' '_gpg' +'gpgv' '_gpg' +'gpg-zip' '_gpg' +'gphoto2' '_gphoto2' +'gprintenv' '_printenv' +'gprof' '_gprof' +'gqview' '_gqview' +'gradle' '_gradle' +'gradlew' '_gradle' +'grail' '_webbrowser' +'greadlink' '_readlink' +'grep' '_grep' +'grepdiff' '_patchutils' +'grep-excuses' '_grep-excuses' +'grm' '_rm' +'grmdir' '_rmdir' +'groff' '_groff' +'groupadd' '_user_admin' +'groupdel' '_groups' +'groupmod' '_user_admin' +'groups' '_users' +'growisofs' '_growisofs' +'gs' '_ghostscript' +'gsbj' '_pspdf' +'gsdj' '_pspdf' +'gsdj500' '_pspdf' +'gsed' '_sed' +'gseq' '_seq' +'gsettings' '_gsettings' +'gsha1sum' '_md5sum' +'gsha224sum' '_md5sum' +'gsha256sum' '_md5sum' +'gsha384sum' '_md5sum' +'gsha512sum' '_md5sum' +'gshred' '_shred' +'gshuf' '_shuf' +'gslj' '_pspdf' +'gslp' '_pspdf' +'gsnd' '_pspdf' +'gsort' '_sort' +'gsplit' '_split' +'gstat' '_gstat' +'gstdbuf' '_stdbuf' +'gstrings' '_strings' +'gstty' '_stty' +'gsum' '_cksum' +'gtac' '_tac' +'gtail' '_tail' +'gtar' '_tar' +'gtee' '_tee' +'gtimeout' '_timeout' +'gtouch' '_touch' +'gtr' '_tr' +'gtty' '_tty' +'guilt' '_guilt' +'guilt-add' '_guilt' +'guilt-applied' '_guilt' +'guilt-delete' '_guilt' +'guilt-files' '_guilt' +'guilt-fold' '_guilt' +'guilt-fork' '_guilt' +'guilt-header' '_guilt' +'guilt-help' '_guilt' +'guilt-import' '_guilt' +'guilt-import-commit' '_guilt' +'guilt-init' '_guilt' +'guilt-new' '_guilt' +'guilt-next' '_guilt' +'guilt-patchbomb' '_guilt' +'guilt-pop' '_guilt' +'guilt-prev' '_guilt' +'guilt-push' '_guilt' +'guilt-rebase' '_guilt' +'guilt-refresh' '_guilt' +'guilt-rm' '_guilt' +'guilt-series' '_guilt' +'guilt-status' '_guilt' +'guilt-top' '_guilt' +'guilt-unapplied' '_guilt' +'guname' '_uname' +'gunexpand' '_unexpand' +'guniq' '_uniq' +'gunzip' '_gzip' +'guptime' '_uptime' +'gv' '_gv' +'gview' '_vim' +'gvim' '_vim' +'gvimdiff' '_vim' +'gwc' '_wc' +'gwho' '_who' +'gxargs' '_xargs' +'gzcat' '_gzip' +'gzegrep' '_grep' +'gzfgrep' '_grep' +'gzgrep' '_grep' +'gzilla' '_webbrowser' +'gzip' '_gzip' +'hash' '_hash' +'hd' '_hexdump' +'hdiutil' '_hdiutil' +'head' '_head' +'heat' '_openstack' +'help' '_sccs' +'hexdump' '_hexdump' +'hilite' '_precommand' +'histed' '_zed' +'history' '_fc' +'host' '_host' +'hostname' '_hostname' +'hostnamectl' '_hostnamectl' +'hotjava' '_webbrowser' +'htop' '_htop' +'hwinfo' '_hwinfo' +'iceweasel' '_mozilla' +'icombine' '_ispell' +'iconv' '_iconv' +'iconvconfig' '_iconvconfig' +'id' '_id' +'identify' '_imagemagick' +'ifconfig' '_ifconfig' +'ifdown' '_net_interfaces' +'iftop' '_iftop' +'ifup' '_net_interfaces' +'ijoin' '_ispell' +'import' '_imagemagick' +'inc' '_mh' +'includeres' '_psutils' +'inetadm' '_inetadm' +'info' '_texinfo' +'infocmp' '_terminals' +'initctl' '_initctl' +'initdb' '_postgresql' +'insmod' '_modutils' +'install' '_install' +'install-info' '_texinfo' +'installpkg' '_pkgtool' +'integer' '_typeset' +'interdiff' '_patchutils' +'invoke-rc.d' '_invoke-rc.d' +'ionice' '_ionice' +'iostat' '_iostat' +'ip' '_ip' +'ip6tables' '_iptables' +'ip6tables-restore' '_iptables' +'ip6tables-save' '_iptables' +'ipadm' '_ipadm' +'ipfw' '_ipfw' +'ipkg' '_opkg' +'ipsec' '_ipsec' +'ipset' '_ipset' +'iptables' '_iptables' +'iptables-restore' '_iptables' +'iptables-save' '_iptables' +'irb' '_ruby' +'ironic' '_openstack' +'irssi' '_irssi' +'isag' '_sysstat' +'ispell' '_ispell' +'iwconfig' '_iwconfig' +'jadetex' '_tex' +'jail' '_jail' +'jar' '_java' +'jarsigner' '_java' +'java' '_java' +'javac' '_java' +'javadoc' '_java' +'javah' '_java' +'javap' '_java' +'jdb' '_java' +'jexec' '_jexec' +'jls' '_jls' +'jobs' '_jobs_builtin' +'joe' '_joe' +'join' '_join' +'jot' '_jot' +'journalctl' '_journalctl' +'jq' '_jq' +'kdeconnect-cli' '_kdeconnect' +'kdump' '_kdump' +'kernel-install' '_kernel-install' +'keystone' '_openstack' +'keytool' '_java' +'kfmclient' '_kfmclient' +'kill' '_kill' +'killall' '_killall' +'killall5' '_killall' +'kioclient' '_kfmclient' +'kldload' '_kld' +'kldunload' '_kld' +'knock' '_knock' +'konqueror' '_webbrowser' +'kpartx' '_kpartx' +'kpdf' '_pdf' +'ksh' '_sh' +'ksh88' '_sh' +'ksh93' '_sh' +'ktrace' '_ktrace' +'kvno' '_kvno' +'last' '_last' +'lastb' '_last' +'latex' '_tex' +'latexmk' '_tex' +'ldap' '_ldap' +'ldconfig' '_ldconfig' +'ldconfig.real' '_ldconfig' +'ldd' '_ldd' +'less' '_less' +'let' '_math' +'lf' '_lf' +'lftp' '_ncftp' +'lha' '_lha' +'light' '_webbrowser' +'lighty-disable-mod' '_lighttpd' +'lighty-enable-mod' '_lighttpd' +'limit' '_limit' +'links' '_links' +'links2' '_links' +'lintian' '_lintian' +'lintian-info' '_lintian' +'linux' '_uml' +'lldb' '_lldb' +'llvm-g++' '_gcc' +'llvm-gcc' '_gcc' +'llvm-objdump' '_objdump' +'llvm-otool' '_otool' +'ln' '_ln' +'loadkeys' '_loadkeys' +'local' '_typeset' +'locale' '_locale' +'localectl' '_localectl' +'localedef' '_localedef' +'locate' '_locate' +'log' '_nothing' +'logger' '_logger' +'loginctl' '_loginctl' +'logname' '_nothing' +'look' '_look' +'losetup' '_losetup' +'lp' '_lp' +'lpadmin' '_lp' +'lpinfo' '_lp' +'lpoptions' '_lp' +'lpq' '_lp' +'lpr' '_lp' +'lprm' '_lp' +'lpstat' '_lp' +'ls' '_ls' +'lsattr' '_lsattr' +'lsblk' '_lsblk' +'lscfg' '_lscfg' +'lsd' '_lsd' +'lsdev' '_lsdev' +'lsdiff' '_patchutils' +'lslv' '_lslv' +'lsmod' '_modutils' +'lsns' '_lsns' +'lsof' '_lsof' +'lspv' '_lspv' +'lsusb' '_lsusb' +'lsvg' '_lsvg' +'ltrace' '_ltrace' +'lua' '_lua' +'luarocks' '_luarocks' +'lynx' '_lynx' +'lz4' '_lz4' +'lz4c' '_lz4' +'lz4c32' '_lz4' +'lz4cat' '_lz4' +'lzcat' '_xz' +'lzma' '_xz' +'lzop' '_lzop' +'m-a' '_module-assistant' +'mac2unix' '_dos2unix' +'machinectl' '_machinectl' +'madison' '_madison' +'magnum' '_openstack' +'mail' '_mail' +'Mail' '_mail' +'mailx' '_mail' +'make' '_make' +'makeinfo' '_texinfo' +'make-kpkg' '_make-kpkg' +'makepkg' '_pkgtool' +'man' '_man' +'manage.py' '_django' +'manila' '_openstack' +'mark' '_mh' +'mat' '_mat' +'mat2' '_mat2' +'-math-' '_math' +'matlab' '_matlab' +'mattrib' '_mtools' +'mcd' '_mtools' +'mcopy' '_mtools' +'md2' '_cksum' +'md4' '_cksum' +'md5' '_cksum' +'md5sum' '_md5sum' +'mdadm' '_mdadm' +'mdel' '_mtools' +'mdeltree' '_mtools' +'mdfind' '_mdfind' +'mdir' '_mtools' +'mdls' '_mdls' +'mdu' '_mtools' +'mdutil' '_mdutil' +'members' '_members' +'mencal' '_mencal' +'mere' '_mere' +'merge' '_rcs' +'mergechanges' '_mergechanges' +'metaflac' '_flac' +'mformat' '_mtools' +'mgv' '_pspdf' +'mhfixmsg' '_mh' +'mhlist' '_mh' +'mhmail' '_mh' +'mhn' '_mh' +'mhparam' '_mh' +'mhpath' '_mh' +'mhshow' '_mh' +'mhstore' '_mh' +'mii-tool' '_mii-tool' +'mistral' '_openstack' +'mixerctl' '_mixerctl' +'mkdir' '_mkdir' +'mkfifo' '_mkfifo' +'mkisofs' '_growisofs' +'mknod' '_mknod' +'mksh' '_sh' +'mkshortcut' '_mkshortcut' +'mkshortcut.exe' '_mkshortcut' +'mktemp' '_mktemp' +'mktunes' '_gnupod' +'mktunes.pl' '_gnupod' +'mkzsh' '_mkzsh' +'mkzsh.exe' '_mkzsh' +'mlabel' '_mtools' +'mlocate' '_locate' +'mmd' '_mtools' +'mmm' '_webbrowser' +'mmount' '_mtools' +'mmove' '_mtools' +'modinfo' '_modutils' +'modprobe' '_modutils' +'module' '_module' +'module-assistant' '_module-assistant' +'mogrify' '_imagemagick' +'monasca' '_openstack' +'mondoarchive' '_mondo' +'montage' '_imagemagick' +'moosic' '_moosic' +'Mosaic' '_webbrowser' +'mosh' '_mosh' +'mount' '_mount' +'mozilla' '_mozilla' +'mozilla-firefox' '_mozilla' +'mozilla-xremote-client' '_mozilla' +'mpc' '_mpc' +'mplayer' '_mplayer' +'mpstat' '_sysstat' +'mpv' '_mpv' +'mr' '_myrepos' +'mrd' '_mtools' +'mread' '_mtools' +'mren' '_mtools' +'msgchk' '_mh' +'mt' '_mt' +'mtn' '_monotone' +'mtoolstest' '_mtools' +'mtr' '_mtr' +'mtype' '_mtools' +'munchlist' '_ispell' +'mupdf' '_mupdf' +'murano' '_openstack' +'mush' '_mail' +'mutt' '_mutt' +'mv' '_mv' +'mvim' '_vim' +'mvlc' '_vlc' +'mx' '_hosts' +'mysql' '_mysql_utils' +'mysqladmin' '_mysql_utils' +'mysqldiff' '_mysqldiff' +'mysqldump' '_mysql_utils' +'mysqlimport' '_mysql_utils' +'mysqlshow' '_mysql_utils' +'nail' '_mail' +'native2ascii' '_java' +'nautilus' '_nautilus' +'nawk' '_awk' +'nc' '_netcat' +'ncal' '_cal' +'ncftp' '_ncftp' +'ncl' '_nedit' +'nedit' '_nedit' +'nedit-nc' '_nedit' +'netcat' '_netcat' +'netrik' '_webbrowser' +'netscape' '_netscape' +'netstat' '_netstat' +'networkctl' '_networkctl' +'networksetup' '_networksetup' +'neutron' '_openstack' +'new' '_mh' +'newgrp' '_groups' +'next' '_mh' +'nginx' '_nginx' +'ngrep' '_ngrep' +'nice' '_nice' +'nkf' '_nkf' +'nl' '_nl' +'nm' '_nm' +'nmap' '_nmap' +'nmblookup' '_samba' +'nmcli' '_networkmanager' +'nocorrect' '_precommand' +'noglob' '_precommand' +'nohup' '_precommand' +'nova' '_openstack' +'npm' '_npm' +'ns' '_hosts' +'nsenter' '_nsenter' +'nslookup' '_nslookup' +'ntalk' '_other_accounts' +'numfmt' '_numfmt' +'nvim' '_vim' +'nvlc' '_vlc' +'nvram' '_nvram' +'objdump' '_objdump' +'od' '_od' +'odme' '_object_classes' +'odmget' '_object_classes' +'odmshow' '_object_classes' +'ogg123' '_vorbis' +'oggdec' '_vorbis' +'oggenc' '_vorbis' +'ogginfo' '_vorbis' +'oksh' '_sh' +'okular' '_okular' +'open' '_open' +'openstack' '_openstack' +'opera' '_webbrowser' +'opera-next' '_webbrowser' +'opkg' '_opkg' +'opusdec' '_opustools' +'opusenc' '_opustools' +'opusinfo' '_opustools' +'osascript' '_osascript' +'osc' '_osc' +'otool' '_otool' +'p4' '_perforce' +'p4d' '_perforce' +'pacat' '_pulseaudio' +'pack' '_pack' +'packf' '_mh' +'pacmd' '_pulseaudio' +'pactl' '_pulseaudio' +'padsp' '_pulseaudio' +'pandoc' '_pandoc' +'paplay' '_pulseaudio' +'-parameter-' '_parameter' +'parec' '_pulseaudio' +'parecord' '_pulseaudio' +'parsehdlist' '_urpmi' +'passwd' '_users' +'paste' '_paste' +'pasuspender' '_pulseaudio' +'patch' '_patch' +'pax' '_pax' +'pbcopy' '_pbcopy' +'pbpaste' '_pbcopy' +'pbuilder' '_pbuilder' +'pcat' '_pack' +'pcp-htop' '_htop' +'pcred' '_pids' +'pdf2dsc' '_pdf' +'pdf2ps' '_pdf' +'pdffonts' '_pdf' +'pdfimages' '_pdf' +'pdfinfo' '_pdf' +'pdfjadetex' '_tex' +'pdflatex' '_tex' +'pdfopt' '_pdf' +'pdftex' '_tex' +'pdftexi2dvi' '_texinfo' +'pdftk' '_pdftk' +'pdftopbm' '_pdf' +'pdftops' '_pdf' +'pdftotext' '_pdf' +'pdksh' '_sh' +'perf' '_perf' +'perl' '_perl' +'perldoc' '_perldoc' +'pfctl' '_pfctl' +'pfexec' '_pfexec' +'pfiles' '_pids' +'pflags' '_pids' +'pg_config' '_postgresql' +'pg_ctl' '_postgresql' +'pg_dump' '_postgresql' +'pg_dumpall' '_postgresql' +'pg_isready' '_postgresql' +'pgrep' '_pgrep' +'pg_restore' '_postgresql' +'pg_upgrade' '_postgresql' +'php' '_php' +'pick' '_mh' +'picocom' '_picocom' +'pidof' '_pidof' +'pidstat' '_sysstat' +'pigz' '_gzip' +'pine' '_pine' +'pinef' '_pine' +'pinfo' '_texinfo' +'ping' '_ping' +'ping6' '_ping' +'piuparts' '_piuparts' +'pkg' '_pkg5' +'pkg_add' '_bsd_pkg' +'pkgadd' '_pkgadd' +'pkg-config' '_pkg-config' +'pkg_create' '_bsd_pkg' +'pkg_delete' '_bsd_pkg' +'pkgin' '_pkgin' +'pkg_info' '_bsd_pkg' +'pkginfo' '_pkginfo' +'pkgrm' '_pkgrm' +'pkgtool' '_pkgtool' +'pkill' '_pgrep' +'pldd' '_pids' +'plutil' '_plutil' +'pmake' '_make' +'pman' '_perl_modules' +'pmap' '_pmap' +'pmcat' '_perl_modules' +'pmdesc' '_perl_modules' +'pmeth' '_perl_modules' +'pmexp' '_perl_modules' +'pmfunc' '_perl_modules' +'pmload' '_perl_modules' +'pmls' '_perl_modules' +'pmpath' '_perl_modules' +'pmvers' '_perl_modules' +'podgrep' '_perl_modules' +'podpath' '_perl_modules' +'podtoc' '_perl_modules' +'poff' '_pon' +'policytool' '_java' +'pon' '_pon' +'popd' '_directory_stack' +'portaudit' '_portaudit' +'portlint' '_portlint' +'portmaster' '_portmaster' +'portsnap' '_portsnap' +'postconf' '_postfix' +'postgres' '_postgresql' +'postmaster' '_postgresql' +'postqueue' '_postfix' +'postsuper' '_postfix' +'powerd' '_powerd' +'pr' '_pr' +'prev' '_mh' +'print' '_print' +'printenv' '_printenv' +'printf' '_print' +'procstat' '_procstat' +'prompt' '_prompt' +'prove' '_prove' +'prs' '_sccs' +'prstat' '_prstat' +'prt' '_sccs' +'prun' '_pids' +'ps' '_ps' +'ps2ascii' '_pspdf' +'ps2epsi' '_postscript' +'ps2pdf' '_postscript' +'ps2pdf12' '_postscript' +'ps2pdf13' '_postscript' +'ps2pdf14' '_postscript' +'ps2pdfwr' '_postscript' +'ps2ps' '_postscript' +'psbook' '_psutils' +'pscp' '_pscp' +'pscp.exe' '_pscp' +'psed' '_sed' +'psig' '_pids' +'psmerge' '_psutils' +'psmulti' '_postscript' +'psnup' '_psutils' +'psql' '_postgresql' +'psresize' '_psutils' +'psselect' '_psutils' +'pstack' '_pids' +'pstoedit' '_pspdf' +'pstop' '_pids' +'pstops' '_psutils' +'pstotgif' '_pspdf' +'pswrap' '_postscript' +'ptree' '_ptree' +'ptx' '_ptx' +'pulseaudio' '_pulseaudio' +'pump' '_pump' +'pushd' '_cd' +'putclip' '_putclip' +'putclip.exe' '_putclip' +'pv' '_pv' +'pwait' '_pids' +'pwdx' '_pids' +'pwgen' '_pwgen' +'pyhtmlizer' '_twisted' +'qdbus' '_qdbus' +'qiv' '_qiv' +'qtplay' '_qtplay' +'querybts' '_bug' +'quilt' '_quilt' +'qvlc' '_vlc' +'r' '_fc' +'rake' '_rake' +'ranlib' '_ranlib' +'rar' '_rar' +'rc' '_sh' +'rcctl' '_rcctl' +'rclone' '_rclone' +'rcp' '_rlogin' +'rcs' '_rcs' +'rcsdiff' '_rcs' +'rdesktop' '_rdesktop' +'read' '_read' +'readelf' '_readelf' +'readlink' '_readlink' +'readonly' '_typeset' +'readshortcut' '_readshortcut' +'readshortcut.exe' '_readshortcut' +'rebootin' '_rebootin' +'-redirect-' '_redirect' +'-redirect-,<,bunzip2' '_bzip2' +'-redirect-,<,bzip2' '_bzip2' +'-redirect-,>,bzip2' '_bzip2' +'-redirect-,<,compress' '_compress' +'-redirect-,>,compress' '_compress' +'-redirect-,-default-,-default-' '_files' +'-redirect-,<,gunzip' '_gzip' +'-redirect-,<,gzip' '_gzip' +'-redirect-,>,gzip' '_gzip' +'-redirect-,<,uncompress' '_compress' +'-redirect-,<,unxz' '_xz' +'-redirect-,<,xz' '_xz' +'-redirect-,>,xz' '_xz' +'refile' '_mh' +'rehash' '_hash' +'reindexdb' '_postgresql' +'reload' '_initctl' +'removepkg' '_pkgtool' +'remsh' '_rlogin' +'renice' '_renice' +'repl' '_mh' +'reportbug' '_bug' +'reprepro' '_reprepro' +'resolvectl' '_resolvectl' +'restart' '_initctl' +'retawq' '_webbrowser' +'rg' '_rg' +'rgrep' '_grep' +'rgview' '_vim' +'rgvim' '_vim' +'ri' '_ri' +'rlogin' '_rlogin' +'rm' '_rm' +'rmadison' '_madison' +'rmd160' '_cksum' +'rmdel' '_sccs' +'rmdir' '_rmdir' +'rmf' '_mh' +'rmic' '_java' +'rmid' '_java' +'rmiregistry' '_java' +'rmm' '_mh' +'rmmod' '_modutils' +'route' '_route' +'rpm' '_rpm' +'rpmbuild' '_rpm' +'rpmkeys' '_rpm' +'rpmquery' '_rpm' +'rpmsign' '_rpm' +'rpmspec' '_rpm' +'rpmverify' '_rpm' +'rrdtool' '_rrdtool' +'rsh' '_rlogin' +'rsync' '_rsync' +'rtin' '_tin' +'rubber' '_rubber' +'rubber-info' '_rubber' +'rubber-pipe' '_rubber' +'ruby' '_ruby' +'ruby-mri' '_ruby' +'run-help' '_run-help' +'rup' '_hosts' +'rusage' '_precommand' +'rview' '_vim' +'rvim' '_vim' +'rvlc' '_vlc' +'rwho' '_hosts' +'rxvt' '_urxvt' +'s2p' '_sed' +'sact' '_sccs' +'sadf' '_sysstat' +'sahara' '_openstack' +'sar' '_sysstat' +'savecore' '_savecore' +'say' '_say' +'sbuild' '_sbuild' +'scan' '_mh' +'sccs' '_sccs' +'sccsdiff' '_sccs' +'sched' '_sched' +'schedtool' '_schedtool' +'schroot' '_schroot' +'scl' '_scl' +'scons' '_scons' +'scp' '_ssh' +'screen' '_screen' +'script' '_script' +'scriptreplay' '_script' +'scselect' '_scselect' +'sc_usage' '_sc_usage' +'scutil' '_scutil' +'seaf-cli' '_seafile' +'sed' '_sed' +'senlin' '_openstack' +'seq' '_seq' +'serialver' '_java' +'service' '_service' +'set' '_set' +'setfacl' '_setfacl' +'setfacl.exe' '_setfacl' +'setfattr' '_attr' +'setopt' '_setopt' +'setpriv' '_setpriv' +'setsid' '_setsid' +'setxkbmap' '_setxkbmap' +'sftp' '_ssh' +'sh' '_sh' +'sha1' '_cksum' +'sha1sum' '_md5sum' +'sha224sum' '_md5sum' +'sha256' '_cksum' +'sha256sum' '_md5sum' +'sha384' '_cksum' +'sha384sum' '_md5sum' +'sha512' '_cksum' +'sha512sum' '_md5sum' +'sha512t256' '_cksum' +'shasum' '_shasum' +'shift' '_arrays' +'show' '_mh' +'showchar' '_psutils' +'showmount' '_showmount' +'shred' '_shred' +'shuf' '_shuf' +'shutdown' '_shutdown' +'signify' '_signify' +'sisu' '_sisu' +'skein1024' '_cksum' +'skein256' '_cksum' +'skein512' '_cksum' +'skipstone' '_webbrowser' +'slabtop' '_slabtop' +'slitex' '_tex' +'slocate' '_locate' +'slogin' '_ssh' +'slrn' '_slrn' +'smartctl' '_smartmontools' +'smbclient' '_samba' +'smbcontrol' '_samba' +'smbstatus' '_samba' +'smit' '_smit' +'smitty' '_smit' +'snoop' '_snoop' +'soa' '_hosts' +'socket' '_socket' +'sockstat' '_sockstat' +'softwareupdate' '_softwareupdate' +'sort' '_sort' +'sortm' '_mh' +'source' '_source' +'spamassassin' '_spamassassin' +'split' '_split' +'splitdiff' '_patchutils' +'sqlite' '_sqlite' +'sqlite3' '_sqlite' +'sqsh' '_sqsh' +'sr' '_surfraw' +'srptool' '_gnutls' +'ss' '_ss' +'ssh' '_ssh' +'ssh-add' '_ssh' +'ssh-agent' '_ssh' +'ssh-copy-id' '_ssh' +'sshfs' '_sshfs' +'ssh-keygen' '_ssh' +'ssh-keyscan' '_ssh' +'star' '_tar' +'start' '_initctl' +'stat' '_stat' +'status' '_initctl' +'stdbuf' '_stdbuf' +'stg' '_stgit' +'stop' '_initctl' +'stow' '_stow' +'strace' '_strace' +'strace64' '_strace' +'strftime' '_strftime' +'strings' '_strings' +'strip' '_strip' +'strongswan' '_ipsec' +'stty' '_stty' +'su' '_su' +'subl' '_sublimetext' +'-subscript-' '_subscript' +'sudo' '_sudo' +'sudoedit' '_sudo' +'sum' '_cksum' +'surfraw' '_surfraw' +'SuSEconfig' '_SUSEconfig' +'sv' '_runit' +'svcadm' '_svcadm' +'svccfg' '_svccfg' +'svcprop' '_svcprop' +'svcs' '_svcs' +'svlc' '_vlc' +'svn' '_subversion' +'svnadmin' '_subversion' +'svnadmin-static' '_subversion' +'svn-buildpackage' '_svn-buildpackage' +'svnlite' '_subversion' +'svnliteadmin' '_subversion' +'swaks' '_swaks' +'swanctl' '_swanctl' +'swift' '_swift' +'swiftc' '_swift' +'sw_vers' '_sw_vers' +'sync' '_nothing' +'sysclean' '_sysclean' +'sysctl' '_sysctl' +'sysmerge' '_sysmerge' +'syspatch' '_syspatch' +'sysrc' '_sysrc' +'systat' '_systat' +'systemctl' '_systemctl' +'systemd-analyze' '_systemd-analyze' +'systemd-ask-password' '_systemd' +'systemd-cat' '_systemd' +'systemd-cgls' '_systemd' +'systemd-cgtop' '_systemd' +'systemd-delta' '_systemd-delta' +'systemd-detect-virt' '_systemd' +'systemd-inhibit' '_systemd-inhibit' +'systemd-machine-id-setup' '_systemd' +'systemd-notify' '_systemd' +'systemd-nspawn' '_systemd-nspawn' +'systemd-path' '_systemd-path' +'systemd-resolve' '_resolvectl' +'systemd-run' '_systemd-run' +'systemd-tmpfiles' '_systemd-tmpfiles' +'systemd-tty-ask-password-agent' '_systemd' +'system_profiler' '_system_profiler' +'sysupgrade' '_sysupgrade' +'tac' '_tac' +'tacker' '_openstack' +'tail' '_tail' +'talk' '_other_accounts' +'tar' '_tar' +'tardy' '_tardy' +'tcpdump' '_tcpdump' +'tcp_open' '_tcpsys' +'tcptraceroute' '_tcptraceroute' +'tcsh' '_sh' +'tda' '_devtodo' +'tdd' '_devtodo' +'tde' '_devtodo' +'tdr' '_devtodo' +'tee' '_tee' +'telnet' '_telnet' +'tex' '_tex' +'texi2any' '_texinfo' +'texi2dvi' '_texinfo' +'texi2pdf' '_texinfo' +'texindex' '_texinfo' +'tg' '_topgit' +'tidy' '_tidy' +'tig' '_git' +'-tilde-' '_tilde' +'time' '_precommand' +'timedatectl' '_timedatectl' +'timeout' '_timeout' +'times' '_nothing' +'tin' '_tin' +'tkconch' '_twisted' +'tkinfo' '_texinfo' +'tla' '_tla' +'tload' '_tload' +'tmux' '_tmux' +'todo' '_devtodo' +'todo.sh' '_todo.sh' +'toilet' '_toilet' +'top' '_top' +'totdconfig' '_totd' +'touch' '_touch' +'tpb' '_tpb' +'tpkg-debarch' '_toolchain-source' +'tpkg-install' '_toolchain-source' +'tpkg-install-libc' '_toolchain-source' +'tpkg-make' '_toolchain-source' +'tpkg-update' '_toolchain-source' +'tput' '_tput' +'tr' '_tr' +'tracepath' '_tracepath' +'tracepath6' '_tracepath' +'traceroute' '_hosts' +'transmission-remote' '_transmission' +'trap' '_trap' +'trash' '_trash' +'tree' '_tree' +'trial' '_twisted' +'trove' '_openstack' +'true' '_nothing' +'truncate' '_truncate' +'truss' '_truss' +'tryaffix' '_ispell' +'tty' '_tty' +'ttyctl' '_ttyctl' +'tunctl' '_uml' +'tune2fs' '_tune2fs' +'tunes2pod' '_gnupod' +'tunes2pod.pl' '_gnupod' +'twidge' '_twidge' +'twist' '_twisted' +'twistd' '_twisted' +'txt' '_hosts' +'type' '_which' +'typeset' '_typeset' +'udevadm' '_udevadm' +'ulimit' '_ulimit' +'uml_mconsole' '_uml' +'uml_moo' '_uml' +'uml_switch' '_uml' +'umount' '_mount' +'unace' '_unace' +'unalias' '_aliases' +'uname' '_uname' +'uncompress' '_compress' +'unexpand' '_unexpand' +'unfunction' '_functions' +'unget' '_sccs' +'unhash' '_unhash' +'uniq' '_uniq' +'unison' '_unison' +'units' '_units' +'unix2dos' '_dos2unix' +'unix2mac' '_dos2unix' +'unlimit' '_limits' +'unlz4' '_lz4' +'unlzma' '_xz' +'unpack' '_pack' +'unpigz' '_gzip' +'unrar' '_rar' +'unset' '_vars' +'unsetopt' '_setopt' +'unshare' '_unshare' +'unwrapdiff' '_patchutils' +'unxz' '_xz' +'unzip' '_zip' +'update-alternatives' '_update-alternatives' +'update-rc.d' '_update-rc.d' +'upgradepkg' '_pkgtool' +'uptime' '_uptime' +'urpme' '_urpmi' +'urpmf' '_urpmi' +'urpmi' '_urpmi' +'urpmi.addmedia' '_urpmi' +'urpmi.removemedia' '_urpmi' +'urpmi.update' '_urpmi' +'urpmq' '_urpmi' +'urxvt' '_urxvt' +'urxvt256c' '_urxvt' +'urxvt256cc' '_urxvt' +'urxvt256c-ml' '_urxvt' +'urxvt256c-mlc' '_urxvt' +'urxvtc' '_urxvt' +'usbconfig' '_usbconfig' +'uscan' '_uscan' +'useradd' '_user_admin' +'userdel' '_users' +'usermod' '_user_admin' +'vacuumdb' '_postgresql' +'val' '_sccs' +'valgrind' '_valgrind' +'-value-' '_value' +'-value-,ADB_TRACE,-default-' '_adb' +'-value-,ANDROID_LOG_TAGS,-default-' '_adb' +'-value-,ANDROID_SERIAL,-default-' '_adb' +'-value-,ANSIBLE_INVENTORY_ENABLED,-default-' '_ansible' +'-value-,ANSIBLE_STDOUT_CALLBACK,-default-' '_ansible' +'-value-,ANT_ARGS,-default-' '_ant' +'-value-,CFLAGS,-default-' '_gcc' +'-value-,CPPFLAGS,-default-' '_gcc' +'-value-,CXXFLAGS,-default-' '_gcc' +'-value-,-default-,-command-' '_zargs' +'-value-,-default-,-default-' '_value' +'-value-,DISPLAY,-default-' '_x_display' +'-value-,GREP_OPTIONS,-default-' '_grep' +'-value-,GZIP,-default-' '_gzip' +'-value-,LANG,-default-' '_locales' +'-value-,LANGUAGE,-default-' '_locales' +'-value-,LD_DEBUG,-default-' '_ld_debug' +'-value-,LDFLAGS,-default-' '_gcc' +'-value-,LESSCHARSET,-default-' '_less' +'-value-,LESS,-default-' '_less' +'-value-,LOOPDEV_DEBUG,-default-' '_losetup' +'-value-,LPDEST,-default-' '_printers' +'-value-,MPD_HOST,-default' '_mpc' +'-value-,P4CLIENT,-default-' '_perforce' +'-value-,P4MERGE,-default-' '_perforce' +'-value-,P4PORT,-default-' '_perforce' +'-value-,P4USER,-default-' '_perforce' +'-value-,PERLDOC,-default-' '_perldoc' +'-value-,PRINTER,-default-' '_printers' +'-value-,PROMPT2,-default-' '_ps1234' +'-value-,PROMPT3,-default-' '_ps1234' +'-value-,PROMPT4,-default-' '_ps1234' +'-value-,PROMPT,-default-' '_ps1234' +'-value-,PS1,-default-' '_ps1234' +'-value-,PS2,-default-' '_ps1234' +'-value-,PS3,-default-' '_ps1234' +'-value-,PS4,-default-' '_ps1234' +'-value-,RPROMPT2,-default-' '_ps1234' +'-value-,RPROMPT,-default-' '_ps1234' +'-value-,RPS1,-default-' '_ps1234' +'-value-,RPS2,-default-' '_ps1234' +'-value-,SPROMPT,-default-' '_ps1234' +'-value-,TERM,-default-' '_terminals' +'-value-,TERMINFO_DIRS,-default-' '_dir_list' +'-value-,TZ,-default-' '_time_zone' +'-value-,VALGRIND_OPTS,-default-' '_valgrind' +'-value-,WWW_HOME,-default-' '_urls' +'-value-,XML_CATALOG_FILES,-default-' '_xmlsoft' +'-value-,XZ_DEFAULTS,-default-' '_xz' +'-value-,XZ_OPT,-default-' '_xz' +'-vared-' '_in_vared' +'vared' '_vared' +'vcs_info_hookadd' '_vcs_info' +'vcs_info_hookdel' '_vcs_info' +'vi' '_vi' +'view' '_vi' +'vim' '_vim' +'vim-addons' '_vim-addons' +'vimdiff' '_vim' +'virsh' '_libvirt' +'virt-admin' '_libvirt' +'virt-host-validate' '_libvirt' +'virt-pki-validate' '_libvirt' +'virt-xml-validate' '_libvirt' +'visudo' '_visudo' +'vitrage' '_openstack' +'vlc' '_vlc' +'vmctl' '_vmctl' +'vmstat' '_vmstat' +'vncserver' '_vnc' +'vncviewer' '_vnc' +'vorbiscomment' '_vorbis' +'vpnc' '_vpnc' +'vpnc-connect' '_vpnc' +'vserver' '_vserver' +'w' '_w' +'w3m' '_w3m' +'wait' '_wait' +'wajig' '_wajig' +'wanna-build' '_wanna-build' +'watch' '_watch' +'watcher' '_openstack' +'wc' '_wc' +'wget' '_wget' +'what' '_sccs' +'whatis' '_man' +'whence' '_which' +'where' '_which' +'whereis' '_whereis' +'which' '_which' +'who' '_who' +'whoami' '_nothing' +'whois' '_whois' +'whom' '_mh' +'wiggle' '_wiggle' +'wipefs' '_wipefs' +'wodim' '_cdrecord' +'wpa_cli' '_wpa_cli' +'write' '_users_on' +'www' '_webbrowser' +'xargs' '_xargs' +'xattr' '_attr' +'xauth' '_xauth' +'xautolock' '_xautolock' +'xclip' '_xclip' +'xcode-select' '_xcode-select' +'xdpyinfo' '_x_utils' +'xdvi' '_xdvi' +'xelatex' '_tex' +'xetex' '_tex' +'xev' '_x_utils' +'xfd' '_x_utils' +'xfig' '_xfig' +'xfontsel' '_x_utils' +'xfreerdp' '_rdesktop' +'xhost' '_x_utils' +'xinput' '_xinput' +'xkill' '_x_utils' +'xli' '_xloadimage' +'xloadimage' '_xloadimage' +'xlsatoms' '_x_utils' +'xlsclients' '_x_utils' +'xml' '_xmlstarlet' +'xmllint' '_xmlsoft' +'xmlstarlet' '_xmlstarlet' +'xmms2' '_xmms2' +'xmodmap' '_xmodmap' +'xmosaic' '_webbrowser' +'xon' '_x_utils' +'xournal' '_xournal' +'xpdf' '_xpdf' +'xping' '_hosts' +'xprop' '_x_utils' +'xrandr' '_xrandr' +'xrdb' '_x_utils' +'xscreensaver-command' '_xscreensaver' +'xset' '_xset' +'xsetbg' '_xloadimage' +'xsetroot' '_x_utils' +'xsltproc' '_xmlsoft' +'xterm' '_xterm' +'xtightvncviewer' '_vnc' +'xtp' '_imagemagick' +'xv' '_xv' +'xview' '_xloadimage' +'xvnc4viewer' '_vnc' +'xvncviewer' '_vnc' +'xwallpaper' '_xwallpaper' +'xwd' '_x_utils' +'xwininfo' '_x_utils' +'xwit' '_xwit' +'xwud' '_x_utils' +'xxd' '_xxd' +'xz' '_xz' +'xzcat' '_xz' +'yafc' '_yafc' +'yash' '_sh' +'yast' '_yast' +'yast2' '_yast' +'ypbind' '_yp' +'ypcat' '_yp' +'ypmatch' '_yp' +'yppasswd' '_yp' +'yppoll' '_yp' +'yppush' '_yp' +'ypserv' '_yp' +'ypset' '_yp' +'ypwhich' '_yp' +'ypxfr' '_yp' +'ytalk' '_other_accounts' +'yum' '_yum' +'yumdb' '_yum' +'zargs' '_zargs' +'zathura' '_zathura' +'zcalc' '_zcalc' +'-zcalc-line-' '_zcalc_line' +'zcat' '_zcat' +'zcompile' '_zcompile' +'zcp' '_zmv' +'zdb' '_zfs' +'zdelattr' '_zattr' +'zdump' '_zdump' +'zeal' '_zeal' +'zed' '_zed' +'zegrep' '_grep' +'zen' '_webbrowser' +'zf_chgrp' '_chown' +'zf_chmod' '_chmod' +'zf_chown' '_chown' +'zfgrep' '_grep' +'zf_ln' '_ln' +'zf_mkdir' '_mkdir' +'zf_mv' '_mv' +'zf_rm' '_rm' +'zf_rmdir' '_rmdir' +'zfs' '_zfs' +'zgetattr' '_zattr' +'zgrep' '_grep' +'zip' '_zip' +'zipinfo' '_zip' +'zle' '_zle' +'zlistattr' '_zattr' +'zln' '_zmv' +'zlogin' '_zlogin' +'zmail' '_mail' +'zmodload' '_zmodload' +'zmv' '_zmv' +'zone' '_hosts' +'zoneadm' '_zoneadm' +'zparseopts' '_zparseopts' +'zpool' '_zfs' +'zpty' '_zpty' +'zsetattr' '_zattr' +'zsh' '_zsh' +'zsh-mime-handler' '_zsh-mime-handler' +'zsocket' '_zsocket' +'zstat' '_stat' +'zstyle' '_zstyle' +'ztodo' '_ztodo' +'zun' '_openstack' +'zxpdf' '_xpdf' +'zypper' '_zypper' +) + +_services=( +'bzcat' 'bunzip2' +'dch' 'debchange' +'gchgrp' 'chgrp' +'gchown' 'chown' +'gnupod_addsong.pl' 'gnupod_addsong' +'gnupod_check.pl' 'gnupod_check' +'gnupod_INIT.pl' 'gnupod_INIT' +'gnupod_search.pl' 'gnupod_search' +'gpg2' 'gpg' +'gzcat' 'gunzip' +'iceweasel' 'firefox' +'lzcat' 'unxz' +'lzma' 'xz' +'Mail' 'mail' +'mailx' 'mail' +'mktunes.pl' 'mktunes' +'nail' 'mail' +'ncl' 'nc' +'nedit-nc' 'nc' +'pcat' 'unpack' +'-redirect-,<,bunzip2' 'bunzip2' +'-redirect-,<,bzip2' 'bzip2' +'-redirect-,>,bzip2' 'bunzip2' +'-redirect-,<,compress' 'compress' +'-redirect-,>,compress' 'uncompress' +'-redirect-,<,gunzip' 'gunzip' +'-redirect-,<,gzip' 'gzip' +'-redirect-,>,gzip' 'gunzip' +'-redirect-,<,uncompress' 'uncompress' +'-redirect-,<,unxz' 'unxz' +'-redirect-,<,xz' 'xz' +'-redirect-,>,xz' 'unxz' +'remsh' 'rsh' +'slogin' 'ssh' +'svnadmin-static' 'svnadmin' +'svnlite' 'svn' +'svnliteadmin' 'svnadmin' +'tunes2pod.pl' 'tunes2pod' +'unlzma' 'unxz' +'xelatex' 'latex' +'xetex' 'tex' +'xzcat' 'unxz' +'zf_chgrp' 'chgrp' +'zf_chown' 'chown' +) + +_patcomps=( +'*/(init|rc[0-9S]#).d/*' '_init_d' +) + +_postpatcomps=( +'_*' '_compadd' +'c++-*' '_gcc' +'g++-*' '_gcc' +'gcc-*' '_gcc' +'gem[0-9.]#' '_gem' +'lua[0-9.-]##' '_lua' +'(p[bgpn]m*|*top[bgpn]m)' '_pbm' +'php[0-9.-]' '_php' +'pip[0-9.]#' '_pip' +'pydoc[0-9.]#' '_pydoc' +'python[0-9.]#' '_python' +'qemu(|-system-*)' '_qemu' +'(ruby|[ei]rb)[0-9.]#' '_ruby' +'shasum(|5).*' '_shasum' +'(texi(2*|ndex))' '_texi' +'(tiff*|*2tiff|pal2rgb)' '_tiff' +'-value-,(ftp|http(|s))_proxy,-default-' '_urls' +'-value-,LC_*,-default-' '_locales' +'-value-,*path,-default-' '_directories' +'-value-,*PATH,-default-' '_dir_list' +'-value-,RUBY(LIB|OPT|PATH),-default-' '_ruby' +'*/X11(|R<4->)/*' '_x_arguments' +'yodl(|2*)' '_yodl' +'zf*' '_zftp' +) + +_compautos=( +'_call_program' '+X' +) + +zle -C _bash_complete-word .complete-word _bash_completions +zle -C _bash_list-choices .list-choices _bash_completions +zle -C _complete_debug .complete-word _complete_debug +zle -C _complete_help .complete-word _complete_help +zle -C _complete_tag .complete-word _complete_tag +zle -C _correct_filename .complete-word _correct_filename +zle -C _correct_word .complete-word _correct_word +zle -C _expand_alias .complete-word _expand_alias +zle -C _expand_word .complete-word _expand_word +zle -C _history-complete-newer .complete-word _history_complete_word +zle -C _history-complete-older .complete-word _history_complete_word +zle -C _list_expansions .list-choices _expand_word +zle -C _most_recent_file .complete-word _most_recent_file +zle -C _next_tags .list-choices _next_tags +zle -C _read_comp .complete-word _read_comp +bindkey '^X^R' _read_comp +bindkey '^X?' _complete_debug +bindkey '^XC' _correct_filename +bindkey '^Xa' _expand_alias +bindkey '^Xc' _correct_word +bindkey '^Xd' _list_expansions +bindkey '^Xe' _expand_word +bindkey '^Xh' _complete_help +bindkey '^Xm' _most_recent_file +bindkey '^Xn' _next_tags +bindkey '^Xt' _complete_tag +bindkey '^X~' _bash_list-choices +bindkey '^[,' _history-complete-newer +bindkey '^[/' _history-complete-older +bindkey '^[~' _bash_complete-word + +autoload -Uz _alacritty _bootctl _busctl _bwrap _ctr \ + _curl _docker _dpkg-parsechangelog _flatpak _hostnamectl \ + _journalctl _kernel-install _lf _localectl _loginctl \ + _lsd _machinectl _mpv _networkctl _pulseaudio \ + _resolvectl _rg _sd_hosts_or_user_at_host _sd_machines _sd_outputmodes \ + _sd_unit_files _systemctl _systemd _systemd-analyze _systemd-delta \ + _systemd-inhibit _systemd-nspawn _systemd-path _systemd-run _systemd-tmpfiles \ + _timedatectl _udevadm _vlc _xwallpaper _zathura \ + _cdr _floppy _logical_volumes _lscfg _lsdev \ + _lslv _lspv _lsvg _object_classes _physical_volumes \ + _smit _volume_groups _bsdconfig _bsd_disks _bsdinstall \ + _bsd_pkg _chflags _csup _cu _cvsup \ + _fbsd_architectures _fbsd_device_types _fetch _file_flags _freebsd-update \ + _fstat _fw_update _gstat _ipfw _jail \ + _jails _jexec _jls _jot _kdump \ + _kld _ktrace _ktrace_points _ldap _login_classes \ + _mixerctl _nbsd_architectures _obsd_architectures _pfctl _pkgin \ + _portaudit _portlint _portmaster _portsnap _powerd \ + _procstat _rcctl _routing_domains _routing_tables _signify \ + _sockstat _sysclean _sysmerge _syspatch _sysrc \ + _systat _sysupgrade _usbconfig _vmctl _watch-snoop \ + _all_labels _all_matches _alternative _approximate _arg_compile \ + _arguments _bash_completions _cache_invalid _call_function _combination \ + _complete _complete_debug _complete_help _complete_help_generic _complete_tag \ + _comp_locale _correct _correct_filename _correct_word _describe \ + _description _dispatch _expand _expand_alias _expand_word \ + _extensions _external_pwds _generic _guard _history \ + _history_complete_word _ignored _list _main_complete _match \ + _menu _message _most_recent_file _multi_parts _next_label \ + _next_tags _normal _nothing _numbers _oldlist \ + _pick_variant _prefix _read_comp _regex_arguments _regex_words \ + _requested _retrieve_cache _sep_parts _sequence _set_command \ + _setup _store_cache _sub_commands _tags _user_expand \ + _values _wanted _cygcheck _cygpath _cygrunsrv \ + _cygserver _cygstart _dumper _getclip _mkshortcut \ + _mkzsh _pscp _putclip _readshortcut _caffeinate \ + _defaults _fink _fs_usage _hdiutil _mac_applications \ + _mac_files_for_application _mdfind _mdls _mdutil _networksetup \ + _nvram _open _osascript _otool _pbcopy \ + _plutil _qtplay _retrieve_mac_apps _say _scselect \ + _sc_usage _scutil _softwareupdate _sw_vers _system_profiler \ + _trash _xcode-select _a2utils _apt _apt-file \ + _aptitude _apt-move _apt-show-versions _auto-apt _axi-cache \ + _bts _bug _cdbs-edit-patch _dak _dchroot \ + _dchroot-dsa _dcut _deb_architectures _debbugs_bugnumber _debchange \ + _debcheckout _deb_codenames _debdiff _deb_files _debfoster \ + _deborphan _deb_packages _debsign _debsnap _debuild \ + _dlocate _dpatch-edit-patch _dpkg _dpkg-buildpackage _dpkg-cross \ + _dpkg-repack _dpkg_source _dput _dscverify _dupload \ + _git-buildpackage _grep-excuses _invoke-rc.d _lighttpd _lintian \ + _madison _make-kpkg _members _mergechanges _module-assistant \ + _pbuilder _piuparts _reprepro _sbuild _schroot \ + _svn-buildpackage _toolchain-source _update-alternatives _update-rc.d _uscan \ + _vim-addons _wajig _wanna-build _acpi _acpitool \ + _alsa-utils _analyseplugin _basenc _brctl _btrfs \ + _capabilities _chattr _chcon _choom _chrt \ + _cpupower _cryptsetup _dkms _e2label _ethtool \ + _findmnt _free _fuse_arguments _fusermount _fuse_values \ + _gpasswd _htop _iconvconfig _ionice _ipset \ + _iptables _iwconfig _kpartx _losetup _lsattr \ + _lsblk _lsns _lsusb _ltrace _mat \ + _mat2 _mdadm _mii-tool _modutils _mondo \ + _networkmanager _nsenter _opkg _perf _pidof \ + _pkgtool _pmap _qdbus _schedtool _selinux_contexts \ + _selinux_roles _selinux_types _selinux_users _setpriv _setsid \ + _slabtop _ss _sshfs _strace _sysstat \ + _tload _tpb _tracepath _tune2fs _uml \ + _unshare _valgrind _vserver _wakeup_capable_devices _wipefs \ + _wpa_cli _rebootin _urpmi _dnf _rpm \ + _scl _yum _beadm _be_name _coreadm \ + _dhcpinfo _dladm _dtrace _dumpadm _flowadm \ + _fmadm _inetadm _ipadm _pfexec _pkg5 \ + _prstat _ptree _savecore _snoop _svcadm \ + _svccfg _svcprop _svcs _svcs_fmri _zlogin \ + _zoneadm _zones _a2ps _aap _abcde \ + _absolute_command_paths _ack _adb _ansible _ant \ + _antiword _apachectl _apm _arch_archives _arch_namespace \ + _arp _arping _asciidoctor _asciinema _at \ + _attr _augeas _avahi _awk _base64 \ + _basename _bash _baudrates _baz _beep \ + _bibtex _bind_addresses _bison _bittorrent _bogofilter \ + _bpf_filters _bpython _bzip2 _bzr _cabal \ + _cal _calendar _canonical_paths _cat _ccal \ + _cdcd _cdrdao _cdrecord _chkconfig _chmod \ + _chown _chroot _chsh _cksum _clay \ + _cmdambivalent _cmdstring _cmp _column _comm \ + _composer _compress _configure _cowsay _cp \ + _cpio _cplay _crontab _cscope _csplit \ + _cssh _ctags _ctags_tags _curl _cut \ + _cvs _darcs _date _date_formats _dates \ + _dbus _dconf _dd _devtodo _df \ + _dhclient _dict _dict_words _diff _diff3 \ + _diff_options _diffstat _dig _directories _dir_list \ + _django _dmesg _dmidecode _dns_types _doas \ + _domains _dos2unix _drill _dropbox _dsh \ + _dtruss _du _dvi _ecasound _ed \ + _elfdump _elinks _email_addresses _enscript _entr \ + _env _espeak _etags _fakeroot _feh \ + _fetchmail _ffmpeg _figlet _file_modes _files \ + _file_systems _find _find_net_interfaces _finger _flac \ + _flex _fmt _fold _fortune _fsh \ + _fuser _gcc _gcore _gdb _gem \ + _genisoimage _getconf _getent _getfacl _getmail \ + _getopt _ghostscript _git _global _global_tags \ + _gnu_generic _gnupod _gnutls _go _gpg \ + _gphoto2 _gprof _gradle _graphicsmagick _grep \ + _groff _groups _growisofs _gsettings _guilt \ + _gzip _have_glob_qual _head _hexdump _host \ + _hostname _hosts _iconv _id _ifconfig \ + _iftop _imagemagick _initctl _init_d _install \ + _iostat _ip _ipsec _irssi _ispell \ + _java _java_class _joe _join _jq \ + _killall _knock _kvno _last _ldconfig \ + _ldd _ld_debug _less _lha _libvirt \ + _links _list_files _lldb _ln _loadkeys \ + _locale _localedef _locales _locate _logger \ + _look _lp _ls _lsof _lua \ + _luarocks _lynx _lz4 _lzop _mail \ + _mailboxes _make _man _md5sum _mencal \ + _mh _mime_types _mkdir _mkfifo _mknod \ + _mktemp _module _monotone _moosic _mosh \ + _mount _mpc _mt _mtools _mtr \ + _mutt _mv _my_accounts _myrepos _mysqldiff \ + _mysql_utils _ncftp _netcat _net_interfaces _netstat \ + _newsgroups _nginx _ngrep _nice _nkf \ + _nl _nm _nmap _npm _nslookup \ + _numfmt _objdump _object_files _od _openstack \ + _opustools _other_accounts _pack _pandoc _paste \ + _patch _patchutils _path_commands _path_files _pax \ + _pbm _pdf _perforce _perl _perl_basepods \ + _perldoc _perl_modules _pgids _pgrep _php \ + _picocom _pids _pine _ping _pip \ + _pkgadd _pkg-config _pkginfo _pkg_instance _pkgrm \ + _pon _ports _postfix _postgresql _postscript \ + _pr _printenv _printers _process_names _prove \ + _ps _pspdf _psutils _ptx _pump \ + _pv _pwgen _pydoc _python _python_modules \ + _qemu _quilt _rake _ranlib _rar \ + _rclone _rcs _readelf _readlink _remote_files \ + _renice _ri _rlogin _rm _rmdir \ + _route _rrdtool _rsync _rubber _ruby \ + _runit _samba _sccs _scons _screen \ + _script _seafile _sed _seq _service \ + _services _setfacl _sh _shasum _showmount \ + _shred _shuf _shutdown _signals _sisu \ + _slrn _smartmontools _socket _sort _spamassassin \ + _split _sqlite _sqsh _ssh _ssh_hosts \ + _stat _stdbuf _stgit _stow _strings \ + _strip _stty _su _subversion _sudo \ + _surfraw _swaks _swanctl _swift _sys_calls \ + _sysctl _tac _tail _tar _tar_archive \ + _tardy _tcpdump _tcptraceroute _tee _telnet \ + _terminals _tex _texi _texinfo _tidy \ + _tiff _tilde_files _timeout _time_zone _tin \ + _tla _tmux _todo.sh _toilet _top \ + _topgit _totd _touch _tput _tr \ + _transmission _tree _truncate _truss _tty \ + _ttys _twidge _twisted _umountable _unace \ + _uname _unexpand _uniq _unison _units \ + _uptime _urls _user_admin _user_at_host _users \ + _users_on _vi _vim _visudo _vmstat \ + _vorbis _vpnc _w _w3m _watch \ + _wc _webbrowser _wget _whereis _who \ + _whois _wiggle _xargs _xmlsoft _xmlstarlet \ + _xmms2 _xxd _xz _yafc _yodl \ + _yp _zcat _zdump _zfs _zfs_dataset \ + _zfs_pool _zip _zsh _acroread _code \ + _dcop _eog _evince _geany _gnome-gv \ + _gqview _gv _kdeconnect _kfmclient _matlab \ + _mozilla _mplayer _mupdf _nautilus _nedit \ + _netscape _okular _pdftk _qiv _rdesktop \ + _setxkbmap _sublimetext _urxvt _vnc _x_arguments \ + _xauth _xautolock _x_borderwidth _xclip _x_color \ + _x_colormapid _x_cursor _x_display _xdvi _x_extension \ + _xfig _x_font _xft_fonts _x_geometry _xinput \ + _x_keysym _xloadimage _x_locale _x_modifier _xmodmap \ + _x_name _xournal _xpdf _xrandr _x_resource \ + _xscreensaver _x_selection_timeout _xset _xt_arguments _xterm \ + _x_title _xt_session_id _x_utils _xv _x_visual \ + _x_window _xwit _zeal _add-zle-hook-widget _add-zsh-hook \ + _alias _aliases __arguments _arrays _assign \ + _autocd _bindkey _brace_parameter _builtin _cd \ + _command _command_names _compadd _compdef _completers \ + _condition _default _delimiters _directory_stack _dirs \ + _disable _dynamic_directory_name _echotc _echoti _emulate \ + _enable _equal _exec _fc _file_descriptors \ + _first _functions _globflags _globqual_delims _globquals \ + _hash _history_modifiers _in_vared _jobs _jobs_bg \ + _jobs_builtin _jobs_fg _kill _limit _limits \ + _math _math_params _mere _module_math_func _options \ + _options_set _options_unset _parameter _parameters _precommand \ + _print _prompt _ps1234 _read _redirect \ + _run-help _sched _set _setopt _source \ + _strftime _subscript _suffix_alias_files _tcpsys _tilde \ + _trap _ttyctl _typeset _ulimit _unhash \ + _user_math_func _value _vared _vars _vcs_info \ + _vcs_info_hooks _wait _which _widgets _zargs \ + _zattr _zcalc _zcalc_line _zcompile _zed \ + _zftp _zle _zmodload _zmv _zparseopts \ + _zpty _zsh-mime-handler _zsocket _zstyle _ztodo \ + _hwinfo _osc _SUSEconfig _yast _zypper +autoload -Uz +X _call_program + +typeset -gUa _comp_assocs +_comp_assocs=( '' ) diff --git a/.config/zsh/.zprofile b/.config/zsh/.zprofile index 40db17a..8e2bade 100644 --- a/.config/zsh/.zprofile +++ b/.config/zsh/.zprofile @@ -1,3 +1,4 @@ # if [ -z "$SSH_AUTH_SOCK" ]; then # eval "$(ssh-agent -s)" # fi +systemctl --user import-environment XDG_CURRENT_DESKTOP diff --git a/.config/zsh/.zshenv b/.config/zsh/.zshenv index ad91bea..008ea8b 100644 --- a/.config/zsh/.zshenv +++ b/.config/zsh/.zshenv @@ -1,12 +1,8 @@ -# unused for now +set -a + export PATH="${$(find ~/.local/bin -type d -printf %p:)%%:}:$PATH" - -# default apps -export EDITOR="/usr/bin/nvim" -export GPG_TTY=$(tty) -export MANPAGER="sh -c 'col -bx | bat -l man -p'" -export MANROFFOPT="-c" - +# +# lc vars export LANG="en_US.UTF-8" export LC_CTYPE="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_IDENTIFICATION="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 diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc index caaa470..4a6128b 100644 --- a/.config/zsh/.zshrc +++ b/.config/zsh/.zshrc @@ -1,3 +1,5 @@ +[[ $- != *i* ]] && return + # ls colors eval "$(dircolors -b)" @@ -5,6 +7,7 @@ eval "$(dircolors -b)" HISTSIZE=10000000 SAVEHIST=10000000 HISTFILE="${HOME}/.cache/zsh_history" + setopt hist_expire_dups_first setopt hist_ignore_dups setopt hist_ignore_all_dups @@ -29,18 +32,12 @@ bindkey "^[[1;3D" backward-word bindkey "^[[1;5D" backward-word -bindkey "^[^H" backward-word -bindkey "^[^L" forward-word -bindkey "^[h" backward-char -bindkey "^[f" forward-char +bindkey "^[n" backward-word +bindkey "^[m" forward-word # completions autoload -Uz compinit -if [[ -n ${ZDOTDIR}/.zcompdump(#qN.mh+24) ]]; then - compinit; -else - compinit -C; -fi; +compinit zstyle ':completion:*' menu select zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' @@ -58,17 +55,43 @@ alias ll="ls -lh" alias tree="ls --tree" # set bat as help pager -alias -g -- -h='-h 2>&1 | bat --language=help --style=plain' -alias -g -- --help='--help 2>&1 | bat --language=help --style=plain' +alias -g -- --help='--help 2>&1 | batcat --language=help --style=plain' # useful cd aliases -alias ..="cd .." -alias ...="cd ../.." +alias ..="cd ../" +alias ...="cd ../../" alias ....="cd ../../../" +alias .....="cd ../../../../" +alias ......="cd ../../../../../" +alias .......="cd ../../../../../../" # aliases -alias dt="git --git-dir=$HOME/.dotfiles/git --work-tree=$HOME" 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 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 diff --git a/.fonts/MononokiNerdFont-Bold.ttf b/.fonts/MononokiNerdFont-Bold.ttf new file mode 100644 index 0000000..29413a5 Binary files /dev/null and b/.fonts/MononokiNerdFont-Bold.ttf differ diff --git a/.fonts/MononokiNerdFont-BoldItalic.ttf b/.fonts/MononokiNerdFont-BoldItalic.ttf new file mode 100644 index 0000000..e1e7dca Binary files /dev/null and b/.fonts/MononokiNerdFont-BoldItalic.ttf differ diff --git a/.fonts/MononokiNerdFont-Italic.ttf b/.fonts/MononokiNerdFont-Italic.ttf new file mode 100644 index 0000000..e26dbbf Binary files /dev/null and b/.fonts/MononokiNerdFont-Italic.ttf differ diff --git a/.fonts/MononokiNerdFont-Regular.ttf b/.fonts/MononokiNerdFont-Regular.ttf new file mode 100644 index 0000000..86b1e63 Binary files /dev/null and b/.fonts/MononokiNerdFont-Regular.ttf differ diff --git a/.fonts/MononokiNerdFontMono-Bold.ttf b/.fonts/MononokiNerdFontMono-Bold.ttf new file mode 100644 index 0000000..ebd5610 Binary files /dev/null and b/.fonts/MononokiNerdFontMono-Bold.ttf differ diff --git a/.fonts/MononokiNerdFontMono-BoldItalic.ttf b/.fonts/MononokiNerdFontMono-BoldItalic.ttf new file mode 100644 index 0000000..340a75f Binary files /dev/null and b/.fonts/MononokiNerdFontMono-BoldItalic.ttf differ diff --git a/.fonts/MononokiNerdFontMono-Italic.ttf b/.fonts/MononokiNerdFontMono-Italic.ttf new file mode 100644 index 0000000..7373c41 Binary files /dev/null and b/.fonts/MononokiNerdFontMono-Italic.ttf differ diff --git a/.fonts/MononokiNerdFontMono-Regular.ttf b/.fonts/MononokiNerdFontMono-Regular.ttf new file mode 100644 index 0000000..0a627cb Binary files /dev/null and b/.fonts/MononokiNerdFontMono-Regular.ttf differ diff --git a/.fonts/MononokiNerdFontPropo-Bold.ttf b/.fonts/MononokiNerdFontPropo-Bold.ttf new file mode 100644 index 0000000..65ba69a Binary files /dev/null and b/.fonts/MononokiNerdFontPropo-Bold.ttf differ diff --git a/.fonts/MononokiNerdFontPropo-BoldItalic.ttf b/.fonts/MononokiNerdFontPropo-BoldItalic.ttf new file mode 100644 index 0000000..f185fbd Binary files /dev/null and b/.fonts/MononokiNerdFontPropo-BoldItalic.ttf differ diff --git a/.fonts/MononokiNerdFontPropo-Italic.ttf b/.fonts/MononokiNerdFontPropo-Italic.ttf new file mode 100644 index 0000000..5410065 Binary files /dev/null and b/.fonts/MononokiNerdFontPropo-Italic.ttf differ diff --git a/.fonts/MononokiNerdFontPropo-Regular.ttf b/.fonts/MononokiNerdFontPropo-Regular.ttf new file mode 100644 index 0000000..57e5b40 Binary files /dev/null and b/.fonts/MononokiNerdFontPropo-Regular.ttf differ diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 033dfe3..0000000 --- a/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# lazy.nvim lockfile -.config/tmux/plugins/ -.zcompdump diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index f6c6a45..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule ".local/share/tmux-plugins/tpm"] - path = .local/share/tmux-plugins/tpm - url = https://github.com/tmux-plugins/tpm diff --git a/.gtkrc-2.0 b/.gtkrc-2.0 new file mode 100644 index 0000000..eb57564 --- /dev/null +++ b/.gtkrc-2.0 @@ -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" diff --git a/.local/bin/scripts/gd b/.local/bin/scripts/gd deleted file mode 100755 index 729b585..0000000 --- a/.local/bin/scripts/gd +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - - -read -p "Date: " date -export GIT_AUTHOR_DATE="${date}" -export GIT_COMMITTER_DATE="${date}" - -git $@ diff --git a/.local/scripts/_venv b/.local/scripts/_venv new file mode 100644 index 0000000..3eddbad --- /dev/null +++ b/.local/scripts/_venv @@ -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 diff --git a/.local/scripts/cast b/.local/scripts/cast new file mode 100755 index 0000000..11d610d --- /dev/null +++ b/.local/scripts/cast @@ -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 diff --git a/.local/scripts/dmenu_askpass b/.local/scripts/dmenu_askpass new file mode 100755 index 0000000..8637d40 --- /dev/null +++ b/.local/scripts/dmenu_askpass @@ -0,0 +1,3 @@ +#!/bin/bash + +echo $(dmenu -p "$1" -nf '#3a3a3a' <&-) diff --git a/.local/scripts/dual_monitor b/.local/scripts/dual_monitor new file mode 100755 index 0000000..b12ea3a --- /dev/null +++ b/.local/scripts/dual_monitor @@ -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 diff --git a/.local/scripts/gdt b/.local/scripts/gdt new file mode 100755 index 0000000..b67a66f --- /dev/null +++ b/.local/scripts/gdt @@ -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 "$@" diff --git a/.local/scripts/vpn b/.local/scripts/vpn new file mode 100755 index 0000000..194e1a7 --- /dev/null +++ b/.local/scripts/vpn @@ -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 diff --git a/.local/scripts/xr b/.local/scripts/xr new file mode 100755 index 0000000..59df412 --- /dev/null +++ b/.local/scripts/xr @@ -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 diff --git a/.local/share/gitignore-template b/.local/share/gitignore-template deleted file mode 100644 index 06a1589..0000000 --- a/.local/share/gitignore-template +++ /dev/null @@ -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/ diff --git a/.local/share/tmux-plugins/tpm b/.local/share/tmux-plugins/tpm deleted file mode 160000 index 99469c4..0000000 --- a/.local/share/tmux-plugins/tpm +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 99469c4a9b1ccf77fade25842dc7bafbc8ce9946 diff --git a/.local/share/wallpaper/wallpaper.png b/.local/share/wallpaper/wallpaper.png new file mode 100644 index 0000000..4e4645d Binary files /dev/null and b/.local/share/wallpaper/wallpaper.png differ diff --git a/.local/statusbar/sb-battery b/.local/statusbar/sb-battery new file mode 100755 index 0000000..8971ba9 --- /dev/null +++ b/.local/statusbar/sb-battery @@ -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" diff --git a/.local/statusbar/sb-cast b/.local/statusbar/sb-cast new file mode 100755 index 0000000..61447f4 --- /dev/null +++ b/.local/statusbar/sb-cast @@ -0,0 +1,7 @@ +#!/bin/bash + +PIDFILE="${XDG_RUNTIME_DIR}/mkchromecast.pid" + +if [ -f "${PIDFILE}" ]; then + printf "🔴 Casting" +fi diff --git a/.local/statusbar/sb-vpn b/.local/statusbar/sb-vpn new file mode 100755 index 0000000..c199079 --- /dev/null +++ b/.local/statusbar/sb-vpn @@ -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 diff --git a/.xinitrc b/.xinitrc new file mode 100644 index 0000000..07628fa --- /dev/null +++ b/.xinitrc @@ -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 diff --git a/.xsettingsd b/.xsettingsd new file mode 100644 index 0000000..2f9ef25 --- /dev/null +++ b/.xsettingsd @@ -0,0 +1,2 @@ +Xft/DPI 98304 +Gtk/CursorThemeSize 24 diff --git a/.zshenv b/.zshenv index 0219df4..d4ab94a 100644 --- a/.zshenv +++ b/.zshenv @@ -1,3 +1,2 @@ export ZDOTDIR="${HOME}/.config/zsh" - source "${ZDOTDIR}/.zshenv"