This commit is contained in:
Daniel Flanagan 2022-12-13 13:41:40 -06:00
parent 7750216f44
commit ee2445d1c5
Signed by: lytedev
GPG key ID: 5B2020A0F9921EF4
22 changed files with 1174 additions and 204 deletions

View file

@ -0,0 +1,31 @@
complete -c alacritty -n "__fish_use_subcommand" -l embed -d 'X11 window ID to embed Alacritty within (decimal or hexadecimal with "0x" prefix)' -r
complete -c alacritty -n "__fish_use_subcommand" -l config-file -d 'Specify alternative configuration file [default: $XDG_CONFIG_HOME/alacritty/alacritty.yml]' -r -F
complete -c alacritty -n "__fish_use_subcommand" -l socket -d 'Path for IPC socket creation' -r -F
complete -c alacritty -n "__fish_use_subcommand" -s o -l option -d 'Override configuration file options [example: cursor.style=Beam]' -r
complete -c alacritty -n "__fish_use_subcommand" -l working-directory -d 'Start the shell in the specified working directory' -r -F
complete -c alacritty -n "__fish_use_subcommand" -s e -l command -d 'Command and args to execute (must be last argument)' -r
complete -c alacritty -n "__fish_use_subcommand" -s t -l title -d 'Defines the window title [default: Alacritty]' -r
complete -c alacritty -n "__fish_use_subcommand" -l class -d 'Defines window class/app_id on X11/Wayland [default: Alacritty]' -r
complete -c alacritty -n "__fish_use_subcommand" -s h -l help -d 'Print help information'
complete -c alacritty -n "__fish_use_subcommand" -s V -l version -d 'Print version information'
complete -c alacritty -n "__fish_use_subcommand" -l print-events -d 'Print all events to stdout'
complete -c alacritty -n "__fish_use_subcommand" -l ref-test -d 'Generates ref test'
complete -c alacritty -n "__fish_use_subcommand" -s q -d 'Reduces the level of verbosity (the min level is -qq)'
complete -c alacritty -n "__fish_use_subcommand" -s v -d 'Increases the level of verbosity (the max level is -vvv)'
complete -c alacritty -n "__fish_use_subcommand" -l hold -d 'Remain open after child process exit'
complete -c alacritty -n "__fish_use_subcommand" -f -a "msg" -d 'Send a message to the Alacritty socket'
complete -c alacritty -n "__fish_use_subcommand" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and not __fish_seen_subcommand_from create-window; and not __fish_seen_subcommand_from config; and not __fish_seen_subcommand_from help" -s s -l socket -d 'IPC socket connection path override' -r -F
complete -c alacritty -n "__fish_seen_subcommand_from msg; and not __fish_seen_subcommand_from create-window; and not __fish_seen_subcommand_from config; and not __fish_seen_subcommand_from help" -s h -l help -d 'Print help information'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and not __fish_seen_subcommand_from create-window; and not __fish_seen_subcommand_from config; and not __fish_seen_subcommand_from help" -f -a "create-window" -d 'Create a new window in the same Alacritty process'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and not __fish_seen_subcommand_from create-window; and not __fish_seen_subcommand_from config; and not __fish_seen_subcommand_from help" -f -a "config" -d 'Update the Alacritty configuration'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and not __fish_seen_subcommand_from create-window; and not __fish_seen_subcommand_from config; and not __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from create-window" -l working-directory -d 'Start the shell in the specified working directory' -r -F
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from create-window" -s e -l command -d 'Command and args to execute (must be last argument)' -r
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from create-window" -s t -l title -d 'Defines the window title [default: Alacritty]' -r
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from create-window" -l class -d 'Defines window class/app_id on X11/Wayland [default: Alacritty]' -r
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from create-window" -l hold -d 'Remain open after child process exit'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from create-window" -s h -l help -d 'Print help information'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from config" -s w -l window-id -d 'Window ID for the new config' -r
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from config" -s r -l reset -d 'Clear all runtime configuration changes'
complete -c alacritty -n "__fish_seen_subcommand_from msg; and __fish_seen_subcommand_from config" -s h -l help -d 'Print help information'

View file

@ -0,0 +1,747 @@
import:
- ~/.alacritty-colorscheme/themes/thelovelace.yaml
env: {}
window:
dynamic_padding: false
padding:
x: 10
y: 10
class:
instance: Alacritty
general: Alacritty
scrolling:
history: 1000
font:
normal:
family: IosevkaLyteTerm Nerd Font
style: Regular
bold:
family: IosevkaLyteTerm Nerd Font
style: Heavy
italic:
family: IosevkaLyteTerm Nerd Font
style: Italic
bold_italic:
family: IosevkaLyteTerm Nerd Font
style: Bold Italic
size: 12.5
offset:
x: 0
y: 0
glyph_offset:
x: 0
y: 0
builtin_box_drawing: false
draw_bold_text_with_bright_colors: false
#colors:
# Default colors
#primary:
# background: '#1d1f21'
# foreground: '#c5c8c6'
# Bright and dim foreground colors
#
# The dimmed foreground color is calculated automatically if it is not
# present. If the bright foreground color is not set, or
# `draw_bold_text_with_bright_colors` is `false`, the normal foreground
# color will be used.
#dim_foreground: '#828482'
#bright_foreground: '#eaeaea'
# Cursor colors
#
# Colors which should be used to draw the terminal cursor.
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#cursor:
# text: CellBackground
# cursor: CellForeground
# Vi mode cursor colors
#
# Colors for the cursor when the vi mode is active.
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#vi_mode_cursor:
# text: CellBackground
# cursor: CellForeground
# Search colors
#
# Colors used for the search bar and match highlighting.
#search:
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#matches:
# foreground: '#000000'
# background: '#ffffff'
#focused_match:
# foreground: '#ffffff'
# background: '#000000'
# Keyboard hints
#hints:
# First character in the hint label
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#start:
# foreground: '#1d1f21'
# background: '#e9ff5e'
# All characters after the first one in the hint label
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#end:
# foreground: '#e9ff5e'
# background: '#1d1f21'
# Line indicator
#
# Color used for the indicator displaying the position in history during
# search and vi mode.
#
# By default, these will use the opposing primary color.
#line_indicator:
# foreground: None
# background: None
# Footer bar
#
# Color used for the footer bar on the bottom, used by search regex input,
# hyperlink URI preview, etc.
#
#footer_bar:
# background: '#c5c8c6'
# foreground: '#1d1f21'
# Selection colors
#
# Colors which should be used to draw the selection area.
#
# Allowed values are CellForeground/CellBackground, which reference the
# affected cell, or hexadecimal colors like #ff00ff.
#selection:
# text: CellBackground
# background: CellForeground
# Normal colors
#normal:
# black: '#1d1f21'
# red: '#cc6666'
# green: '#b5bd68'
# yellow: '#f0c674'
# blue: '#81a2be'
# magenta: '#b294bb'
# cyan: '#8abeb7'
# white: '#c5c8c6'
# Bright colors
#bright:
# black: '#666666'
# red: '#d54e53'
# green: '#b9ca4a'
# yellow: '#e7c547'
# blue: '#7aa6da'
# magenta: '#c397d8'
# cyan: '#70c0b1'
# white: '#eaeaea'
# Dim colors
#
# If the dim colors are not set, they will be calculated automatically based
# on the `normal` colors.
#dim:
# black: '#131415'
# red: '#864343'
# green: '#777c44'
# yellow: '#9e824c'
# blue: '#556a7d'
# magenta: '#75617b'
# cyan: '#5b7d78'
# white: '#828482'
# Indexed Colors
#
# The indexed colors include all colors from 16 to 256.
# When these are not set, they're filled with sensible defaults.
#
# Example:
# `- { index: 16, color: '#ff00ff' }`
#
#indexed_colors: []
# Transparent cell backgrounds
#
# Whether or not `window.opacity` applies to all cell backgrounds or only to
# the default background. When set to `true` all cells will be transparent
# regardless of their background color.
#transparent_background_colors: false
# Bell
#
# The bell is rung every time the BEL control character is received.
#bell:
# Visual Bell Animation
#
# Animation effect for flashing the screen when the visual bell is rung.
#
# Values for `animation`:
# - Ease
# - EaseOut
# - EaseOutSine
# - EaseOutQuad
# - EaseOutCubic
# - EaseOutQuart
# - EaseOutQuint
# - EaseOutExpo
# - EaseOutCirc
# - Linear
#animation: EaseOutExpo
# Duration of the visual bell flash in milliseconds. A `duration` of `0` will
# disable the visual bell animation.
#duration: 0
# Visual bell animation color.
#color: '#ffffff'
# Bell Command
#
# This program is executed whenever the bell is rung.
#
# When set to `command: None`, no command will be executed.
#
# Example:
# command:
# program: notify-send
# args: ["Hello, World!"]
#
#command: None
#selection:
# This string contains all characters that are used as separators for
# "semantic words" in Alacritty.
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
# When set to `true`, selected text will be copied to the primary clipboard.
#save_to_clipboard: false
#cursor:
# Cursor style
#style:
# Cursor shape
#
# Values for `shape`:
# - ▇ Block
# - _ Underline
# - | Beam
#shape: Block
# Cursor blinking state
#
# Values for `blinking`:
# - Never: Prevent the cursor from ever blinking
# - Off: Disable blinking by default
# - On: Enable blinking by default
# - Always: Force the cursor to always blink
#blinking: Off
# Vi mode cursor style
#
# If the vi mode cursor style is `None` or not specified, it will fall back to
# the style of the active value of the normal cursor.
#
# See `cursor.style` for available options.
#vi_mode_style: None
# Cursor blinking interval in milliseconds.
#blink_interval: 750
# Time after which cursor stops blinking, in seconds.
#
# Specifying '0' will disable timeout for blinking.
#blink_timeout: 5
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
#unfocused_hollow: true
# Thickness of the cursor relative to the cell width as floating point number
# from `0.0` to `1.0`.
#thickness: 0.15
# Live config reload (changes require restart)
#live_config_reload: true
# Shell
#
# You can set `shell.program` to the path of your favorite shell, e.g.
# `/bin/fish`. Entries in `shell.args` are passed unmodified as arguments to the
# shell.
#
# Default:
# - (Linux/BSD/macOS) `$SHELL` or the user's login shell, if `$SHELL` is unset
# - (Windows) powershell
#shell:
# program: /bin/bash
# args:
# - --login
# Startup directory
#
# Directory the shell is started in. If this is unset, or `None`, the working
# directory of the parent process will be used.
#working_directory: None
# Send ESC (\x1b) before characters when alt is pressed.
#alt_send_esc: true
# Offer IPC using `alacritty msg` (unix only)
#ipc_socket: true
#mouse:
# Click settings
#
# The `double_click` and `triple_click` settings control the time
# alacritty should wait for accepting multiple clicks as one double
# or triple click.
#double_click: { threshold: 300 }
#triple_click: { threshold: 300 }
# If this is `true`, the cursor is temporarily hidden when typing.
#hide_when_typing: false
# Hints
#
# Terminal hints can be used to find text or hyperlink in the visible part of
# the terminal and pipe it to other applications.
#hints:
# Keys used for the hint labels.
#alphabet: "jfkdls;ahgurieowpq"
# List with all available hints
#
# Each hint must have any of `regex` or `hyperlinks` field and either an
# `action` or a `command` field. The fields `mouse`, `binding` and
# `post_processing` are optional.
#
# The `hyperlinks` option will cause OSC 8 escape sequence hyperlinks to be
# highlighted.
#
# The fields `command`, `binding.key`, `binding.mods`, `binding.mode` and
# `mouse.mods` accept the same values as they do in the `key_bindings` section.
#
# The `mouse.enabled` field controls if the hint should be underlined while
# the mouse with all `mouse.mods` keys held or the vi mode cursor is above it.
#
# If the `post_processing` field is set to `true`, heuristics will be used to
# shorten the match if there are characters likely not to be part of the hint
# (e.g. a trailing `.`). This is most useful for URIs and applies only to
# `regex` matches.
#
# Values for `action`:
# - Copy
# Copy the hint's text to the clipboard.
# - Paste
# Paste the hint's text to the terminal or search.
# - Select
# Select the hint's text.
# - MoveViModeCursor
# Move the vi mode cursor to the beginning of the hint.
#enabled:
# - regex: "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
# [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
# hyperlinks: true
# command: xdg-open
# post_processing: true
# mouse:
# enabled: true
# mods: None
# binding:
# key: U
# mods: Control|Shift
# Mouse bindings
#
# Mouse bindings are specified as a list of objects, much like the key
# bindings further below.
#
# To trigger mouse bindings when an application running within Alacritty
# captures the mouse, the `Shift` modifier is automatically added as a
# requirement.
#
# Each mouse binding will specify a:
#
# - `mouse`:
#
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# - `action` (see key bindings for actions not exclusive to mouse mode)
#
# - Mouse exclusive actions:
#
# - ExpandSelection
# Expand the selection to the current mouse cursor location.
#
# And optionally:
#
# - `mods` (see key bindings)
#mouse_bindings:
# - { mouse: Right, action: ExpandSelection }
# - { mouse: Right, mods: Control, action: ExpandSelection }
# - { mouse: Middle, mode: ~Vi, action: PasteSelection }
# Key bindings
#
# Key bindings are specified as a list of objects. For example, this is the
# default paste binding:
#
# `- { key: V, mods: Control|Shift, action: Paste }`
#
# Each key binding will specify a:
#
# - `key`: Identifier of the key pressed
#
# - A-Z
# - F1-F24
# - Key0-Key9
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
#
# Instead of using the name of the keys, the `key` field also supports using
# the scancode of the desired key. Scancodes have to be specified as a
# decimal number. This command will allow you to display the hex scancodes
# for certain keys:
#
# `showkey --scancodes`.
#
# Then exactly one of:
#
# - `chars`: Send a byte sequence to the running application
#
# The `chars` field writes the specified string to the terminal. This makes
# it possible to pass escape sequences. To find escape codes for bindings
# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
# of tmux. Note that applications use terminfo to map escape sequences back
# to keys. It is therefore required to update the terminfo when changing an
# escape sequence.
#
# - `action`: Execute a predefined action
#
# - ToggleViMode
# - SearchForward
# Start searching toward the right of the search origin.
# - SearchBackward
# Start searching toward the left of the search origin.
# - Copy
# - Paste
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollHalfPageUp
# - ScrollHalfPageDown
# - ScrollLineUp
# - ScrollLineDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# Remove the terminal's scrollback history.
# - Hide
# Hide the Alacritty window.
# - Minimize
# Minimize the Alacritty window.
# - Quit
# Quit Alacritty.
# - ToggleFullscreen
# - SpawnNewInstance
# Spawn a new instance of Alacritty.
# - CreateNewWindow
# Create a new Alacritty window from the current process.
# - ClearLogNotice
# Clear Alacritty's UI warning and error notice.
# - ClearSelection
# Remove the active selection.
# - ReceiveChar
# - None
#
# - Vi mode exclusive actions:
#
# - Open
# Perform the action of the first matching hint under the vi mode cursor
# with `mouse.enabled` set to `true`.
# - ToggleNormalSelection
# - ToggleLineSelection
# - ToggleBlockSelection
# - ToggleSemanticSelection
# Toggle semantic selection based on `selection.semantic_escape_chars`.
# - CenterAroundViCursor
# Center view around vi mode cursor
#
# - Vi mode exclusive cursor motion actions:
#
# - Up
# One line up.
# - Down
# One line down.
# - Left
# One character left.
# - Right
# One character right.
# - First
# First column, or beginning of the line when already at the first column.
# - Last
# Last column, or beginning of the line when already at the last column.
# - FirstOccupied
# First non-empty cell in this terminal row, or first non-empty cell of
# the line when already at the first cell of the row.
# - High
# Top of the screen.
# - Middle
# Center of the screen.
# - Low
# Bottom of the screen.
# - SemanticLeft
# Start of the previous semantically separated word.
# - SemanticRight
# Start of the next semantically separated word.
# - SemanticLeftEnd
# End of the previous semantically separated word.
# - SemanticRightEnd
# End of the next semantically separated word.
# - WordLeft
# Start of the previous whitespace separated word.
# - WordRight
# Start of the next whitespace separated word.
# - WordLeftEnd
# End of the previous whitespace separated word.
# - WordRightEnd
# End of the next whitespace separated word.
# - Bracket
# Character matching the bracket at the cursor's location.
# - SearchNext
# Beginning of the next match.
# - SearchPrevious
# Beginning of the previous match.
# - SearchStart
# Start of the match to the left of the vi mode cursor.
# - SearchEnd
# End of the match to the right of the vi mode cursor.
#
# - Search mode exclusive actions:
# - SearchFocusNext
# Move the focus to the next search match.
# - SearchFocusPrevious
# Move the focus to the previous search match.
# - SearchConfirm
# - SearchCancel
# - SearchClear
# Reset the search regex.
# - SearchDeleteWord
# Delete the last word in the search regex.
# - SearchHistoryPrevious
# Go to the previous regex in the search history.
# - SearchHistoryNext
# Go to the next regex in the search history.
#
# - macOS exclusive actions:
# - ToggleSimpleFullscreen
# Enter fullscreen without occupying another space.
#
# - Linux/BSD exclusive actions:
#
# - CopySelection
# Copy from the selection buffer.
# - PasteSelection
# Paste from the selection buffer.
#
# - `command`: Fork and execute a specified command plus arguments
#
# The `command` field must be a map containing a `program` string and an
# `args` array of command line parameter strings. For example:
# `{ program: "alacritty", args: ["-e", "vttest"] }`
#
# And optionally:
#
# - `mods`: Key modifiers to filter binding actions
#
# - Command
# - Control
# - Option
# - Super
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this:
# `mods: Control|Shift`.
# Whitespace and capitalization are relevant and must match the example.
#
# - `mode`: Indicate a binding for only specific terminal reported modes
#
# This is mainly used to send applications the correct escape sequences
# when in different modes.
#
# - AppCursor
# - AppKeypad
# - Search
# - Alt
# - Vi
#
# A `~` operator can be used before a mode to apply the binding whenever
# the mode is *not* active, e.g. `~Alt`.
#
# Bindings are always filled by default, but will be replaced when a new
# binding with the same triggers is defined. To unset a default binding, it can
# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
# a no-op if you do not wish to receive input characters for that binding.
#
# If the same trigger is assigned to multiple actions, all of them are executed
# in the order they were defined in.
#key_bindings:
#- { key: Paste, action: Paste }
#- { key: Copy, action: Copy }
#- { key: L, mods: Control, action: ClearLogNotice }
#- { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" }
#- { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp }
#- { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown }
#- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop }
#- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
# Vi Mode
#- { key: Space, mods: Shift|Control, mode: ~Search, action: ToggleViMode }
#- { key: Space, mods: Shift|Control, mode: Vi|~Search, action: ScrollToBottom }
#- { key: Escape, mode: Vi|~Search, action: ClearSelection }
#- { key: I, mode: Vi|~Search, action: ToggleViMode }
#- { key: I, mode: Vi|~Search, action: ScrollToBottom }
#- { key: C, mods: Control, mode: Vi|~Search, action: ToggleViMode }
#- { key: Y, mods: Control, mode: Vi|~Search, action: ScrollLineUp }
#- { key: E, mods: Control, mode: Vi|~Search, action: ScrollLineDown }
#- { key: G, mode: Vi|~Search, action: ScrollToTop }
#- { key: G, mods: Shift, mode: Vi|~Search, action: ScrollToBottom }
#- { key: B, mods: Control, mode: Vi|~Search, action: ScrollPageUp }
#- { key: F, mods: Control, mode: Vi|~Search, action: ScrollPageDown }
#- { key: U, mods: Control, mode: Vi|~Search, action: ScrollHalfPageUp }
#- { key: D, mods: Control, mode: Vi|~Search, action: ScrollHalfPageDown }
#- { key: Y, mode: Vi|~Search, action: Copy }
#- { key: Y, mode: Vi|~Search, action: ClearSelection }
#- { key: Copy, mode: Vi|~Search, action: ClearSelection }
#- { key: V, mode: Vi|~Search, action: ToggleNormalSelection }
#- { key: V, mods: Shift, mode: Vi|~Search, action: ToggleLineSelection }
#- { key: V, mods: Control, mode: Vi|~Search, action: ToggleBlockSelection }
#- { key: V, mods: Alt, mode: Vi|~Search, action: ToggleSemanticSelection }
#- { key: Return, mode: Vi|~Search, action: Open }
#- { key: Z, mode: Vi|~Search, action: CenterAroundViCursor }
#- { key: K, mode: Vi|~Search, action: Up }
#- { key: J, mode: Vi|~Search, action: Down }
#- { key: H, mode: Vi|~Search, action: Left }
#- { key: L, mode: Vi|~Search, action: Right }
#- { key: Up, mode: Vi|~Search, action: Up }
#- { key: Down, mode: Vi|~Search, action: Down }
#- { key: Left, mode: Vi|~Search, action: Left }
#- { key: Right, mode: Vi|~Search, action: Right }
#- { key: Key0, mode: Vi|~Search, action: First }
#- { key: Key4, mods: Shift, mode: Vi|~Search, action: Last }
#- { key: Key6, mods: Shift, mode: Vi|~Search, action: FirstOccupied }
#- { key: H, mods: Shift, mode: Vi|~Search, action: High }
#- { key: M, mods: Shift, mode: Vi|~Search, action: Middle }
#- { key: L, mods: Shift, mode: Vi|~Search, action: Low }
#- { key: B, mode: Vi|~Search, action: SemanticLeft }
#- { key: W, mode: Vi|~Search, action: SemanticRight }
#- { key: E, mode: Vi|~Search, action: SemanticRightEnd }
#- { key: B, mods: Shift, mode: Vi|~Search, action: WordLeft }
#- { key: W, mods: Shift, mode: Vi|~Search, action: WordRight }
#- { key: E, mods: Shift, mode: Vi|~Search, action: WordRightEnd }
#- { key: Key5, mods: Shift, mode: Vi|~Search, action: Bracket }
#- { key: Slash, mode: Vi|~Search, action: SearchForward }
#- { key: Slash, mods: Shift, mode: Vi|~Search, action: SearchBackward }
#- { key: N, mode: Vi|~Search, action: SearchNext }
#- { key: N, mods: Shift, mode: Vi|~Search, action: SearchPrevious }
# Search Mode
#- { key: Return, mode: Search|Vi, action: SearchConfirm }
#- { key: Escape, mode: Search, action: SearchCancel }
#- { key: C, mods: Control, mode: Search, action: SearchCancel }
#- { key: U, mods: Control, mode: Search, action: SearchClear }
#- { key: W, mods: Control, mode: Search, action: SearchDeleteWord }
#- { key: P, mods: Control, mode: Search, action: SearchHistoryPrevious }
#- { key: N, mods: Control, mode: Search, action: SearchHistoryNext }
#- { key: Up, mode: Search, action: SearchHistoryPrevious }
#- { key: Down, mode: Search, action: SearchHistoryNext }
#- { key: Return, mode: Search|~Vi, action: SearchFocusNext }
#- { key: Return, mods: Shift, mode: Search|~Vi, action: SearchFocusPrevious }
# (Windows, Linux, and BSD only)
#- { key: V, mods: Control|Shift, mode: ~Vi, action: Paste }
#- { key: C, mods: Control|Shift, action: Copy }
#- { key: F, mods: Control|Shift, mode: ~Search, action: SearchForward }
#- { key: B, mods: Control|Shift, mode: ~Search, action: SearchBackward }
#- { key: C, mods: Control|Shift, mode: Vi|~Search, action: ClearSelection }
#- { key: Insert, mods: Shift, action: PasteSelection }
#- { key: Key0, mods: Control, action: ResetFontSize }
#- { key: Equals, mods: Control, action: IncreaseFontSize }
#- { key: Plus, mods: Control, action: IncreaseFontSize }
#- { key: NumpadAdd, mods: Control, action: IncreaseFontSize }
#- { key: Minus, mods: Control, action: DecreaseFontSize }
#- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize }
# (Windows only)
#- { key: Return, mods: Alt, action: ToggleFullscreen }
# (macOS only)
#- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" }
#- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory }
#- { key: Key0, mods: Command, action: ResetFontSize }
#- { key: Equals, mods: Command, action: IncreaseFontSize }
#- { key: Plus, mods: Command, action: IncreaseFontSize }
#- { key: NumpadAdd, mods: Command, action: IncreaseFontSize }
#- { key: Minus, mods: Command, action: DecreaseFontSize }
#- { key: NumpadSubtract, mods: Command, action: DecreaseFontSize }
#- { key: V, mods: Command, action: Paste }
#- { key: C, mods: Command, action: Copy }
#- { key: C, mods: Command, mode: Vi|~Search, action: ClearSelection }
#- { key: H, mods: Command, action: Hide }
#- { key: H, mods: Command|Alt, action: HideOtherApplications }
#- { key: M, mods: Command, action: Minimize }
#- { key: Q, mods: Command, action: Quit }
#- { key: W, mods: Command, action: Quit }
#- { key: N, mods: Command, action: SpawnNewInstance }
#- { key: F, mods: Command|Control, action: ToggleFullscreen }
#- { key: F, mods: Command, mode: ~Search, action: SearchForward }
#- { key: B, mods: Command, mode: ~Search, action: SearchBackward }
#debug:
# Display the time it takes to redraw each frame.
#render_timer: false
# Keep the log file after quitting Alacritty.
#persistent_logging: false
# Log level
#
# Values for `log_level`:
# - Off
# - Error
# - Warn
# - Info
# - Debug
# - Trace
#log_level: Warn
# Print all received window events.
#print_events: false
# Highlight window damage information.
#highlight_damage: false

View file

@ -37,6 +37,9 @@ end
pushd $dfp pushd $dfp
l common/tmux/conf $h/.tmux.conf l common/tmux/conf $h/.tmux.conf
test -d ~/.tmux/pluginx/tpm || \
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
l common/zellij $c/zellij
l common/fish $c/fish l common/fish $c/fish
l common/bash/rc $h/.bashrc l common/bash/rc $h/.bashrc
l common/neovim $c/nvim l common/neovim $c/nvim
@ -51,6 +54,7 @@ l common/helix $c/helix
l common/gpg/agent.conf $h/.gnupg/gpg-agent.conf l common/gpg/agent.conf $h/.gnupg/gpg-agent.conf
l common/htop/rc $c/htop/htoprc l common/htop/rc $c/htop/htoprc
l common/kitty $c/kitty l common/kitty $c/kitty
l common/alacritty $c/alacritty
l common/pgcli $c/pgcli l common/pgcli $c/pgcli
l common/mutt/rc $h/.muttrc l common/mutt/rc $h/.muttrc
l common/git/config $h/.gitconfig l common/git/config $h/.gitconfig

View file

@ -1,7 +1,7 @@
#!/usr/bin/env sh #!/usr/bin/env sh
c="$(kubectl config current-context | tr -d "\n")" c="$(kubectl config current-context | tr -d "\n")"
if [ -n "$c" ]; then if [ -n "$c" ]; then
printf "$c" printf "%s" "$c"
fi fi
a="$(kubectl config view --minify --output 'jsonpath={..namespace}')" a="$(kubectl config view --minify --output 'jsonpath={..namespace}')"
if [ -n "$a" ]; then if [ -n "$a" ]; then

View file

@ -48,3 +48,11 @@ end
test $PWD = $HOME && begin test $PWD = $HOME && begin
cd $NICE_HOME || cd cd $NICE_HOME || cd
end end
# if status is-interactive
# eval (zellij setup --generate-auto-start fish | string collect)
# end
if status is-interactive; and not set -q TMUX; and status --is-login; and not string match '/dev/tty*' (tty)
tmux attach -t default || tmux new -s default
end

View file

@ -56,6 +56,7 @@ alias ........ "d ../../../../../../.."
alias ......... "d ../../../../../../../.." alias ......... "d ../../../../../../../.."
has_command tmux && alias t "tmux" has_command tmux && alias t "tmux"
has_command zellij && begin; alias z "zellij"; alias j "zellij"; end
has_command rsync && alias rcp 'rsync -r -ah --progress' has_command rsync && alias rcp 'rsync -r -ah --progress'
has_command bat && alias cat bat has_command bat && alias cat bat

View file

@ -1,23 +1,17 @@
function fish_user_key_bindings function fish_user_key_bindings
if command -v brew &>/dev/null && test -f (brew --prefix fzf)/shell/key-bindings.fish command -q sk && skim_key_bindings
source (brew --prefix fzf)/shell/key-bindings.fish
else if test -f $HOME/.fzf/shell/key-bindings.fish
source $HOME/.fzf/shell/key-bindings.fish
end
type -q fzf_key_bindings && fzf_key_bindings
fish_vi_key_bindings insert --no-erase fish_vi_key_bindings insert --no-erase
set vi_esc "if commandline -P; commandline -f cancel; else; set fish_bind_mode default; commandline -f backward-char force-repaint; end" # bind "jk" from insert mode to return to normal mode
set normal_mode "if commandline -P; commandline -f cancel; else; set fish_bind_mode default; commandline -f backward-char force-repaint; end"
bind -M insert jk $vi_esc bind -M insert jk $normal_mode
bind -M insert jK $vi_esc bind -M insert jK $normal_mode
bind -M insert Jk $vi_esc bind -M insert Jk $normal_mode
bind -M insert JK $vi_esc bind -M insert JK $normal_mode
bind -M insert jj $vi_esc bind -M insert jj $normal_mode
bind -M insert jJ $vi_esc bind -M insert jJ $normal_mode
bind -M insert Jj $vi_esc bind -M insert Jj $normal_mode
bind -M insert JJ $vi_esc bind -M insert JJ $normal_mode
bind -M insert \cp up-or-search bind -M insert \cp up-or-search
bind -M insert \cn down-or-search bind -M insert \cn down-or-search
@ -26,6 +20,4 @@ function fish_user_key_bindings
bind -M insert \cv edit_command_buffer bind -M insert \cv edit_command_buffer
bind -M default \cv edit_command_buffer bind -M default \cv edit_command_buffer
bind -M insert \cs tmuxswitcher
end end

View file

@ -2,6 +2,8 @@ theme = "donokai"
[editor] [editor]
auto-pairs = false auto-pairs = false
auto-save = true
bufferline = "multiple"
scrolloff = 8 scrolloff = 8
rulers = [80, 120] rulers = [80, 120]
cursorline = true cursorline = true

View file

@ -81,4 +81,5 @@
"info" = { fg = "blue" } "info" = { fg = "blue" }
"hint" = { fg = "green" } "hint" = { fg = "green" }
diagnostic = { modifiers = ["underlined"] } diagnostic = { underline = { style = "curl" } }
"diagnostic.error" = { underline = { style = "curl", color = "red" } }

View file

@ -83,3 +83,16 @@ bind -T off F12 \
refresh-client -S refresh-client -S
source-file "$ENV_PATH/*/tmux.d.conf" source-file "$ENV_PATH/*/tmux.d.conf"
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @resurrect-capture-pane-contents 'on'
set -g @resurrect-processes 'helix hx vi vim nvim emacs man less more tail top htop btm irssi weechat mutt "git log" iex mix deno watchexec mosh-client ssh'
bind A run-shell "#{@resurrect-save-script-path}"
bind L run-shell "#{@resurrect-restore-script-path}"
set -g @continuum-restore 'on'
set -g @continuum-save-interval '1'

View file

@ -1,25 +0,0 @@
local w = require 'wezterm'
return {
color_schemes = {
["Donokai"] = {
background = "#111111",
foreground = "#ffffff",
cursor_bg = "#333333",
cursor_fg = "#ffffff",
cursor_border = "#666666",
selection_fg = "black",
selection_bg = "cyan",
ansi = {"#111111", "#f92672", "#a6e22e", "#f4bf75", "#ae81ff", "#fd971f", "#a1efe4", "#888888"},
brights = {"#333333", "#f92672", "#a6e22e", "#f4bf75", "#ae81ff", "#fd971f", "#a1efe4", "#888888"},
-- ansi = {"black", "maroon", "green", "olive", "navy", "purple", "teal", "silver"},
-- brights = {"grey", "red", "lime", "yellow", "blue", "fuchsia", "aqua", "white"},
}
},
color_scheme = "Donokai",
colors = {
},
font = w.font("Iosevka"),
font_size = 14,
enable_wayland = true,
}

302
common/zellij/config.kdl Normal file
View file

@ -0,0 +1,302 @@
// If you'd like to override the default keybindings completely, be sure to change "keybinds" to "keybinds clear-defaults=true"
keybinds clear-defaults=true {
normal {
bind "Ctrl h" { MoveFocusOrTab "Left"; }
bind "Ctrl l" { MoveFocusOrTab "Right"; }
bind "Ctrl j" { MoveFocus "Down"; }
bind "Ctrl J" { MoveFocus "Down"; }
bind "Ctrl k" { MoveFocus "Up"; }
}
locked {
bind "Ctrl g" { SwitchToMode "Normal"; }
}
resize {
bind "Ctrl z" { SwitchToMode "Normal"; }
bind "h" "Left" { Resize "Increase Left"; }
bind "j" "Down" { Resize "Increase Down"; }
bind "k" "Up" { Resize "Increase Up"; }
bind "l" "Right" { Resize "Increase Right"; }
bind "H" { Resize "Decrease Left"; }
bind "J" { Resize "Decrease Down"; }
bind "K" { Resize "Decrease Up"; }
bind "L" { Resize "Decrease Right"; }
bind "=" "+" { Resize "Increase"; }
bind "-" { Resize "Decrease"; }
}
pane {
bind "Ctrl n" { SwitchToMode "Normal"; }
bind "h" "Left" { MoveFocus "Left"; }
bind "l" "Right" { MoveFocus "Right"; }
bind "j" "Down" { MoveFocus "Down"; }
bind "k" "Up" { MoveFocus "Up"; }
bind "p" { SwitchFocus; }
bind "n" { NewPane; SwitchToMode "Normal"; }
bind "d" { NewPane "Down"; SwitchToMode "Normal"; }
bind "r" { NewPane "Right"; SwitchToMode "Normal"; }
bind "x" { CloseFocus; SwitchToMode "Normal"; }
bind "f" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
bind "z" { TogglePaneFrames; SwitchToMode "Normal"; }
bind "w" { ToggleFloatingPanes; SwitchToMode "Normal"; }
bind "e" { TogglePaneEmbedOrFloating; SwitchToMode "Normal"; }
bind "c" { SwitchToMode "RenamePane"; PaneNameInput 0;}
}
move {
bind "Ctrl h" { SwitchToMode "Normal"; }
bind "n" "Tab" { MovePane; }
bind "h" "Left" { MovePane "Left"; }
bind "j" "Down" { MovePane "Down"; }
bind "k" "Up" { MovePane "Up"; }
bind "l" "Right" { MovePane "Right"; }
}
tab {
bind "Ctrl t" { SwitchToMode "Normal"; }
bind "r" { SwitchToMode "RenameTab"; TabNameInput 0; }
bind "h" "Left" "Up" "k" { GoToPreviousTab; }
bind "l" "Right" "Down" "j" { GoToNextTab; }
bind "n" { NewTab; SwitchToMode "Normal"; }
bind "x" { CloseTab; SwitchToMode "Normal"; }
bind "s" { ToggleActiveSyncTab; SwitchToMode "Normal"; }
bind "1" { GoToTab 1; SwitchToMode "Normal"; }
bind "2" { GoToTab 2; SwitchToMode "Normal"; }
bind "3" { GoToTab 3; SwitchToMode "Normal"; }
bind "4" { GoToTab 4; SwitchToMode "Normal"; }
bind "5" { GoToTab 5; SwitchToMode "Normal"; }
bind "6" { GoToTab 6; SwitchToMode "Normal"; }
bind "7" { GoToTab 7; SwitchToMode "Normal"; }
bind "8" { GoToTab 8; SwitchToMode "Normal"; }
bind "9" { GoToTab 9; SwitchToMode "Normal"; }
bind "Tab" { ToggleTab; }
}
scroll {
bind "Ctrl s" { SwitchToMode "Normal"; }
bind "e" { EditScrollback; SwitchToMode "Normal"; }
bind "s" { SwitchToMode "EnterSearch"; SearchInput 0; }
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
bind "j" "Down" { ScrollDown; }
bind "k" "Up" { ScrollUp; }
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
bind "d" { HalfPageScrollDown; }
bind "u" { HalfPageScrollUp; }
// uncomment this and adjust key if using copy_on_select=false
// bind "Alt c" { Copy; }
}
search {
bind "Ctrl s" { SwitchToMode "Normal"; }
bind "Ctrl c" { ScrollToBottom; SwitchToMode "Normal"; }
bind "j" "Down" { ScrollDown; }
bind "k" "Up" { ScrollUp; }
bind "Ctrl f" "PageDown" "Right" "l" { PageScrollDown; }
bind "Ctrl b" "PageUp" "Left" "h" { PageScrollUp; }
bind "d" { HalfPageScrollDown; }
bind "u" { HalfPageScrollUp; }
bind "n" { Search "down"; }
bind "p" { Search "up"; }
bind "c" { SearchToggleOption "CaseSensitivity"; }
bind "w" { SearchToggleOption "Wrap"; }
bind "o" { SearchToggleOption "WholeWord"; }
}
entersearch {
bind "Ctrl c" "Esc" { SwitchToMode "Scroll"; }
bind "Enter" { SwitchToMode "Search"; }
}
renametab {
bind "Ctrl c" { SwitchToMode "Normal"; }
bind "Esc" { UndoRenameTab; SwitchToMode "Tab"; }
}
renamepane {
bind "Ctrl c" { SwitchToMode "Normal"; }
bind "Esc" { UndoRenamePane; SwitchToMode "Pane"; }
}
session {
bind "Ctrl o" { SwitchToMode "Normal"; }
bind "Ctrl s" { SwitchToMode "Scroll"; }
bind "d" { Detach; }
}
tmux {
bind "[" { SwitchToMode "Scroll"; }
bind "Ctrl b" { Write 2; SwitchToMode "Normal"; }
bind "\"" { NewPane "Down"; SwitchToMode "Normal"; }
bind "%" { NewPane "Right"; SwitchToMode "Normal"; }
bind "z" { ToggleFocusFullscreen; SwitchToMode "Normal"; }
bind "c" { NewTab; SwitchToMode "Normal"; }
bind "," { SwitchToMode "RenameTab"; }
bind "p" { GoToPreviousTab; SwitchToMode "Normal"; }
bind "n" { GoToNextTab; SwitchToMode "Normal"; }
bind "Left" { MoveFocus "Left"; SwitchToMode "Normal"; }
bind "Right" { MoveFocus "Right"; SwitchToMode "Normal"; }
bind "Down" { MoveFocus "Down"; SwitchToMode "Normal"; }
bind "Up" { MoveFocus "Up"; SwitchToMode "Normal"; }
bind "h" { MoveFocus "Left"; SwitchToMode "Normal"; }
bind "l" { MoveFocus "Right"; SwitchToMode "Normal"; }
bind "j" { MoveFocus "Down"; SwitchToMode "Normal"; }
bind "k" { MoveFocus "Up"; SwitchToMode "Normal"; }
bind "o" { FocusNextPane; }
bind "d" { Detach; }
}
shared_except "locked" {
bind "Ctrl h" { MoveFocusOrTab "Left"; }
bind "Ctrl l" { MoveFocusOrTab "Right"; }
bind "Ctrl j" { MoveFocus "Down"; }
bind "Ctrl J" { MoveFocus "Down"; }
bind "Ctrl k" { MoveFocus "Up"; }
bind "Ctrl g" { SwitchToMode "Locked"; }
bind "Ctrl q" { Quit; }
bind "Alt n" { NewPane; }
bind "Alt h" "Alt Left" { MoveFocusOrTab "Left"; }
bind "Alt l" "Alt Right" { MoveFocusOrTab "Right"; }
bind "Alt j" "Alt Down" { MoveFocus "Down"; }
bind "Alt k" "Alt Up" { MoveFocus "Up"; }
bind "Alt =" "Alt +" { Resize "Increase"; }
bind "Alt -" { Resize "Decrease"; }
}
shared_except "normal" "locked" {
bind "Enter" "Esc" { SwitchToMode "Normal"; }
}
shared_except "pane" "locked" {
bind "Ctrl n" { SwitchToMode "Pane"; }
}
shared_except "resize" "locked" {
bind "Ctrl z" { SwitchToMode "Resize"; }
}
shared_except "scroll" "locked" {
bind "Ctrl s" { SwitchToMode "Scroll"; }
}
shared_except "session" "locked" {
bind "Ctrl o" { SwitchToMode "Session"; }
}
shared_except "tab" "locked" {
bind "Ctrl t" { SwitchToMode "Tab"; }
}
shared_except "move" "locked" {
bind "Ctrl h" { SwitchToMode "Move"; }
}
shared_except "tmux" "locked" {
bind "Ctrl b" { SwitchToMode "Tmux"; }
}
}
plugins {
tab-bar { path "tab-bar"; }
status-bar { path "status-bar"; }
strider { path "strider"; }
compact-bar { path "compact-bar"; }
}
// Choose what to do when zellij receives SIGTERM, SIGINT, SIGQUIT or SIGHUP
// eg. when terminal window with an active zellij session is closed
// Options:
// - detach (Default)
// - quit
//
on_force_close "detach"
// Send a request for a simplified ui (without arrow fonts) to plugins
// Options:
// - true
// - false (Default)
//
simplified_ui true
// Toggle between having pane frames around the panes
// Options:
// - true (default)
// - false
//
pane_frames false
// Define color themes for Zellij
// For more examples, see: https://github.com/zellij-org/zellij/tree/main/example/themes
// Once these themes are defined, one of them should to be selected in the "theme" section of this file
themes {
default {
fg 7
bg 0
black 0
red 1
green 2
yellow 3
blue 4
magenta 5
cyan 6
white 7
orange 3
}
}
// Choose the theme that is specified in the themes section.
// Default: default
//
// theme "default"
// The name of the default layout to load on startup
// Default: "default"
//
// default_layout "compact"
// Choose the mode that zellij uses when starting up.
// Default: normal
//
// default_mode "locked"
// Toggle enabling the mouse mode.
// On certain configurations, or terminals this could
// potentially interfere with copying text.
// Options:
// - true (default)
// - false
//
mouse_mode true
// Configure the scroll back buffer size
// This is the number of lines zellij stores for each pane in the scroll back
// buffer. Excess number of lines are discarded in a FIFO fashion.
// Valid values: positive integers
// Default value: 10000
//
scroll_buffer_size 1000000
// Provide a command to execute when copying text. The text will be piped to
// the stdin of the program to perform the copy. This can be used with
// terminal emulators which do not support the OSC 52 ANSI control sequence
// that will be used by default if this option is not set.
// Examples:
//
// copy_command "xclip -selection clipboard" // x11
copy_command "wl-copy" // wayland
// copy_command "pbcopy" // osx
// Choose the destination for copied text
// Allows using the primary selection buffer (on x11/wayland) instead of the system clipboard.
// Does not apply when using copy_command.
// Options:
// - system (default)
// - primary
//
// copy_clipboard "primary"
// Enable or disable automatic copy (and clear) of selection when releasing mouse
// Default: true
//
// copy_on_select false
// Path to the default editor to use to edit pane scrollbuffer
// Default: $EDITOR or $VISUAL
//
// scrollback_editor "/usr/bin/vim"
// When attaching to an existing session with other users,
// should the session be mirrored (true)
// or should each user have their own cursor (false)
// Default: false
//
// mirror_session true
// The folder in which Zellij will look for layouts
//
// layout_dir "/path/to/my/layout_dir"
// The folder in which Zellij will look for themes
//
// theme_dir "/path/to/my/theme_dir"

View file

@ -1,3 +1,12 @@
default_border pixel 1 default_border pixel 1
exec swayidle -w timeout 300 'swaylock -f -c 000000' timeout 330 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f -c 000000'
# whichever dell monitor is plugged in
output "Dell Inc. DELL U2720Q CWTM623" transform 270 scale 1.5 output "Dell Inc. DELL U2720Q CWTM623" transform 270 scale 1.5
output "Dell Inc. DELL U2720Q CWTM623" position -1440,200 output "Dell Inc. DELL U2720Q CWTM623" position -1440,200
# whichever dell monitor is plugged in
output "Dell Inc. DELL U2720Q D3TM623" transform 270 scale 1.5
output "Dell Inc. DELL U2720Q D3TM623" position -1440,200
exec firefox

View file

@ -1,5 +1,5 @@
exec libinput-gestures -c ~/.config/libinput-gestures.conf exec libinput-gestures -c ~/.config/libinput-gestures.conf
exec swayidle -w timeout 300 'swaylock -f -c 000000' timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f -c 000000' exec swayidle -w timeout 300 'swaylock -f -c 000000' timeout 330 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' before-sleep 'swaylock -f -c 000000'
bindswitch lid:toggle exec swaylock bindswitch lid:toggle exec swaylock

View file

@ -8,45 +8,46 @@
# fi # fi
paru -Sy --needed --noconfirm \ paru -Sy --needed --noconfirm \
fswatch watchexec \ watchexec `# Filesystem Event Wacher` \
fwupd \ fwupd `# Firmware Update Manager` \
docker `# Containers` \
ncdu `# Disk Usage Analyzer` \ ncdu `# Disk Usage Analyzer` \
efibootmgr efivar `# UEFI Boot CLI Stuff` \ efibootmgr efivar `# UEFI Boot CLI Stuff` \
weechat `# IRC Client` \ weechat `# IRC Client` \
aria2 `# Downloads Manager` \ aria2 `# Downloads Manager` \
dmenu `# Application Launcher` \
ripgrep `# Code Search Utilities` \ ripgrep `# Code Search Utilities` \
git-delta `# Better Diff Viewer` \ git-delta `# Better Diff Viewer` \
fd `# File Search` \ fd `# File Search` \
exa `# Better ls` \ exa `# Better ls` \
sd `# Easy Find/Replace` \ sd `# Better sed` \
bat `# Better Cat` \ bat `# Better Cat` \
fzf `# Fuzzy File Finder` \ skim `# Fuzzy Finder` \
htop `# Process Management and System Resources Monitoring` \ htop bottom `# Process Management and System Resources Monitoring` \
openssh mosh `# Remote Access` \ openssh mosh `# Remote Access` \
openssl `# Crypto` \ openssl `# Crypto` \
asdf-vm `# Runtime Version Manager` \ asdf-vm `# Version Manager` \
oath-toolkit `# TOTP Utility` \
pass pass-otp `# Password Management` \ pass pass-otp `# Password Management` \
sc-im `# Spreadsheets` \
cloc `# For counting lines of code` \
pigz `# Multicore Compression Utility` \
hexyl `# CLI Hex Viewer` \ hexyl `# CLI Hex Viewer` \
rsync `# File Transfer` \ rsync rclone `# File Transfer` \
neovim helix `# Text Editors` \ helix `# Text Editors` \
unzip `# Simple Unzipping` \ unzip `# Simple Unzipping` \
tmux `# Terminal Multiplexer` \ zellij `# Terminal Multiplexer` \
kitty-terminfo `# Almost Better Terminal Emulator` \ nmap traceroute iputils `# Networking Utilities` \
curl `# It's curl, c'mon` \ kitty-terminfo `# Better Terminal Emulator` \
w3m `# Terminal Browser` \ curl wget xh `# HTTP Utilities` \
jq `# CLI for Interacting with JSON` \ w3m `# Web Browser` \
xh `# New HTTP Utility` \ jq gron `# JSON Utilities` \
age sops `# Simple Secrets Managements` \ age sops `# Simple Secrets Managements` \
inotify-tools `# Watching` \ inotify-tools `# Filesystem Watching` \
fish `# Shell` \ fish `# Shell` \
time `# GNU time` \ time `# GNU Time` \
fortune-mod fortune-mod-archlinux `# Fortune` \ fortune-mod fortune-mod-archlinux `# Fortune` \
oath-toolkit `# One-Time Passwords` \
sysstat `# System Statistics` \ sysstat `# System Statistics` \
reflector `# Simplify Mirror Management` \ reflector `# Simple Pacman Mirror Management` \
inetutils `# netutils` \ gnu-netcat socat websocat `# Socket Utilities` \
nnn `# CLI File Manager` \ nnn `# CLI File Manager` \
avahi nss-mdns `# .local DNS` \ avahi nss-mdns `# mDNS and Network Discovery Utilities` \
man-db man-pages `# Come On, Man!` man-db man-pages `# Come On, Man!`

View file

@ -11,59 +11,31 @@
# TODO: switch from Thunar to Nautilus? # TODO: switch from Thunar to Nautilus?
paru -Sy --needed \ paru -Sy --needed \
xf86-input-libinput \ xf86-input-libinput libinput libinput-gestures `# Trackpad Settings and Customizations` \
libinput libinput-gestures `# Trackpad Control` \
bluez bluez-libs bluez-utils bluez-tools `# Bluetooth` \ bluez bluez-libs bluez-utils bluez-tools `# Bluetooth` \
arc-gtk-theme `# GTK Theme` \ arc-gtk-theme elementary-icon-theme `# GUI Theme Stuff` \
elementary-icon-theme `# GUI File Explorer Icons` \ thunar thunar-volman gvfs `# File Manager` \
thunar thunar-volman gvfs `# GUI File Explorer + Volume Management/Auto-Mount Disks)` \ ttf-iosevka-lyte-nerd-font ttf-iosevka-lyte ttf-opensans `# Fonts` \
ttf-iosevka-lyte `# My font` \ avr-libc avr-gcc dfu-programmer dfu-util `# MCU Programming Utilities` \
ttf-iosevka-lyte-nerd-font `# My font` \
ttf-opensans `# Fonts` \
avr-libc avr-gcc dfu-programmer dfu-util `# Keyboard Programming Utilities` \
gimp inkscape krita `# Image/Vector Editing Applications` \ gimp inkscape krita `# Image/Vector Editing Applications` \
audacity `# Audio Editing Application` \ audacity `# Audio Editing Application` \
deluge deluge-gtk `# GUI Torrent Client` \
gdm `# Display Manager of choice` \
pigz `# Multi-core gzipping` \
samba `# Sharing Files with other (Windows) PCs` \
gvfs-smb `# Auto-Detect Samba Shares?` \
cmake `# Cross-Platform Make` \ cmake `# Cross-Platform Make` \
elixir nodejs erlang rustup `# Langs` \
php `# PHP Language` \
caddy `# Web Server` \ caddy `# Web Server` \
python python-pip `# Python 3 Language` \
ctags `# Tags` \
postgresql pgcli `# RDBMS` \
sc-im `# Spreadsheets` \
cloc `# For counting lines of code` \
noto-fonts noto-fonts-emoji `# Emoji` \ noto-fonts noto-fonts-emoji `# Emoji` \
discord `# Personal & Voice Chat` \
slack-desktop `# Work Chat` \
steam steamcmd lutris `# Games` \
gnome-shell `# Guh-nome Guh-shell` \
vlc `# Video Viewer` \ vlc `# Video Viewer` \
zathura zathura-pdf-mupdf `# Document Viewer` \ zathura zathura-pdf-mupdf `# Document Viewer` \
glu mesa wxgtk2 libpng `# Graphical Libs` \ gammastep `# Screen Color Temp Adjuster` \
gammastep `# Redshift for Wayland` \
dmenu `# Application Launcher` \
firefox `# Default Web Browser` \ firefox `# Default Web Browser` \
hunspell-en_US `# Firefox Spell Checking` \ hunspell-en_US `# Firefox Spell Checking` \
passff-host `# Pass integration in Firefox` \ passff-host `# Pass integration in Firefox` \
kitty-git `# Terinal Emulator` \ kitty-git `# Terminal Emulator` \
alsa-utils `# Audio Utilities` \ pavucontrol pulsemixer `# Pulseaudio Controls` \
alsa-plugins `# Plugins for ALSA` \
pavucontrol pulsemixer `# Audio Backend and Controls` \
playerctl `# Media Keys Controls` \ playerctl `# Media Keys Controls` \
feh `# Image Viewer & Wallpaper Manager` \ feh `# Image Viewer and Wallpaper Manager` \
wlroots sway swaybg `# Wayland Compositor` \ wlroots sway swaybg `# Wayland Compositor` \
swaylock swayidle `# Auto-Locking for Sway` \ swaylock swayidle `# Auto-Locking for Sway` \
kanshi `# Monitor Management for Sway` \ waybar mako `# Bar and Notifications` \
wofi `# Sway app launcher` \ slurp grim wl-clipboard `# Screenshots and Clipboard Utilities` \
waybar mako `# Sway Bar & Notifications` \ pipewire pipewire-pulse wireplumber `# Audio System` \
slurp grim wl-clipboard `# Sway Screen Selection & Clipping` \
pipewire pipewire-pulse wireplumber `# Pipewire` \
xdg-desktop-portal xdg-desktop-portal-wlr `# Screensharing` \ xdg-desktop-portal xdg-desktop-portal-wlr `# Screensharing` \
obs-studio `# OBS` \ obs-studio `# Audio and Video Streaming` \
ttf-font-awesome `# Icon Font` \
ripcord `# Discord and Slack Client`

View file

@ -1,5 +0,0 @@
#!/usr/bin/env fish
#
tmux new-session -d -s sway
tmux run-shell "$HOME/.tmux/plugins/tmux-resurrect/scripts/restore.sh"
kitty --single-instance fish -C 'tmux attach -t sway'

View file

@ -1,53 +0,0 @@
profile laptop-with-display2 {
output "Samsung Electric Company SAMSUNG 0x00000F00" enable mode 1280x720@60Hz position 0,0 scale 1 transform normal
output eDP-1 enable position 1280,0 scale 2 transform normal
exec "$HOME/.config/lytedev-dotfiles/apps/de/kanshi/laptop-single-workspace.bash"
}
profile desktop-H-2x4kside2 {
output "Dell Inc. DELL U2720Q CWTM623" enable mode 3840x2160@60Hz position 0,0 scale 1 transform 270
output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 2160,1200 scale 1 transform normal
output "Dell Inc. DELL U2720Q D3TM623" enable mode 3840x2160@60Hz position 5600,0 scale 1 transform 90
exec "$DOTFILES_PATH/os/linux/kanshi/desktop-H-workspaces.sh"
}
profile desktop-H-2x4kside2 {
output "Dell Inc. DELL U2720Q D3TM623" enable mode 3840x2160@60Hz position 0,0 scale 1.5 transform normal
}
# profile desktop-H-2x4kside2 {
# output "Dell Inc. DELL U2720Q D3TM623" enable mode 3840x2160@60Hz position 0,0 scale 1.5 transform 270
# output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 1440,800 scale 1 transform normal
# output "Dell Inc. DELL U2720Q CWTM623" enable mode 3840x2160@60Hz position 4880,0 scale 1.5 transform 90
# exec "$DOTFILES_PATH/os/linux/kanshi/desktop-H-workspaces.sh"
# }
profile desktop-primary {
output "Dell Inc. DELL U2720Q CWTM623" enable mode 3840x2160@60Hz position 0,500 scale 1.5 transform 90
output "Samsung Electric Company SyncMaster H1AK500000" enable mode 3840x2160@60Hz position 1440,0 scale 1.0 transform normal
}
profile tv4k {
output "Samsung Electric Company CF791 HTRJ500315" disable
output "Samsung Electric Company SyncMaster H1AK500000" enable mode 4096x2160@60Hz position 0,0 scale 1 transform normal
}
profile desktop-ultrawide {
output "Samsung Electric Company CF791 HTRJ500315" enable mode 3440x1440@100Hz position 1440,560 scale 1 transform normal
}
# profile laptop-with-display {
# output "Sharp Corporation 0x144A 0x00000000" enable mode 1920x1080@60Hz position 0,0 scale 1 transform normal
# output DP-1 enable mode 1920x1080@60Hz position 0,0 scale 1 transform normal
# exec "$HOME/.config/lytedev-dotfiles/apps/de/kanshi/laptop-single-workspace.bash"
# }
profile laptop-with-display {
output eDP-1 enable mode 3200x1800@60Hz position 213,1440 scale 1.5 transform normal
output DP-1 enable mode 3840x2160@60Hz position 0,0 scale 1.5 transform normal
}
profile laptop {
output "Sharp Corporation 0x144A 0x00000000" enable mode 3200x1800@60Hz position 0,0 scale 2 transform normal
}

View file

@ -1,19 +0,0 @@
#!/usr/bin/env bash
# kanshi will potentially run this more than once
LOCKFILE="/tmp/lytedev-kanshi-workspace-arranging.lock"
[[ -f $LOCKFILE ]] && { echo "Already locked: $LOCKFILE" >&2; exit 1; }
touch "$LOCKFILE"
sleep 0.1
move_workspace() { swaymsg workspace "$1"; swaymsg move workspace to "'$2'"; }
setup_output() { out="$1"; shift; while (($#)); do move_workspace "$1" "$out"; shift; done; }
set -x
setup_output 'Dell Inc. DELL U2720Q CWTM623' 9
setup_output 'Dell Inc. DELL U2720Q D3TM623' 8
setup_output 'Samsung Electric Company CF791 HTRJ500315' 2 3 4 5 6 7 1
rm "$LOCKFILE"

View file

@ -1,5 +0,0 @@
#!/usr/bin/env bash
move_workspace() { swaymsg workspace "$1"; swaymsg move workspace to "'$2'"; }
setup_output() { out="$1"; shift; while (($#)); do move_workspace "$1" "$out"; shift; done; }
setup_output 'Samsung Electric Company CF791 HTRJ500315' 1 2 3 4 5 6 7 8 9

View file

@ -1,6 +0,0 @@
#!/usr/bin/env bash
move_workspace() { swaymsg workspace "$1"; swaymsg move workspace to "'$2'"; }
setup_output() { out="$1"; shift; while (($#)); do move_workspace "$1" "$out"; shift; done; }
setup_output eDP-1 1 2 3 4 5 6 7 8 9

View file

@ -162,11 +162,14 @@ mode "resize" {
bindsym escape mode "default" bindsym escape mode "default"
} }
set $tilers "(kitty.*|firefox.*|Slack.*|thunar.*)" set $tilers "(kitty.*|firefox.*|slack.*|Slack.*|thunar.*|Alacritty.*|alacritty.*)"
for_window [title=".*"] floating enable for_window [title=".*"] floating enable
for_window [app_id=$tilers] floating disable for_window [app_id=$tilers] floating disable
bindsym $mod+shift+alt+f for_window [class=$tilers] floating toggle bindsym $mod+shift+alt+f for_window [class=$tilers] floating toggle
include /etc/sway/config.d/*
include $XDG_CONFIG_HOME/lytedev-env/*/sway/config
client.focused #6c88a6 #6c88a6 #6c88a6 #6c88a6 #6c88a6 client.focused #6c88a6 #6c88a6 #6c88a6 #6c88a6 #6c88a6
client.focused_inactive #100814 #100814 #9b9ebf #100814 #100814 client.focused_inactive #100814 #100814 #9b9ebf #100814 #100814
client.unfocused #100814 #100814 #9b9ebf #100814 #100814 client.unfocused #100814 #100814 #9b9ebf #100814 #100814
@ -177,10 +180,10 @@ bar {
exec mako exec mako
# exec gammastep -t 6500:3500 -l 39.0:-94.5 # exec gammastep -t 6500:3500 -l 39.0:-94.5
# exec_always 'killall kanshi; kanshi'
# exec /usr/lib/kdeconnectd # exec /usr/lib/kdeconnectd
# exec sway-init-tmux # exec sway-init-tmux
# exec $term exec exec kitty --single-instance tmux
exec tmux start-server
# exec_always notify-send -a "sway" -i ~/.wallpaper "sway configuration loaded" # exec_always notify-send -a "sway" -i ~/.wallpaper "sway configuration loaded"
@ -188,6 +191,3 @@ exec mako
no_focus [class=".*"] no_focus [class=".*"]
output * background $HOME/.wallpaper fill output * background $HOME/.wallpaper fill
include /etc/sway/config.d/*
include $XDG_CONFIG_HOME/lytedev-env/*/sway/config