migrate to dotter
This commit is contained in:
parent
c5618f2f2c
commit
23b6c0a596
265 changed files with 62 additions and 3125 deletions
32
configs/alacritty/alacritty.toml
Normal file
32
configs/alacritty/alacritty.toml
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
import = ["/home/aleidk/.config/alacritty/themes/catppuccin/catppuccin-macchiato.toml"]
|
||||
|
||||
[env]
|
||||
TERM = "xterm-256color"
|
||||
|
||||
[font]
|
||||
size = 12.0
|
||||
|
||||
[font.bold]
|
||||
style = "Bold"
|
||||
|
||||
[font.bold_italic]
|
||||
style = "Bold Italic"
|
||||
|
||||
[font.italic]
|
||||
style = "italic"
|
||||
|
||||
[font.normal]
|
||||
family = "JetBrainsMono Nerd Font"
|
||||
style = "Regular"
|
||||
|
||||
[mouse]
|
||||
hide_when_typing = false
|
||||
|
||||
[window]
|
||||
decorations = "full"
|
||||
dynamic_padding = true
|
||||
opacity = 1
|
||||
|
||||
[window.padding]
|
||||
x = 10
|
||||
y = 10
|
||||
844
configs/alacritty/alacritty.yml
Normal file
844
configs/alacritty/alacritty.yml
Normal file
|
|
@ -0,0 +1,844 @@
|
|||
# Configuration for Alacritty, the GPU enhanced terminal emulator.
|
||||
|
||||
# Import additional configuration files
|
||||
#
|
||||
# Imports are loaded in order, skipping all missing files, with the importing
|
||||
# file being loaded last. If a field is already present in a previous import, it
|
||||
# will be replaced.
|
||||
#
|
||||
# All imports must either be absolute paths starting with `/`, or paths relative
|
||||
# to the user's home directory starting with `~/`.
|
||||
import:
|
||||
# - /path/to/alacritty.yml
|
||||
- ~/.config/alacritty/themes/catppuccin/catppuccin-macchiato.yml
|
||||
# Any items in the `env` entry below will be added as
|
||||
# environment variables. Some entries may override variables
|
||||
# set by alacritty itself.
|
||||
env:
|
||||
TERM: xterm-256color
|
||||
#
|
||||
# This value is used to set the `$TERM` environment variable for
|
||||
# each instance of Alacritty. If it is not present, alacritty will
|
||||
# check the local terminfo database and use `alacritty` if it is
|
||||
# available, otherwise `xterm-256color` is used.
|
||||
#TERM: alacritty
|
||||
|
||||
window:
|
||||
# Window dimensions (changes require restart)
|
||||
#
|
||||
# Number of lines/columns (not pixels) in the terminal. The number of columns
|
||||
# must be at least `2`, while using a value of `0` for columns and lines will
|
||||
# fall back to the window manager's recommended size.
|
||||
#dimensions:
|
||||
# columns: 0
|
||||
# lines: 0
|
||||
|
||||
# Window position (changes require restart)
|
||||
#
|
||||
# Specified in number of pixels.
|
||||
# If the position is not set, the window manager will handle the placement.
|
||||
#position:
|
||||
# x: 0
|
||||
# y: 0
|
||||
|
||||
# Window padding (changes require restart)
|
||||
#
|
||||
# Blank space added around the window in pixels. This padding is scaled
|
||||
# by DPI and the specified value is always added at both opposing sides.
|
||||
padding:
|
||||
x: 10
|
||||
y: 10
|
||||
# Spread additional padding evenly around the terminal content.
|
||||
dynamic_padding: true
|
||||
|
||||
# Window decorations
|
||||
#
|
||||
# Values for `decorations`:
|
||||
# - full: Borders and title bar
|
||||
# - none: Neither borders nor title bar
|
||||
#
|
||||
# Values for `decorations` (macOS only):
|
||||
# - transparent: Title bar, transparent background and title bar buttons
|
||||
# - buttonless: Title bar, transparent background and no title bar buttons
|
||||
decorations: full
|
||||
# Background opacity
|
||||
#
|
||||
# Window opacity as a floating point number from `0.0` to `1.0`.
|
||||
# The value `0.0` is completely transparent and `1.0` is opaque.
|
||||
opacity: 1
|
||||
|
||||
# Startup Mode (changes require restart)
|
||||
#
|
||||
# Values for `startup_mode`:
|
||||
# - Windowed
|
||||
# - Maximized
|
||||
# - Fullscreen
|
||||
#
|
||||
# Values for `startup_mode` (macOS only):
|
||||
# - SimpleFullscreen
|
||||
#startup_mode: Windowed
|
||||
|
||||
# Window title
|
||||
#title: Alacritty
|
||||
|
||||
# Allow terminal applications to change Alacritty's window title.
|
||||
#dynamic_title: true
|
||||
|
||||
# Window class (Linux/BSD only):
|
||||
#class:
|
||||
# Application instance name
|
||||
#instance: Alacritty
|
||||
# General application class
|
||||
#general: Alacritty
|
||||
|
||||
# GTK theme variant (Linux/BSD only)
|
||||
#
|
||||
# Override the variant of the GTK theme. Commonly supported values are `dark`
|
||||
# and `light`. Set this to `None` to use the default theme variant.
|
||||
#gtk_theme_variant: None
|
||||
|
||||
#scrolling:
|
||||
# Maximum number of lines in the scrollback buffer.
|
||||
# Specifying '0' will disable scrolling.
|
||||
#history: 10000
|
||||
|
||||
# Scrolling distance multiplier.
|
||||
#multiplier: 3
|
||||
|
||||
# Font configuration
|
||||
font:
|
||||
normal:
|
||||
family: JetBrainsMono Nerd Font
|
||||
style: Regular
|
||||
bold:
|
||||
# family: JetBrainsMono NF
|
||||
style: Bold
|
||||
italic:
|
||||
# family: JetBrainsMono NF
|
||||
style: italic
|
||||
|
||||
bold_italic:
|
||||
# family: monospace
|
||||
style: Bold Italic
|
||||
|
||||
# Point size
|
||||
size: 12.0
|
||||
# Offset is the extra space around each character. `offset.y` can be thought
|
||||
# of as modifying the line spacing, and `offset.x` as modifying the letter
|
||||
# spacing.
|
||||
#offset:
|
||||
# x: 0
|
||||
# y: 0
|
||||
|
||||
# Glyph offset determines the locations of the glyphs within their cells with
|
||||
# the default being at the bottom. Increasing `x` moves the glyph to the
|
||||
# right, increasing `y` moves the glyph upward.
|
||||
#glyph_offset:
|
||||
# x: 0
|
||||
# y: 0
|
||||
|
||||
# Thin stroke font rendering (macOS only)
|
||||
#
|
||||
# Thin strokes are suitable for retina displays, but for non-retina screens
|
||||
# it is recommended to set `use_thin_strokes` to `false`.
|
||||
#use_thin_strokes: true
|
||||
|
||||
# Use built-in font for box drawing characters.
|
||||
#
|
||||
# If `true`, Alacritty will use a custom built-in font for box drawing
|
||||
# characters (Unicode points 2500 - 259f).
|
||||
#
|
||||
#builtin_box_drawing: true
|
||||
|
||||
# If `true`, bold text is drawn using the bright color variants.
|
||||
#draw_bold_text_with_bright_colors: false
|
||||
|
||||
# Colors (Tomorrow Night)
|
||||
#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'
|
||||
|
||||
#bar:
|
||||
# background: '#c5c8c6'
|
||||
# foreground: '#1d1f21'
|
||||
|
||||
# Keyboard regex 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
|
||||
|
||||
# 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
|
||||
|
||||
# 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:
|
||||
# - (macOS) /bin/bash --login
|
||||
# - (Linux/BSD) user login shell
|
||||
# - (Windows) powershell
|
||||
# shell:
|
||||
# program: /bin/zsh
|
||||
# args:
|
||||
# - -l
|
||||
# - -c
|
||||
# # Open tmux session selector on startup
|
||||
# - "source ~/.config/zsh/functions/tmux.zsh && tm || echo 'Error running tmux...'"
|
||||
# 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
|
||||
# Regex hints
|
||||
#
|
||||
# Terminal hints can be used to find text 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 a `regex` and either an `action` or a `command` field.
|
||||
# The fields `mouse`, `binding` and `post_processing` are optional.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# 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{-}\\^⟨⟩`]+"
|
||||
# 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`.
|
||||
#
|
||||
# - 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: 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
|
||||
0
configs/alacritty/themes/.keep
Normal file
0
configs/alacritty/themes/.keep
Normal file
277
configs/atuin/config.toml
Normal file
277
configs/atuin/config.toml
Normal file
|
|
@ -0,0 +1,277 @@
|
|||
## where to store your database, default is your system data directory
|
||||
## linux/mac: ~/.local/share/atuin/history.db
|
||||
## windows: %USERPROFILE%/.local/share/atuin/history.db
|
||||
# db_path = "~/.history.db"
|
||||
|
||||
## where to store your encryption key, default is your system data directory
|
||||
## linux/mac: ~/.local/share/atuin/key
|
||||
## windows: %USERPROFILE%/.local/share/atuin/key
|
||||
# key_path = "~/.key"
|
||||
|
||||
## where to store your auth session token, default is your system data directory
|
||||
## linux/mac: ~/.local/share/atuin/session
|
||||
## windows: %USERPROFILE%/.local/share/atuin/session
|
||||
# session_path = "~/.session"
|
||||
|
||||
## date format used, either "us" or "uk"
|
||||
# dialect = "us"
|
||||
|
||||
## default timezone to use when displaying time
|
||||
## either "l", "local" to use the system's current local timezone, or an offset
|
||||
## from UTC in the format of "<+|->H[H][:M[M][:S[S]]]"
|
||||
## for example: "+9", "-05", "+03:30", "-01:23:45", etc.
|
||||
# timezone = "local"
|
||||
|
||||
## enable or disable automatic sync
|
||||
auto_sync = true
|
||||
|
||||
## enable or disable automatic update checks
|
||||
update_check = true
|
||||
|
||||
## address of the sync server
|
||||
sync_address = "https://atuin.alecodes.page"
|
||||
|
||||
## how often to sync history. note that this is only triggered when a command
|
||||
## is ran, so sync intervals may well be longer
|
||||
## set it to 0 to sync after every command
|
||||
# sync_frequency = "10m"
|
||||
|
||||
## which search mode to use
|
||||
## possible values: prefix, fulltext, fuzzy, skim
|
||||
# search_mode = "fuzzy"
|
||||
|
||||
## which filter mode to use by default
|
||||
## possible values: "global", "host", "session", "directory", "workspace"
|
||||
## consider using search.filters to customize the enablement and order of filter modes
|
||||
filter_mode = "global"
|
||||
|
||||
## With workspace filtering enabled, Atuin will filter for commands executed
|
||||
## in any directory within a git repository tree (default: false).
|
||||
##
|
||||
## To use workspace mode by default when available, set this to true and
|
||||
## set filter_mode to "workspace" or leave it unspecified and
|
||||
## set search.filters to include "workspace" before other filter modes.
|
||||
# workspaces = false
|
||||
|
||||
## which filter mode to use when atuin is invoked from a shell up-key binding
|
||||
## the accepted values are identical to those of "filter_mode"
|
||||
## leave unspecified to use same mode set in "filter_mode"
|
||||
filter_mode_shell_up_key_binding = "session"
|
||||
|
||||
## which search mode to use when atuin is invoked from a shell up-key binding
|
||||
## the accepted values are identical to those of "search_mode"
|
||||
## leave unspecified to use same mode set in "search_mode"
|
||||
# search_mode_shell_up_key_binding = "fuzzy"
|
||||
|
||||
## which style to use
|
||||
## possible values: auto, full, compact
|
||||
# style = "auto"
|
||||
|
||||
## the maximum number of lines the interface should take up
|
||||
## set it to 0 to always go full screen
|
||||
# inline_height = 0
|
||||
|
||||
## Invert the UI - put the search bar at the top , Default to `false`
|
||||
# invert = false
|
||||
|
||||
## enable or disable showing a preview of the selected command
|
||||
## useful when the command is longer than the terminal width and is cut off
|
||||
# show_preview = true
|
||||
|
||||
## what to do when the escape key is pressed when searching
|
||||
## possible values: return-original, return-query
|
||||
# exit_mode = "return-original"
|
||||
|
||||
## possible values: emacs, subl
|
||||
# word_jump_mode = "emacs"
|
||||
|
||||
## characters that count as a part of a word
|
||||
# word_chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
|
||||
|
||||
## number of context lines to show when scrolling by pages
|
||||
scroll_context_lines = 3
|
||||
|
||||
## use ctrl instead of alt as the shortcut modifier key for numerical UI shortcuts
|
||||
## alt-0 .. alt-9
|
||||
ctrl_n_shortcuts = false
|
||||
|
||||
## default history list format - can also be specified with the --format arg
|
||||
# history_format = "{time}\t{command}\t{duration}"
|
||||
|
||||
## prevent commands matching any of these regexes from being written to history.
|
||||
## Note that these regular expressions are unanchored, i.e. if they don't start
|
||||
## with ^ or end with $, they'll match anywhere in the command.
|
||||
## For details on the supported regular expression syntax, see
|
||||
## https://docs.rs/regex/latest/regex/#syntax
|
||||
# history_filter = [
|
||||
# "^secret-cmd",
|
||||
# "^innocuous-cmd .*--secret=.+",
|
||||
# ]
|
||||
|
||||
## prevent commands run with cwd matching any of these regexes from being written
|
||||
## to history. Note that these regular expressions are unanchored, i.e. if they don't
|
||||
## start with ^ or end with $, they'll match anywhere in CWD.
|
||||
## For details on the supported regular expression syntax, see
|
||||
## https://docs.rs/regex/latest/regex/#syntax
|
||||
# cwd_filter = [
|
||||
# "^/very/secret/area",
|
||||
# ]
|
||||
|
||||
store_failed = true
|
||||
|
||||
## Configure the maximum height of the preview to show.
|
||||
## Useful when you have long scripts in your history that you want to distinguish
|
||||
## by more than the first few lines.
|
||||
# max_preview_height = 4
|
||||
|
||||
## Configure whether or not to show the help row, which includes the current Atuin
|
||||
## version (and whether an update is available), a keymap hint, and the total
|
||||
## amount of commands in your history.
|
||||
# show_help = true
|
||||
|
||||
## Configure whether or not to show tabs for search and inspect
|
||||
# show_tabs = true
|
||||
|
||||
## Configure whether or not the tabs row may be auto-hidden, which includes the current Atuin
|
||||
## tab, such as Search or Inspector, and other tabs you may wish to see. This will
|
||||
## only be hidden if there are fewer than this count of lines available, and does not affect the use
|
||||
## of keyboard shortcuts to switch tab. 0 to never auto-hide, default is 8 (lines).
|
||||
## This is ignored except in `compact` mode.
|
||||
# auto_hide_height = 8
|
||||
|
||||
## Defaults to true. This matches history against a set of default regex, and will not save it if we get a match. Defaults include
|
||||
## 1. AWS key id
|
||||
## 2. Github pat (old and new)
|
||||
## 3. Slack oauth tokens (bot, user)
|
||||
## 4. Slack webhooks
|
||||
## 5. Stripe live/test keys
|
||||
# secrets_filter = true
|
||||
|
||||
## Defaults to true. If enabled, upon hitting enter Atuin will immediately execute the command. Press tab to return to the shell and edit.
|
||||
# This applies for new installs. Old installs will keep the old behaviour unless configured otherwise.
|
||||
enter_accept = false
|
||||
|
||||
## Defaults to "emacs". This specifies the keymap on the startup of `atuin
|
||||
## search`. If this is set to "auto", the startup keymap mode in the Atuin
|
||||
## search is automatically selected based on the shell's keymap where the
|
||||
## keybinding is defined. If this is set to "emacs", "vim-insert", or
|
||||
## "vim-normal", the startup keymap mode in the Atuin search is forced to be
|
||||
## the specified one.
|
||||
# keymap_mode = "auto"
|
||||
|
||||
## Cursor style in each keymap mode. If specified, the cursor style is changed
|
||||
## in entering the cursor shape. Available values are "default" and
|
||||
## "{blink,steady}-{block,underline,bar}".
|
||||
# keymap_cursor = { emacs = "blink-block", vim_insert = "blink-block", vim_normal = "steady-block" }
|
||||
|
||||
# network_connect_timeout = 5
|
||||
# network_timeout = 5
|
||||
|
||||
## Timeout (in seconds) for acquiring a local database connection (sqlite)
|
||||
# local_timeout = 5
|
||||
|
||||
## Set this to true and Atuin will minimize motion in the UI - timers will not update live, etc.
|
||||
## Alternatively, set env NO_MOTION=true
|
||||
# prefers_reduced_motion = false
|
||||
|
||||
[stats]
|
||||
## Set commands where we should consider the subcommand for statistics. Eg, kubectl get vs just kubectl
|
||||
# common_subcommands = [
|
||||
# "apt",
|
||||
# "cargo",
|
||||
# "composer",
|
||||
# "dnf",
|
||||
# "docker",
|
||||
# "git",
|
||||
# "go",
|
||||
# "ip",
|
||||
# "jj",
|
||||
# "kubectl",
|
||||
# "nix",
|
||||
# "nmcli",
|
||||
# "npm",
|
||||
# "pecl",
|
||||
# "pnpm",
|
||||
# "podman",
|
||||
# "port",
|
||||
# "systemctl",
|
||||
# "tmux",
|
||||
# "yarn",
|
||||
# ]
|
||||
|
||||
## Set commands that should be totally stripped and ignored from stats
|
||||
# common_prefix = ["sudo"]
|
||||
|
||||
## Set commands that will be completely ignored from stats
|
||||
# ignored_commands = [
|
||||
# "cd",
|
||||
# "ls",
|
||||
# "vi"
|
||||
# ]
|
||||
|
||||
[keys]
|
||||
# Defaults to true. If disabled, using the up/down key won't exit the TUI when scrolled past the first/last entry.
|
||||
# scroll_exits = true
|
||||
# Defaults to true. The left arrow key will exit the TUI when scrolling before the first character
|
||||
# exit_past_line_start = true
|
||||
# Defaults to true. The right arrow key performs the same functionality as Tab and copies the selected line to the command line to be modified.
|
||||
# accept_past_line_end = true
|
||||
|
||||
[sync]
|
||||
# Enable sync v2 by default
|
||||
# This ensures that sync v2 is enabled for new installs only
|
||||
# In a later release it will become the default across the board
|
||||
records = true
|
||||
|
||||
[preview]
|
||||
## which preview strategy to use to calculate the preview height (respects max_preview_height).
|
||||
## possible values: auto, static
|
||||
## auto: length of the selected command.
|
||||
## static: length of the longest command stored in the history.
|
||||
## fixed: use max_preview_height as fixed height.
|
||||
# strategy = "auto"
|
||||
|
||||
[daemon]
|
||||
## Enables using the daemon to sync. Requires the daemon to be running in the background. Start it with `atuin daemon`
|
||||
# enabled = false
|
||||
|
||||
## How often the daemon should sync in seconds
|
||||
# sync_frequency = 300
|
||||
|
||||
## The path to the unix socket used by the daemon (on unix systems)
|
||||
## linux/mac: ~/.local/share/atuin/atuin.sock
|
||||
## windows: Not Supported
|
||||
# socket_path = "~/.local/share/atuin/atuin.sock"
|
||||
|
||||
## Use systemd socket activation rather than opening the given path (the path must still be correct for the client)
|
||||
## linux: false
|
||||
## mac/windows: Not Supported
|
||||
# systemd_socket = false
|
||||
|
||||
## The port that should be used for TCP on non unix systems
|
||||
# tcp_port = 8889
|
||||
|
||||
# [theme]
|
||||
## Color theme to use for rendering in the terminal.
|
||||
## There are some built-in themes, including the base theme ("default"),
|
||||
## "autumn" and "marine". You can add your own themes to the "./themes" subdirectory of your
|
||||
## Atuin config (or ATUIN_THEME_DIR, if provided) as TOML files whose keys should be one or
|
||||
## more of AlertInfo, AlertWarn, AlertError, Annotation, Base, Guidance, Important, and
|
||||
## the string values as lowercase entries from this list:
|
||||
## https://ogeon.github.io/docs/palette/master/palette/named/index.html
|
||||
## If you provide a custom theme file, it should be called "NAME.toml" and the theme below
|
||||
## should be the stem, i.e. `theme = "NAME"` for your chosen NAME.
|
||||
name = "catppuccin-macchiato-teal"
|
||||
|
||||
## Whether the theme manager should output normal or extra information to help fix themes.
|
||||
## Boolean, true or false. If unset, left up to the theme manager.
|
||||
# debug = true
|
||||
|
||||
[search]
|
||||
## The list of enabled filter modes, in order of priority.
|
||||
## The "workspace" mode is skipped when not in a workspace or workspaces = false.
|
||||
## Default filter mode can be overridden with the filter_mode setting.
|
||||
# filters = [ "global", "host", "session", "workspace", "directory" ]
|
||||
|
||||
[dotfiles]
|
||||
enabled = true
|
||||
12
configs/atuin/themes/catppuccin-macchiato-teal.toml
Normal file
12
configs/atuin/themes/catppuccin-macchiato-teal.toml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[theme]
|
||||
name = "catppuccin-macchiato-teal"
|
||||
|
||||
[colors]
|
||||
AlertInfo = "#a6da95"
|
||||
AlertWarn = "#f5a97f"
|
||||
AlertError = "#ed8796"
|
||||
Annotation = "#8bd5ca"
|
||||
Base = "#cad3f5"
|
||||
Guidance = "#939ab7"
|
||||
Important = "#ed8796"
|
||||
Title = "#8bd5ca"
|
||||
44
configs/bash/.bash_profile
Normal file
44
configs/bash/.bash_profile
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
update_path() {
|
||||
export PATH="$PATH:$1"
|
||||
}
|
||||
|
||||
# Set manually
|
||||
export REPOS="$HOME/.local/share/chezmoi"
|
||||
export DOTS="$REPOS/Private/dots"
|
||||
export EDITOR=nvim
|
||||
export VISUAL="$EDITOR"
|
||||
export QT_STYLE_OVERRIDE=kvantum
|
||||
export MOZ_ENABLE_WAYLAND=1
|
||||
|
||||
# Use rbw as SSH Agent
|
||||
# use https://github.com/pmkap/rbw/ until https://github.com/doy/rbw/issues/197 is closed
|
||||
export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/rbw/ssh-agent-socket"
|
||||
|
||||
update_path "$DOTS/scripts"
|
||||
update_path "$HOME/.local/bin"
|
||||
update_path "$HOME/bin"
|
||||
update_path "/usr/local/bin"
|
||||
|
||||
# Dev Stuff
|
||||
export NPM_PACKAGES="$HOME/.npm-packages"
|
||||
export NODE_PATH="$NPM_PACKAGES/lib/node_modules${NODE_PATH:+:$NODE_PATH}"
|
||||
update_path "$NPM_PACKAGES/bin"
|
||||
|
||||
export PNPM_HOME="$HOME/.local/share/pnpm"
|
||||
update_path "$PNPM_HOME"
|
||||
|
||||
export BUN_INSTALL="$HOME/.bun"
|
||||
update_path "$BUN_INSTALL/bin"
|
||||
|
||||
source "$HOME/.rye/env"
|
||||
|
||||
# . "$HOME/.cargo/env"
|
||||
update_path "$HOME/.cargo/bin/"
|
||||
|
||||
. "$HOME/.atuin/bin/env"
|
||||
|
||||
if [ -f ~/.bashrc ]; then
|
||||
. ~/.bashrc
|
||||
fi
|
||||
|
||||
. "$HOME/.local/share/../bin/env"
|
||||
8
configs/bash/.bashrc
Normal file
8
configs/bash/.bashrc
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# ╭──────────────────────────────────────────────────────────╮
|
||||
# │ Auto drop into fish only on login │
|
||||
# ╰──────────────────────────────────────────────────────────╯
|
||||
|
||||
# if [[ $(ps --no-header --pid=$PPID --format=comm) != "fish" && -z ${BASH_EXECUTION_STRING} && ${SHLVL} == 1 ]]; then
|
||||
# shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=''
|
||||
# exec fish $LOGIN_OPTION
|
||||
# fi
|
||||
27
configs/bat/config
Normal file
27
configs/bat/config
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
# This is `bat`s configuration file. Each line either contains a comment or
|
||||
# a command-line option that you want to pass to `bat` by default. You can
|
||||
# run `bat --help` to get a list of all possible configuration options.
|
||||
|
||||
# Specify desired highlighting theme (e.g. "TwoDark"). Run `bat --list-themes`
|
||||
# for a list of all available themes
|
||||
--theme="Catppuccin-macchiato"
|
||||
|
||||
--style="changes,numbers"
|
||||
|
||||
# Enable this to use italic text on the terminal. This is not supported on all
|
||||
# terminal emulators (like tmux, by default):
|
||||
#--italic-text=always
|
||||
|
||||
# Uncomment the following line to disable automatic paging:
|
||||
#--paging=never
|
||||
|
||||
# Uncomment the following line if you are using less version >= 551 and want to
|
||||
# enable mouse scrolling support in `bat` when running inside tmux. This might
|
||||
# disable text selection, unless you press shift.
|
||||
#--pager="less --RAW-CONTROL-CHARS --quit-if-one-screen --mouse"
|
||||
|
||||
# Syntax mappings: map a certain filename pattern to a language.
|
||||
# Example 1: use the C++ syntax for Arduino .ino files
|
||||
# Example 2: Use ".gitignore"-style highlighting for ".ignore" files
|
||||
#--map-syntax "*.ino:C++"
|
||||
#--map-syntax ".ignore:Git Ignore"
|
||||
4
configs/containers/systemd/dev-databases.pod
Normal file
4
configs/containers/systemd/dev-databases.pod
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
[Pod]
|
||||
PodName=databases
|
||||
PublishPort=9090:3000
|
||||
PublishPort=5432:5432
|
||||
14
configs/containers/systemd/dev-dbui.container
Normal file
14
configs/containers/systemd/dev-dbui.container
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[Container]
|
||||
Image=docker.io/dbgate/dbgate
|
||||
AutoUpdate=registry
|
||||
Pod=dev-databases.pod
|
||||
Environment=CONNECTIONS=POSTGRES
|
||||
Environment=LABEL_POSTGRES="Localhost Postgres"
|
||||
Environment=ENGINE_POSTGRES=postgres@dbgate-plugin-postgres
|
||||
Environment=SERVER_POSTGRES=localhost
|
||||
Environment=PORT_POSTGRES=5432
|
||||
Environment=USER_POSTGRES=postgres
|
||||
Environment=PASSWORD_POSTGRES=1234
|
||||
|
||||
[Service]
|
||||
ExecStartPost=/usr/bin/xdg-open http://localhost:9090
|
||||
7
configs/containers/systemd/dev-postgres.container
Normal file
7
configs/containers/systemd/dev-postgres.container
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
[Container]
|
||||
Image=docker.io/postgres:17
|
||||
AutoUpdate=registry
|
||||
Environment=POSTGRES_USER=postgres
|
||||
Environment=POSTGRES_PASSWORD=1234
|
||||
Pod=dev-databases.pod
|
||||
Volume=dev-postgres-data:/var/lib/postgresql/data
|
||||
3
configs/fish/completions/.config/fish/config.fish
Normal file
3
configs/fish/completions/.config/fish/config.fish
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
if status is-interactive
|
||||
# Commands to run in interactive sessions can go here
|
||||
end
|
||||
31
configs/fish/completions/.config/fish/fish_variables
Normal file
31
configs/fish/completions/.config/fish/fish_variables
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# This file contains fish universal variable definitions.
|
||||
# VERSION: 3.0
|
||||
SETUVAR __fish_initialized:3800
|
||||
SETUVAR fish_color_autosuggestion:brblack
|
||||
SETUVAR fish_color_cancel:\x2dr
|
||||
SETUVAR fish_color_command:normal
|
||||
SETUVAR fish_color_comment:red
|
||||
SETUVAR fish_color_cwd:green
|
||||
SETUVAR fish_color_cwd_root:red
|
||||
SETUVAR fish_color_end:green
|
||||
SETUVAR fish_color_error:brred
|
||||
SETUVAR fish_color_escape:brcyan
|
||||
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||
SETUVAR fish_color_host:normal
|
||||
SETUVAR fish_color_host_remote:yellow
|
||||
SETUVAR fish_color_normal:normal
|
||||
SETUVAR fish_color_operator:brcyan
|
||||
SETUVAR fish_color_param:cyan
|
||||
SETUVAR fish_color_quote:yellow
|
||||
SETUVAR fish_color_redirection:cyan\x1e\x2d\x2dbold
|
||||
SETUVAR fish_color_search_match:white\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
|
||||
SETUVAR fish_color_status:red
|
||||
SETUVAR fish_color_user:brgreen
|
||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||
SETUVAR fish_key_bindings:fish_default_key_bindings
|
||||
SETUVAR fish_pager_color_completion:normal
|
||||
SETUVAR fish_pager_color_description:yellow\x1e\x2di
|
||||
SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
|
||||
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
|
||||
SETUVAR fish_pager_color_selected_background:\x2dr
|
||||
423
configs/fish/completions/atuin.fish
Normal file
423
configs/fish/completions/atuin.fish
Normal file
|
|
@ -0,0 +1,423 @@
|
|||
# Print an optspec for argparse to handle cmd's options that are independent of any subcommand.
|
||||
function __fish_atuin_global_optspecs
|
||||
string join \n h/help V/version
|
||||
end
|
||||
|
||||
function __fish_atuin_needs_command
|
||||
# Figure out if the current invocation already has a command.
|
||||
set -l cmd (commandline -opc)
|
||||
set -e cmd[1]
|
||||
argparse -s (__fish_atuin_global_optspecs) -- $cmd 2>/dev/null
|
||||
or return
|
||||
if set -q argv[1]
|
||||
# Also print the command, so this can be used to figure out what it is.
|
||||
echo $argv[1]
|
||||
return 1
|
||||
end
|
||||
return 0
|
||||
end
|
||||
|
||||
function __fish_atuin_using_subcommand
|
||||
set -l cmd (__fish_atuin_needs_command)
|
||||
test -z "$cmd"
|
||||
and return 1
|
||||
contains -- $cmd[1] $argv
|
||||
end
|
||||
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -s V -l version -d 'Print version'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "history" -d 'Manipulate shell history'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "import" -d 'Import shell history from file'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "stats" -d 'Calculate statistics for your history'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "search" -d 'Interactive history search'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "sync" -d 'Sync with the configured server'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "login" -d 'Login to the configured server'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "logout" -d 'Log out'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "register" -d 'Register with the configured server'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "key" -d 'Print the encryption key for transfer to another machine'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "status" -d 'Display the sync status'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "account" -d 'Manage your sync account'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "kv" -d 'Get or set small key-value pairs'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "store" -d 'Manage the atuin data store'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "dotfiles" -d 'Manage your dotfiles with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "scripts" -d 'Manage your scripts with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "init" -d 'Print Atuin\'s shell init script'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "info" -d 'Information about dotfiles locations and ENV vars'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "doctor" -d 'Run the doctor to check for common issues'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "wrapped"
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "daemon" -d '*Experimental* Start the background daemon'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "default-config" -d 'Print the default atuin configuration (config.toml)'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "server" -d 'Start an atuin server'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "uuid" -d 'Generate a UUID'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "contributors"
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "gen-completions" -d 'Generate shell completions'
|
||||
complete -c atuin -n "__fish_atuin_needs_command" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "start" -d 'Begins a new command in the history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "end" -d 'Finishes a new command in the history (adds time, exit code)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "list" -d 'List all items in history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "last" -d 'Get the last command ran'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "init-store"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "prune" -d 'Delete history entries matching the configured exclusion filters'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "dedup" -d 'Delete duplicate history entries (that have the same command, cwd and hostname)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and not __fish_seen_subcommand_from start end list last init-store prune dedup help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from start" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from end" -s e -l exit -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from end" -s d -l duration -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from end" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -s r -l reverse -r -f -a "true\t''
|
||||
false\t''"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -l timezone -l tz -d 'Display the command time in another timezone other than the configured default' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -s f -l format -d 'Available variables: {command}, {directory}, {duration}, {user}, {host}, {exit} and {time}. Example: --format "{time} - [{duration}] - {directory}$\\t{command}"' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -s c -l cwd
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -s s -l session
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -l human
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -l cmd-only -d 'Show only the text of the command'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -l print0 -d 'Terminate the output with a null, for better multiline support'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help (see more with \'--help\')'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from last" -l timezone -l tz -d 'Display the command time in another timezone other than the configured default' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from last" -s f -l format -d 'Available variables: {command}, {directory}, {duration}, {user}, {host} and {time}. Example: --format "{time} - [{duration}] - {directory}$\\t{command}"' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from last" -l human
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from last" -l cmd-only -d 'Show only the text of the command'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from last" -s h -l help -d 'Print help (see more with \'--help\')'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from init-store" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from prune" -s n -l dry-run -d 'List matching history lines without performing the actual deletion'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from prune" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from dedup" -s b -l before -d 'Only delete results added before this date' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from dedup" -l dupkeep -d 'How many recent duplicates to keep' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from dedup" -s n -l dry-run -d 'List matching history lines without performing the actual deletion'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from dedup" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "start" -d 'Begins a new command in the history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "end" -d 'Finishes a new command in the history (adds time, exit code)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "list" -d 'List all items in history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "last" -d 'Get the last command ran'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "init-store"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "prune" -d 'Delete history entries matching the configured exclusion filters'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "dedup" -d 'Delete duplicate history entries (that have the same command, cwd and hostname)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand history; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "auto" -d 'Import history for the current shell'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "zsh" -d 'Import history from the zsh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "zsh-hist-db" -d 'Import history from the zsh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "bash" -d 'Import history from the bash history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "replxx" -d 'Import history from the replxx history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "resh" -d 'Import history from the resh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "fish" -d 'Import history from the fish history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "nu" -d 'Import history from the nu history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "nu-hist-db" -d 'Import history from the nu history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "xonsh" -d 'Import history from xonsh json files'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "xonsh-sqlite" -d 'Import history from xonsh sqlite db'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and not __fish_seen_subcommand_from auto zsh zsh-hist-db bash replxx resh fish nu nu-hist-db xonsh xonsh-sqlite help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from auto" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from zsh" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from zsh-hist-db" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from bash" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from replxx" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from resh" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from fish" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from nu" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from nu-hist-db" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from xonsh" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from xonsh-sqlite" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "auto" -d 'Import history for the current shell'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "zsh" -d 'Import history from the zsh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "zsh-hist-db" -d 'Import history from the zsh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "bash" -d 'Import history from the bash history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "replxx" -d 'Import history from the replxx history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "resh" -d 'Import history from the resh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "fish" -d 'Import history from the fish history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "nu" -d 'Import history from the nu history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "nu-hist-db" -d 'Import history from the nu history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "xonsh" -d 'Import history from xonsh json files'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "xonsh-sqlite" -d 'Import history from xonsh sqlite db'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand import; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand stats" -s c -l count -d 'How many top commands to list' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand stats" -s n -l ngram-size -d 'The number of consecutive commands to consider' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand stats" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s c -l cwd -d 'Filter search result by directory' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l exclude-cwd -d 'Exclude directory from results' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s e -l exit -d 'Filter search result by exit code' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l exclude-exit -d 'Exclude results with this exit code' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s b -l before -d 'Only include results added before this date' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l after -d 'Only include results after this date' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l limit -d 'How many entries to return at most' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l offset -d 'Offset from the start of the results' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l filter-mode -d 'Allow overriding filter mode over config' -r -f -a "global\t''
|
||||
host\t''
|
||||
session\t''
|
||||
directory\t''
|
||||
workspace\t''"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l search-mode -d 'Allow overriding search mode over config' -r -f -a "prefix\t''
|
||||
full-text\t''
|
||||
fuzzy\t''
|
||||
skim\t''"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l keymap-mode -d 'Notify the keymap at the shell\'s side' -r -f -a "emacs\t''
|
||||
vim-normal\t''
|
||||
vim-insert\t''
|
||||
auto\t''"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l timezone -l tz -d 'Display the command time in another timezone other than the configured default' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s f -l format -d 'Available variables: {command}, {directory}, {duration}, {user}, {host}, {time}, {exit} and {relativetime}. Example: --format "{time} - [{duration}] - {directory}$\\t{command}"' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l inline-height -d 'Set the maximum number of lines Atuin\'s interface should take up' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s i -l interactive -d 'Open interactive search UI'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l shell-up-key-binding -d 'Marker argument used to inform atuin that it was invoked from a shell up-key binding (hidden from help to avoid confusion)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l human -d 'Use human-readable formatting for time'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l cmd-only -d 'Show only the text of the command'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l print0 -d 'Terminate the output with a null, for better multiline handling'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l delete -d 'Delete anything matching this query. Will not print out the match'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l delete-it-all -d 'Delete EVERYTHING!'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s r -l reverse -d 'Reverse the order of results, oldest first'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -l include-duplicates -d 'Include duplicate commands in the output (non-interactive only)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand search" -s h -l help -d 'Print help (see more with \'--help\')'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand sync" -s f -l force -d 'Force re-download everything'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand sync" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand login" -s u -l username -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand login" -s p -l password -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand login" -s k -l key -d 'The encryption key for your account' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand login" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand logout" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand register" -s u -l username -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand register" -s p -l password -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand register" -s e -l email -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand register" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand key" -l base64 -d 'Switch to base64 output of the key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand key" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand status" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "login" -d 'Login to the configured server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "register" -d 'Register a new account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "logout" -d 'Log out'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "delete" -d 'Delete your account, and all synced data'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "change-password" -d 'Change your password'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "verify" -d 'Verify your account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and not __fish_seen_subcommand_from login register logout delete change-password verify help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from login" -s u -l username -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from login" -s p -l password -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from login" -s k -l key -d 'The encryption key for your account' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from login" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from register" -s u -l username -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from register" -s p -l password -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from register" -s e -l email -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from register" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from logout" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from delete" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from change-password" -s c -l current-password -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from change-password" -s n -l new-password -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from change-password" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from verify" -s t -l token -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from verify" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "login" -d 'Login to the configured server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "register" -d 'Register a new account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "logout" -d 'Log out'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "delete" -d 'Delete your account, and all synced data'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "change-password" -d 'Change your password'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "verify" -d 'Verify your account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand account; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -f -a "set" -d 'Set a key-value pair'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -f -a "delete" -d 'Delete one or more key-value pairs'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -f -a "get" -d 'Retrieve a saved value'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -f -a "list" -d 'List all keys in a namespace, or in all namespaces'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -f -a "rebuild" -d 'Rebuild the KV store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and not __fish_seen_subcommand_from set delete get list rebuild help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from set" -s k -l key -d 'Key to set' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from set" -s n -l namespace -d 'Namespace for the key-value pair' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from set" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from delete" -s n -l namespace -d 'Namespace for the key-value pair' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from delete" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from get" -s n -l namespace -d 'Namespace for the key-value pair' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from get" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from list" -s n -l namespace -d 'Namespace to list keys from' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from list" -s a -l all-namespaces -d 'List all keys in all namespaces'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from rebuild" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from help" -f -a "set" -d 'Set a key-value pair'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from help" -f -a "delete" -d 'Delete one or more key-value pairs'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from help" -f -a "get" -d 'Retrieve a saved value'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from help" -f -a "list" -d 'List all keys in a namespace, or in all namespaces'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from help" -f -a "rebuild" -d 'Rebuild the KV store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand kv; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "status" -d 'Print the current status of the record store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "rebuild" -d 'Rebuild a store (eg atuin store rebuild history)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "rekey" -d 'Re-encrypt the store with a new key (potential for data loss!)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "purge" -d 'Delete all records in the store that cannot be decrypted with the current key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "verify" -d 'Verify that all records in the store can be decrypted with the current key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "push" -d 'Push all records to the remote sync server (one way sync)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "pull" -d 'Pull records from the remote sync server (one way sync)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and not __fish_seen_subcommand_from status rebuild rekey purge verify push pull help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from status" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from rebuild" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from rekey" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from purge" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from verify" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from push" -s t -l tag -d 'The tag to push (eg, \'history\'). Defaults to all tags' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from push" -l host -d 'The host to push, in the form of a UUID host ID. Defaults to the current host' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from push" -l force -d 'Force push records This will override both host and tag, to be all hosts and all tags. First clear the remote store, then upload all of the local store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from push" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from pull" -s t -l tag -d 'The tag to push (eg, \'history\'). Defaults to all tags' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from pull" -l force -d 'Force push records This will first wipe the local store, and then download all records from the remote'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from pull" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "status" -d 'Print the current status of the record store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "rebuild" -d 'Rebuild a store (eg atuin store rebuild history)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "rekey" -d 'Re-encrypt the store with a new key (potential for data loss!)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "purge" -d 'Delete all records in the store that cannot be decrypted with the current key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "verify" -d 'Verify that all records in the store can be decrypted with the current key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "push" -d 'Push all records to the remote sync server (one way sync)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "pull" -d 'Pull records from the remote sync server (one way sync)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand store; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and not __fish_seen_subcommand_from alias var help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and not __fish_seen_subcommand_from alias var help" -f -a "alias" -d 'Manage shell aliases with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and not __fish_seen_subcommand_from alias var help" -f -a "var" -d 'Manage shell and environment variables with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and not __fish_seen_subcommand_from alias var help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from alias" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from alias" -f -a "set" -d 'Set an alias'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from alias" -f -a "delete" -d 'Delete an alias'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from alias" -f -a "list" -d 'List all aliases'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from alias" -f -a "clear" -d 'Delete all aliases'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from alias" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from var" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from var" -f -a "set" -d 'Set a variable'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from var" -f -a "delete" -d 'Delete a variable'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from var" -f -a "list" -d 'List all variables'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from var" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from help" -f -a "alias" -d 'Manage shell aliases with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from help" -f -a "var" -d 'Manage shell and environment variables with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand dotfiles; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "new"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "run"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "list"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "get"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "edit"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "delete"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and not __fish_seen_subcommand_from new run list get edit delete help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -s d -l description -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -s t -l tags -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -s s -l shebang -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -l script -r -F
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -l last -d 'Use the last command as the script content Optionally specify a number to use the last N commands' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -l no-edit -d 'Skip opening editor when using --last'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from new" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from run" -s v -l var -d 'Specify template variables in the format KEY=VALUE Example: -v name=John -v greeting="Hello there"' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from run" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from list" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from get" -s s -l script -d 'Display only the executable script with shebang'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from get" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -s d -l description -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -s t -l tags -d 'Replace all existing tags with these new tags' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -l rename -d 'Rename the script' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -s s -l shebang -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -l script -r -F
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -l no-tags -d 'Remove all tags from the script'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -l no-edit -d 'Skip opening editor'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from edit" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from delete" -s f -l force
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from delete" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "new"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "run"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "list"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "get"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "edit"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "delete"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand scripts; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand init" -l disable-ctrl-r -d 'Disable the binding of CTRL-R to atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand init" -l disable-up-arrow -d 'Disable the binding of the Up Arrow key to atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand init" -s h -l help -d 'Print help (see more with \'--help\')'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand info" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand doctor" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand wrapped" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand daemon" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand default-config" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and not __fish_seen_subcommand_from start default-config help" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and not __fish_seen_subcommand_from start default-config help" -f -a "start" -d 'Start the server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and not __fish_seen_subcommand_from start default-config help" -f -a "default-config" -d 'Print server example configuration'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and not __fish_seen_subcommand_from start default-config help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from start" -l host -d 'The host address to bind' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from start" -s p -l port -d 'The port to bind' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from start" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from default-config" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from help" -f -a "start" -d 'Start the server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from help" -f -a "default-config" -d 'Print server example configuration'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand server; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand uuid" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand contributors" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand gen-completions" -s s -l shell -d 'Set the shell for generating completions' -r -f -a "bash\t''
|
||||
elvish\t''
|
||||
fish\t''
|
||||
nushell\t''
|
||||
powershell\t''
|
||||
zsh\t''"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand gen-completions" -s o -l out-dir -d 'Set the output directory' -r
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand gen-completions" -s h -l help -d 'Print help'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "history" -d 'Manipulate shell history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "import" -d 'Import shell history from file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "stats" -d 'Calculate statistics for your history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "search" -d 'Interactive history search'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "sync" -d 'Sync with the configured server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "login" -d 'Login to the configured server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "logout" -d 'Log out'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "register" -d 'Register with the configured server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "key" -d 'Print the encryption key for transfer to another machine'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "status" -d 'Display the sync status'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "account" -d 'Manage your sync account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "kv" -d 'Get or set small key-value pairs'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "store" -d 'Manage the atuin data store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "dotfiles" -d 'Manage your dotfiles with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "scripts" -d 'Manage your scripts with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "init" -d 'Print Atuin\'s shell init script'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "info" -d 'Information about dotfiles locations and ENV vars'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "doctor" -d 'Run the doctor to check for common issues'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "wrapped"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "daemon" -d '*Experimental* Start the background daemon'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "default-config" -d 'Print the default atuin configuration (config.toml)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "server" -d 'Start an atuin server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "uuid" -d 'Generate a UUID'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "contributors"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "gen-completions" -d 'Generate shell completions'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and not __fish_seen_subcommand_from history import stats search sync login logout register key status account kv store dotfiles scripts init info doctor wrapped daemon default-config server uuid contributors gen-completions help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "start" -d 'Begins a new command in the history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "end" -d 'Finishes a new command in the history (adds time, exit code)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "list" -d 'List all items in history'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "last" -d 'Get the last command ran'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "init-store"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "prune" -d 'Delete history entries matching the configured exclusion filters'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from history" -f -a "dedup" -d 'Delete duplicate history entries (that have the same command, cwd and hostname)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "auto" -d 'Import history for the current shell'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "zsh" -d 'Import history from the zsh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "zsh-hist-db" -d 'Import history from the zsh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "bash" -d 'Import history from the bash history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "replxx" -d 'Import history from the replxx history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "resh" -d 'Import history from the resh history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "fish" -d 'Import history from the fish history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "nu" -d 'Import history from the nu history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "nu-hist-db" -d 'Import history from the nu history file'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "xonsh" -d 'Import history from xonsh json files'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from import" -f -a "xonsh-sqlite" -d 'Import history from xonsh sqlite db'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from account" -f -a "login" -d 'Login to the configured server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from account" -f -a "register" -d 'Register a new account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from account" -f -a "logout" -d 'Log out'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from account" -f -a "delete" -d 'Delete your account, and all synced data'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from account" -f -a "change-password" -d 'Change your password'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from account" -f -a "verify" -d 'Verify your account'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from kv" -f -a "set" -d 'Set a key-value pair'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from kv" -f -a "delete" -d 'Delete one or more key-value pairs'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from kv" -f -a "get" -d 'Retrieve a saved value'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from kv" -f -a "list" -d 'List all keys in a namespace, or in all namespaces'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from kv" -f -a "rebuild" -d 'Rebuild the KV store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "status" -d 'Print the current status of the record store'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "rebuild" -d 'Rebuild a store (eg atuin store rebuild history)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "rekey" -d 'Re-encrypt the store with a new key (potential for data loss!)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "purge" -d 'Delete all records in the store that cannot be decrypted with the current key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "verify" -d 'Verify that all records in the store can be decrypted with the current key'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "push" -d 'Push all records to the remote sync server (one way sync)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from store" -f -a "pull" -d 'Pull records from the remote sync server (one way sync)'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from dotfiles" -f -a "alias" -d 'Manage shell aliases with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from dotfiles" -f -a "var" -d 'Manage shell and environment variables with Atuin'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from scripts" -f -a "new"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from scripts" -f -a "run"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from scripts" -f -a "list"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from scripts" -f -a "get"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from scripts" -f -a "edit"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from scripts" -f -a "delete"
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from server" -f -a "start" -d 'Start the server'
|
||||
complete -c atuin -n "__fish_atuin_using_subcommand help; and __fish_seen_subcommand_from server" -f -a "default-config" -d 'Print server example configuration'
|
||||
331
configs/fish/completions/fish-lsp.fish
Normal file
331
configs/fish/completions/fish-lsp.fish
Normal file
|
|
@ -0,0 +1,331 @@
|
|||
#
|
||||
# AUTO GENERATED BY 'fish-lsp'
|
||||
#
|
||||
# * Any command should generate the completions file
|
||||
#
|
||||
# >_ fish-lsp complete > ~/.config/fish/completions/fish-lsp.fish
|
||||
# >_ fish-lsp complete > $fish_complete_path[1]/fish-lsp.fish
|
||||
# >_ yarn install && yarn dev # from inside the '~/path/to/fish-lsp' source code
|
||||
#
|
||||
# * You can test the completions by editing:
|
||||
#
|
||||
# ~/.config/fish/completions/fish-lsp.fish
|
||||
#
|
||||
# or by using the command:
|
||||
#
|
||||
# >_ fish-lsp complete
|
||||
#
|
||||
# to visually check what is wrong
|
||||
#
|
||||
# * To interactively test the completions, you can use:
|
||||
#
|
||||
# >_ complete -c fish-lsp -e # erase all fish-lsp completions
|
||||
# >_ fish-lsp complete | source
|
||||
#
|
||||
# * For more info, try editing the generated output inside:
|
||||
#
|
||||
# ~/...install_path.../fish-lsp/src/utils/get-lsp-completions.ts
|
||||
#
|
||||
# * You can see if the completions are up to date by running the command:
|
||||
#
|
||||
# >_ fish-lsp info --check-health
|
||||
#
|
||||
# REPO URL: https://github.com/ndonfris/fish-lsp
|
||||
|
||||
|
||||
#############################################
|
||||
# helper functions for fish-lsp completions #
|
||||
#############################################
|
||||
|
||||
# print all unique `fish-lsp start --enable|--disable ...` features (i.e., complete, hover, etc.)
|
||||
# if a feature is already specified in the command line, it will be skipped
|
||||
# the features can also be used in the global environment variables `fish_lsp_enabled_handlers` or `fish_lsp_disabled_handlers`
|
||||
function __fish_lsp_get_features -d 'print all features controlled by the server, not yet used in the commandline'
|
||||
set -l all_features 'complete' 'hover' 'rename' 'definition' 'implementation' 'reference' 'formatting' 'formatRange' 'typeFormatting' 'codeAction' 'codeLens' 'folding' 'signature' 'executeCommand' 'inlayHint' 'highlight' 'diagnostic' 'popups'
|
||||
set -l features_to_complete
|
||||
set -l features_to_skip
|
||||
set -l opts (commandline -opc)
|
||||
for opt in $opts
|
||||
if contains -- $opt $all_features
|
||||
set features_to_skip $features_to_skip $opt
|
||||
end
|
||||
end
|
||||
for feature in $all_features
|
||||
if not contains -- $feature $features_to_skip
|
||||
printf '%b\t%s\n' $feature "$feature handler"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# print all unique 'fish-lsp env --only ...` env_variables (i.e., $fish_lsp_*, ...)
|
||||
# if a env_variable is already specified in the command line, it will not be included again
|
||||
function __fish_lsp_get_env_variables -d 'print all fish_lsp_* env variables, not yet used in the commandline'
|
||||
# every env variable name
|
||||
set -l env_names "fish_lsp_enabled_handlers" \
|
||||
"fish_lsp_disabled_handlers" \
|
||||
"fish_lsp_commit_characters" \
|
||||
"fish_lsp_log_file" \
|
||||
"fish_lsp_log_level" \
|
||||
"fish_lsp_all_indexed_paths" \
|
||||
"fish_lsp_modifiable_paths" \
|
||||
"fish_lsp_diagnostic_disable_error_codes" \
|
||||
"fish_lsp_enable_experimental_diagnostics" \
|
||||
"fish_lsp_max_background_files" \
|
||||
"fish_lsp_show_client_popups" \
|
||||
"fish_lsp_single_workspace_support"
|
||||
|
||||
# every completion argument `name\t'description'`, only unused env variables will be printed
|
||||
set -l env_names_with_descriptions "fish_lsp_enabled_handlers\t'server handlers to enable'" \
|
||||
"fish_lsp_disabled_handlers\t'server handlers to disable'" \
|
||||
"fish_lsp_commit_characters\t'commit characters that select completion items'" \
|
||||
"fish_lsp_log_file\t'path to the fish-lsp's log file'" \
|
||||
"fish_lsp_log_level\t'minimum log level to include in the log file'" \
|
||||
"fish_lsp_all_indexed_paths\t'directories that the server should always index on startup'" \
|
||||
"fish_lsp_modifiable_paths\t'indexed paths that can be modified'" \
|
||||
"fish_lsp_diagnostic_disable_error_codes\t'diagnostic codes to disable'" \
|
||||
"fish_lsp_enable_experimental_diagnostics\t'enable fish-lsp's experimental diagnostics'" \
|
||||
"fish_lsp_max_background_files\t'maximum number of files to analyze in the background on startup'" \
|
||||
"fish_lsp_show_client_popups\t'send `connection/window/*` requests in the server'" \
|
||||
"fish_lsp_single_workspace_support\t'limit workspace searching to only the current workspace'"
|
||||
|
||||
# get the current command line token (for comma separated options)
|
||||
set -l current (commandline -ct)
|
||||
|
||||
# utility function to check if the current token contains a comma
|
||||
function has_comma --inherit-variable current --description 'check if the current token contains a comma'
|
||||
string match -rq '.*,.*' -- $current || string match -rq -- '--only=.*' $current
|
||||
return $status
|
||||
end
|
||||
|
||||
# get the current command line options, adding the current token if it contains a comma
|
||||
set -l opts (commandline -opc)
|
||||
has_comma && set -a opts $current
|
||||
|
||||
# create two arrays, one for the env variables already used, and the other
|
||||
# for all the arguments passed into the commandline
|
||||
set -l features_to_skip
|
||||
set -l fixed_opts
|
||||
|
||||
# split any comma separated options
|
||||
for opt in $opts
|
||||
if string match -rq -- '--only=.*' $opt
|
||||
set -a fixed_opts '--only' (string split -m1 -f2 -- '--only=' $opt | string split ',')
|
||||
else if string match -q '*,*' -- $opt
|
||||
set fixed_opts $fixed_opts (string split ',' -- $opt)
|
||||
else
|
||||
set fixed_opts $fixed_opts $opt
|
||||
end
|
||||
end
|
||||
|
||||
# skip any env variable that is already specified in the command line
|
||||
for opt in $fixed_opts
|
||||
if contains -- $opt $env_names
|
||||
set -a features_to_skip $opt
|
||||
end
|
||||
end
|
||||
|
||||
# if using the `--only=` syntax, remove the `--only` part.
|
||||
# when entries are separated by commas, we need to keep the current token's prefix comma
|
||||
# in the completion output
|
||||
set prefix ''
|
||||
if has_comma
|
||||
set prefix (string replace -r '[^,]*$' '' -- $current | string replace -r -- '^--only=' '')
|
||||
end
|
||||
|
||||
# print the completions that haven't been used yet
|
||||
for line in $env_names_with_descriptions
|
||||
set name (string split -f1 -m1 '\t' -- $line)
|
||||
if not contains -- $name $features_to_skip
|
||||
echo -e "$prefix$line"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# check for usage of the main switches in env command `fish-lsp env --show|--create|--show-default|--names`
|
||||
#
|
||||
# requires passing in one of switches: `--none` or `--any`
|
||||
# - `--none` check that none of the main switches are used
|
||||
# - `--any` check that a main switch has been seen
|
||||
# - `--no-names` check that the `--names` switch is not used, but needs to be
|
||||
# paired with `--none` or `--any`
|
||||
#
|
||||
# used in the `env` completions, for grouping repeated logic on those
|
||||
# completions conditional checks.
|
||||
#
|
||||
# ```
|
||||
# complete -n '__fish_lsp_env_main_switch --none'
|
||||
# ```
|
||||
function __fish_lsp_env_main_switch --description 'check if the commandline contains any of the main env switches (--show|--create|--show-default|--names)'
|
||||
argparse any none no-names names-joined -- $argv
|
||||
or return 1
|
||||
|
||||
# none means we don't want to see any of the main switches
|
||||
# no-names doesn't change anything here, since we are making sure that
|
||||
# names already doesn't exist in the command line
|
||||
if set -ql _flag_none
|
||||
not __fish_contains_opt names
|
||||
and not __fish_contains_opt -s s show
|
||||
and not __fish_contains_opt -s c create
|
||||
and not __fish_contains_opt show-default
|
||||
return $status
|
||||
end
|
||||
|
||||
# any means that one of the main switches has been used.
|
||||
if set -ql _flag_any
|
||||
if set -ql _flag_no_names
|
||||
__fish_contains_opt names
|
||||
and return 1
|
||||
end
|
||||
not set -ql _flag_no_names && __fish_contains_opt names
|
||||
or __fish_contains_opt -s s show
|
||||
or __fish_contains_opt -s c create
|
||||
or __fish_contains_opt show-default
|
||||
return $status
|
||||
end
|
||||
|
||||
# names joined means that both the --names and --joined switches are used
|
||||
if set -ql _flag_names_joined
|
||||
__fish_contains_opt names
|
||||
and not __fish_contains_opt -s j joined
|
||||
and return $status
|
||||
end
|
||||
# if no switches are found, return 1
|
||||
return 1
|
||||
end
|
||||
|
||||
|
||||
|
||||
# make sure `fish-lsp start --stdio|--node-ipc|--socket` is used singularly
|
||||
# and not in combination with any other connection related option
|
||||
function __fish_lsp_start_connection_opts -d 'check if any option (--stdio|--node-ipc|--socket) is used'
|
||||
__fish_contains_opt stdio || __fish_contains_opt node-ipc || __fish_contains_opt socket
|
||||
end
|
||||
|
||||
# check if the last `fish-lsp start ...` flag/switch is `--enable` or `--disable`
|
||||
# this will find the last `-*` argument in the command line, skipping any argument not starting with `-`
|
||||
# and make sure it matches any of the provided `$argv` passed in to the function (defaulting to: `--enable` `--disable`)
|
||||
# we use this to allow multiple sequential features to follow `fish-lsp start --enable|--disable ...`
|
||||
# USAGE:
|
||||
# > `fish-lsp --stdio --start complete hover --disable codeAction highlight formatting <TAB>`
|
||||
# `__fish_lsp_last_switch --enable --disable ` would return 0 since `--disable` is the last switch
|
||||
function __fish_lsp_last_switch -d 'check if the last argument w/ a leading `-` matches any $argv'
|
||||
set -l opts (commandline -opc)
|
||||
set -l last_opt
|
||||
for opt in $opts
|
||||
switch $opt
|
||||
case '-*'
|
||||
set last_opt $opt
|
||||
case '*'
|
||||
continue
|
||||
end
|
||||
end
|
||||
set -l match_opts $argv
|
||||
if test (count $argv) -eq 0
|
||||
set match_opts '--enable' '--disable'
|
||||
end
|
||||
for switch in $match_opts
|
||||
if test "$last_opt" = "$switch"
|
||||
return 0
|
||||
end
|
||||
end
|
||||
return 1
|
||||
end
|
||||
|
||||
###############################
|
||||
### END OF HELPER FUNCTIONS ###
|
||||
###############################
|
||||
|
||||
## disable file completions
|
||||
complete -c fish-lsp -f
|
||||
|
||||
## fish-lsp <TAB>
|
||||
complete -c fish-lsp -n "__fish_is_first_arg; and __fish_complete_subcommand" -k -a "
|
||||
start\t'start the lsp'
|
||||
info\t'show info about the fish-lsp'
|
||||
url\t'show helpful url(s) related to the fish-lsp'
|
||||
complete\t'generate fish shell completions'
|
||||
env\t'generate environment variables for lsp configuration'"
|
||||
|
||||
## `fish-lsp -<TAB>`
|
||||
complete -c fish-lsp -n 'not __fish_use_subcommand; and __fish_is_first_arg; and not __fish_contains_opt -s v version' -s v -l version -d 'Show lsp version'
|
||||
complete -c fish-lsp -n 'not __fish_use_subcommand; and __fish_is_first_arg; and not __fish_contains_opt -s h help' -s h -l help -d 'Show help information'
|
||||
complete -c fish-lsp -n 'not __fish_use_subcommand; and __fish_is_first_arg; and not __fish_contains_opt help-all' -l help-all -d 'Show all help information'
|
||||
complete -c fish-lsp -n 'not __fish_use_subcommand; and __fish_is_first_arg; and not __fish_contains_opt help-short' -l help-short -d 'Show short help information'
|
||||
complete -c fish-lsp -n 'not __fish_use_subcommand; and __fish_is_first_arg; and not __fish_contains_opt help-man' -l help-man -d 'Show raw manpage'
|
||||
|
||||
## `fish-lsp start --<TAB>`
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and not __fish_contains_opt dump' -l dump -d 'stop lsp & show the startup options being read'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start' -l enable -d 'enable the startup option' -xa '(__fish_lsp_get_features)'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start' -l disable -d 'disable the startup option' -xa '(__fish_lsp_get_features)'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and __fish_lsp_last_switch --disable --enable' -a '(__fish_lsp_get_features)' # allow completing multiple features in a row (when last seen switch is either: `--enable|--disable`)
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and not __fish_lsp_start_connection_opts' -l stdio -d 'use stdin/stdout for communication (default)'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and not __fish_lsp_start_connection_opts' -l node-ipc -d 'use node IPC for communication'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and not __fish_lsp_start_connection_opts' -l socket -d 'use TCP socket for communication' -x
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and not __fish_contains_opt memory-limit' -l memory-limit -d 'set memory usage limit in MB' -x
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and not __fish_contains_opt max-files' -l max-files -d 'override the maximum number of files to analyze' -xa '(echo 100; echo 500; seq 1000 500 10000)'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from start; and test (commandline -opc)[-1] = "--max-files"' -a '(echo 100; echo 500; seq 1000 500 10000)' -d 'override the maximum number of files to analyze'
|
||||
|
||||
## fish-lsp url --<TAB>
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt repo' -l repo -d 'show git repo url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt git' -l git -d 'show git repo url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt npm' -l npm -d 'show npmjs.com url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt homepage' -l homepage -d 'show website url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt contributing' -l contributing -d 'show git CONTRIBUTING.md url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt wiki' -l wiki -d 'show git wiki url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt issues' -l issues -d 'show git issues url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt report' -l report -d 'show git issues url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt discussions' -l discussions -d 'show git discussions url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt clients-repo' -l clients-repo -d 'show git clients-repo url'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from url; and not __fish_contains_opt sources' -l sources -d 'show useful url list of sources'
|
||||
|
||||
## fish-lsp complete --<TAB>
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt fish' -l fish -d 'DEFAULT BEHAVIOR: show output for completion/fish-lsp.fish'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt names' -l names -d 'show names of subcommands'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt names-with-summary' -l names-with-summary -d 'show `name\tsummary\n` of subcommands'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt features' -l features -d 'show feature/toggle names'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt toggles' -l toggles -d 'show feature/toggle names'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt env-variables' -l env-variables -d 'show env variable completions'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from complete; and not __fish_contains_opt env-variable-names' -l env-variable-names -d 'show env variable names'
|
||||
|
||||
## fish-lsp info --<TAB>
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt bin' -l bin -d 'show the binary path'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt repo' -l repo -d 'show the repo path'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt build-time' -l build-time -d 'show the build-time'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt lsp-version' -l lsp-version -d 'show the npm package for the lsp-version'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt capabilities' -l capabilities -d 'show the lsp capabilities implemented'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt man-file' -l man-file -d 'show man file path'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt log-file' -l log-file -d 'show log file path'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt more' -l more -d 'show more info'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt time-startup' -l time-startup -d 'show startup timing info'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from info; and not __fish_contains_opt check-health' -l check-health -d 'show the server health'
|
||||
|
||||
## fish-lsp env --<TAB>
|
||||
# fish-lsp env <TAB>
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --none; and __fish_complete_subcommand --fcs-skip=2' -kra "
|
||||
--show-default\t'show the default values for fish-lsp env variables'
|
||||
-c\t'create the env variables'
|
||||
--create\t'create the env variables'
|
||||
-s\t'show the current fish-lsp env variables with their values'
|
||||
--show\t'show the current fish-lsp env variables with their values'
|
||||
--names\t'output only the names of the env variables'"
|
||||
# main switches (first arguments after the `env` subcommand)
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --none' -l show-default -d 'show the default values for fish-lsp env variables' -k
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --none' -s c -l create -d 'build initial fish-lsp env variables' -k
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --none' -s s -l show -d 'show the current fish-lsp env variables' -k
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --none' -l names -d 'output only the names of the env variables' -k
|
||||
# --only switch
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --any' -l only -d 'show only certain env variables' -xa '(__fish_lsp_get_env_variables)'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_last_switch --only' -xa '(__fish_lsp_get_env_variables)'
|
||||
# switches usable after the main switches
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --any --no-names; and not __fish_contains_opt no-comments' -l no-comments -d 'skip outputting comments'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --any --no-names; and not __fish_contains_opt no-global' -l no-global -d 'use local exports'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --any --no-names; and not __fish_contains_opt no-local' -l no-local -d 'do not use local scope (pair with --no-global)'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --any --no-names; and not __fish_contains_opt no-export' -l no-export -d 'do not export variables'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --any --no-names; and not __fish_contains_opt confd' -l confd -d 'output for redirect to "conf.d/fish-lsp.fish"'
|
||||
complete -c fish-lsp -n '__fish_seen_subcommand_from env; and __fish_lsp_env_main_switch --names-joined; and not __fish_contains_opt joined' -l joined -d 'output the names in a single line'
|
||||
|
||||
|
||||
# built by any of the commands:
|
||||
# fish-lsp complete > ~/.config/fish/completions/fish-lsp.fish
|
||||
# fish-lsp complete > $fish_complete_path[1]/fish-lsp.fish
|
||||
# fish-lsp complete > $__fish_config_dir/completions/fish-lsp.fish
|
||||
7
configs/fish/completions/fisher.fish
Normal file
7
configs/fish/completions/fisher.fish
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
complete --command fisher --exclusive --long help --description "Print help"
|
||||
complete --command fisher --exclusive --long version --description "Print version"
|
||||
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments install --description "Install plugins"
|
||||
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments update --description "Update installed plugins"
|
||||
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments remove --description "Remove installed plugins"
|
||||
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments list --description "List installed plugins matching regex"
|
||||
complete --command fisher --exclusive --condition "__fish_seen_subcommand_from update remove" --arguments "(fisher list)"
|
||||
17
configs/fish/completions/mise.fish
Normal file
17
configs/fish/completions/mise.fish
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# if "usage" is not installed show an error
|
||||
if ! command -v usage &> /dev/null
|
||||
echo >&2
|
||||
echo "Error: usage CLI not found. This is required for completions to work in mise." >&2
|
||||
echo "See https://usage.jdx.dev for more information." >&2
|
||||
return 1
|
||||
end
|
||||
|
||||
if ! set -q _usage_spec_mise_2025_7_29
|
||||
set -g _usage_spec_mise_2025_7_29 (mise usage | string collect)
|
||||
end
|
||||
set -l tokens
|
||||
if commandline -x >/dev/null 2>&1
|
||||
complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_7_29" -- (commandline -xpc) (commandline -t))'
|
||||
else
|
||||
complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_7_29" -- (commandline -opc) (commandline -t))'
|
||||
end
|
||||
8
configs/fish/config.fish
Normal file
8
configs/fish/config.fish
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
if status is-interactive
|
||||
# Commands to run in interactive sessions can go here
|
||||
zoxide init --cmd cd fish | source
|
||||
atuin init fish | source
|
||||
|
||||
mise activate fish | source
|
||||
end
|
||||
|
||||
116
configs/fish/fish_variables
Normal file
116
configs/fish/fish_variables
Normal file
|
|
@ -0,0 +1,116 @@
|
|||
# This file contains fish universal variable definitions.
|
||||
# VERSION: 3.0
|
||||
SETUVAR __fish_initialized:3800
|
||||
SETUVAR _fisher_catppuccin_2F_fish_files:\x7e/\x2econfig/fish/themes/Catppuccin\x20Frappe\x2etheme\x1e\x7e/\x2econfig/fish/themes/Catppuccin\x20Latte\x2etheme\x1e\x7e/\x2econfig/fish/themes/Catppuccin\x20Macchiato\x2etheme\x1e\x7e/\x2econfig/fish/themes/Catppuccin\x20Mocha\x2etheme
|
||||
SETUVAR _fisher_jorgebucaran_2F_autopair_2E_fish_files:\x7e/\x2econfig/fish/functions/_autopair_backspace\x2efish\x1e\x7e/\x2econfig/fish/functions/_autopair_insert_left\x2efish\x1e\x7e/\x2econfig/fish/functions/_autopair_insert_right\x2efish\x1e\x7e/\x2econfig/fish/functions/_autopair_insert_same\x2efish\x1e\x7e/\x2econfig/fish/functions/_autopair_tab\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/autopair\x2efish
|
||||
SETUVAR _fisher_jorgebucaran_2F_fisher_files:\x7e/\x2econfig/fish/functions/fisher\x2efish\x1e\x7e/\x2econfig/fish/completions/fisher\x2efish
|
||||
SETUVAR _fisher_plugins:jorgebucaran/fisher\x1ecatppuccin/fish\x1epure\x2dfish/pure\x1ejorgebucaran/autopair\x2efish
|
||||
SETUVAR _fisher_pure_2D_fish_2F_pure_files:\x7e/\x2econfig/fish/functions/_pure_check_availability\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_check_for_new_release\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_detect_container_by_cgroup_method\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_detect_container_by_pid_method\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_format_time\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_get_prompt_symbol\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_is_inside_container\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_is_single_line_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_k8s_context\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_k8s_namespace\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_parse_directory\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_parse_git_branch\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_place_iterm2_prompt_mark\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prefix_root_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_print_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_print_prompt_rows\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_aws_profile\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_beginning\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_command_duration\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_container\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_current_folder\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_ending\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_first_line\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_git\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_git_branch\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_git_dirty\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_git_pending_commits\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_git_stash\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_jobs\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_k8s\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_new_line\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_nixdevshell\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_ssh\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_symbol\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_system_time\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_vimode\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_prompt_virtualenv\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_set_color\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_set_default\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_string_width\x2efish\x1e\x7e/\x2econfig/fish/functions/_pure_user_at_host\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_greeting\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_mode_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_prompt\x2efish\x1e\x7e/\x2econfig/fish/functions/fish_title\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/_pure_init\x2efish\x1e\x7e/\x2econfig/fish/conf\x2ed/pure\x2efish
|
||||
SETUVAR _fisher_upgraded_to_4_4:\x1d
|
||||
SETUVAR fish_color_autosuggestion:6e738d
|
||||
SETUVAR fish_color_cancel:ed8796
|
||||
SETUVAR fish_color_command:8aadf4
|
||||
SETUVAR fish_color_comment:8087a2
|
||||
SETUVAR fish_color_cwd:eed49f
|
||||
SETUVAR fish_color_cwd_root:red
|
||||
SETUVAR fish_color_end:f5a97f
|
||||
SETUVAR fish_color_error:ed8796
|
||||
SETUVAR fish_color_escape:ee99a0
|
||||
SETUVAR fish_color_gray:6e738d
|
||||
SETUVAR fish_color_history_current:\x2d\x2dbold
|
||||
SETUVAR fish_color_host:8aadf4
|
||||
SETUVAR fish_color_host_remote:a6da95
|
||||
SETUVAR fish_color_keyword:ed8796
|
||||
SETUVAR fish_color_normal:cad3f5
|
||||
SETUVAR fish_color_operator:f5bde6
|
||||
SETUVAR fish_color_option:a6da95
|
||||
SETUVAR fish_color_param:f0c6c6
|
||||
SETUVAR fish_color_quote:a6da95
|
||||
SETUVAR fish_color_redirection:f5bde6
|
||||
SETUVAR fish_color_search_match:\x2d\x2dbackground\x3d363a4f
|
||||
SETUVAR fish_color_selection:\x2d\x2dbackground\x3d363a4f
|
||||
SETUVAR fish_color_status:ed8796
|
||||
SETUVAR fish_color_user:8bd5ca
|
||||
SETUVAR fish_color_valid_path:\x2d\x2dunderline
|
||||
SETUVAR fish_greeting:\x1d
|
||||
SETUVAR fish_key_bindings:fish_default_key_bindings
|
||||
SETUVAR fish_pager_color_background:\x1d
|
||||
SETUVAR fish_pager_color_completion:cad3f5
|
||||
SETUVAR fish_pager_color_description:6e738d
|
||||
SETUVAR fish_pager_color_prefix:f5bde6
|
||||
SETUVAR fish_pager_color_progress:6e738d
|
||||
SETUVAR fish_pager_color_secondary_background:\x1d
|
||||
SETUVAR fish_pager_color_secondary_completion:\x1d
|
||||
SETUVAR fish_pager_color_secondary_description:\x1d
|
||||
SETUVAR fish_pager_color_secondary_prefix:\x1d
|
||||
SETUVAR fish_pager_color_selected_background:\x1d
|
||||
SETUVAR fish_pager_color_selected_completion:\x1d
|
||||
SETUVAR fish_pager_color_selected_description:\x1d
|
||||
SETUVAR fish_pager_color_selected_prefix:\x1d
|
||||
SETUVAR fish_user_paths:/home/aleidk/\x2ecargo/bin\x1e/usr/local/sbin\x1e/usr/local/bin\x1e/usr/bin\x1e/var/lib/flatpak/exports/bin\x1e/home/aleidk/\x2elocal/bin
|
||||
SETUVAR pure_begin_prompt_with_current_directory:true
|
||||
SETUVAR pure_check_for_new_release:false
|
||||
SETUVAR pure_color_at_sign:pure_color_mute
|
||||
SETUVAR pure_color_aws_profile:pure_color_warning
|
||||
SETUVAR pure_color_command_duration:pure_color_warning
|
||||
SETUVAR pure_color_current_directory:pure_color_primary
|
||||
SETUVAR pure_color_danger:red
|
||||
SETUVAR pure_color_dark:black
|
||||
SETUVAR pure_color_git_branch:pure_color_mute
|
||||
SETUVAR pure_color_git_dirty:pure_color_mute
|
||||
SETUVAR pure_color_git_stash:pure_color_info
|
||||
SETUVAR pure_color_git_unpulled_commits:pure_color_info
|
||||
SETUVAR pure_color_git_unpushed_commits:pure_color_info
|
||||
SETUVAR pure_color_hostname:pure_color_mute
|
||||
SETUVAR pure_color_info:cyan
|
||||
SETUVAR pure_color_jobs:pure_color_normal
|
||||
SETUVAR pure_color_k8s_context:pure_color_success
|
||||
SETUVAR pure_color_k8s_namespace:pure_color_primary
|
||||
SETUVAR pure_color_k8s_prefix:pure_color_info
|
||||
SETUVAR pure_color_light:white
|
||||
SETUVAR pure_color_mute:brblack
|
||||
SETUVAR pure_color_nixdevshell_prefix:pure_color_info
|
||||
SETUVAR pure_color_nixdevshell_symbol:pure_color_mute
|
||||
SETUVAR pure_color_normal:normal
|
||||
SETUVAR pure_color_prefix_root_prompt:pure_color_danger
|
||||
SETUVAR pure_color_primary:blue
|
||||
SETUVAR pure_color_prompt_on_error:pure_color_danger
|
||||
SETUVAR pure_color_prompt_on_success:pure_color_success
|
||||
SETUVAR pure_color_success:magenta
|
||||
SETUVAR pure_color_system_time:pure_color_mute
|
||||
SETUVAR pure_color_username_normal:pure_color_mute
|
||||
SETUVAR pure_color_username_root:pure_color_light
|
||||
SETUVAR pure_color_virtualenv:pure_color_mute
|
||||
SETUVAR pure_color_warning:yellow
|
||||
SETUVAR pure_enable_aws_profile:true
|
||||
SETUVAR pure_enable_container_detection:true
|
||||
SETUVAR pure_enable_git:true
|
||||
SETUVAR pure_enable_k8s:false
|
||||
SETUVAR pure_enable_nixdevshell:false
|
||||
SETUVAR pure_enable_single_line_prompt:true
|
||||
SETUVAR pure_enable_virtualenv:true
|
||||
SETUVAR pure_reverse_prompt_symbol_in_vimode:true
|
||||
SETUVAR pure_separate_prompt_on_error:false
|
||||
SETUVAR pure_shorten_prompt_current_directory_length:0
|
||||
SETUVAR pure_shorten_window_title_current_directory_length:0
|
||||
SETUVAR pure_show_jobs:false
|
||||
SETUVAR pure_show_prefix_root_prompt:false
|
||||
SETUVAR pure_show_subsecond_command_duration:false
|
||||
SETUVAR pure_show_system_time:false
|
||||
SETUVAR pure_symbol_aws_profile_prefix:
|
||||
SETUVAR pure_symbol_container_prefix:
|
||||
SETUVAR pure_symbol_git_dirty:\x2a
|
||||
SETUVAR pure_symbol_git_stash:\u2261
|
||||
SETUVAR pure_symbol_git_unpulled_commits:\u21e3
|
||||
SETUVAR pure_symbol_git_unpushed_commits:\u21e1
|
||||
SETUVAR pure_symbol_k8s_prefix:\u2638
|
||||
SETUVAR pure_symbol_nixdevshell_prefix:\u2744\ufe0f
|
||||
SETUVAR pure_symbol_prefix_root_prompt:\x23
|
||||
SETUVAR pure_symbol_prompt:\u276f
|
||||
SETUVAR pure_symbol_reverse_prompt:\u276e
|
||||
SETUVAR pure_symbol_ssh_prefix:
|
||||
SETUVAR pure_symbol_title_bar_separator:\x2d
|
||||
SETUVAR pure_symbol_virtualenv_prefix:
|
||||
SETUVAR pure_threshold_command_duration:5
|
||||
SETUVAR pure_truncate_prompt_current_directory_keeps:\x2d1
|
||||
SETUVAR pure_truncate_window_title_current_directory_keeps:\x2d1
|
||||
15
configs/fish/functions/_pure_check_availability.fish
Normal file
15
configs/fish/functions/_pure_check_availability.fish
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
function _pure_check_availability \
|
||||
--description "Ensure command is available on system" \
|
||||
--argument-names \
|
||||
feature_flag \
|
||||
required_command
|
||||
|
||||
set FAILURE 1
|
||||
|
||||
if not type -q $required_command # command, function or alias are OK
|
||||
echo (set_color $pure_color_warning) \
|
||||
"$feature_flag feature requires: `$required_command`" \
|
||||
(set_color $pure_color_normal)
|
||||
return $FAILURE
|
||||
end
|
||||
end
|
||||
24
configs/fish/functions/_pure_check_for_new_release.fish
Normal file
24
configs/fish/functions/_pure_check_for_new_release.fish
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
function _pure_check_for_new_release \
|
||||
--description "Check for new release and show command to install"
|
||||
|
||||
if test "$pure_check_for_new_release" = true
|
||||
echo "🛈 Checking for new release…"
|
||||
set latest (pure_get_latest_release_version "pure-fish/pure")
|
||||
|
||||
if test "v"$pure_version != $latest
|
||||
set --local latest_version (_pure_set_color $pure_color_info)$latest(_pure_set_color $pure_color_normal)
|
||||
echo -e "🔔 New version available!\n"
|
||||
echo -e (_pure_set_color $pure_color_success)"fisher install pure-fish/pure@$latest_version\n"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function pure_get_latest_release_version \
|
||||
--argument-names user_repo
|
||||
|
||||
curl \
|
||||
--silent \
|
||||
"https://api.github.com/repos/$user_repo/releases/latest" \
|
||||
| string match --regex '"tag_name": "\K.*?(?=")'
|
||||
end
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
function _pure_detect_container_by_cgroup_method \
|
||||
--description "Linux method to detect container using cgroup. see https://stackoverflow.com/a/37015387/802365" \
|
||||
--argument-names cgroup_namespace
|
||||
set --query cgroup_namespace[1]; or set cgroup_namespace /proc/1/cgroup
|
||||
|
||||
string match \
|
||||
--quiet \
|
||||
--entire \
|
||||
--regex '(lxc|docker)' <$cgroup_namespace
|
||||
end
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
function _pure_detect_container_by_pid_method \
|
||||
--description "Linux method to detect container using /proc. see https://stackoverflow.com/a/37015387/802365" \
|
||||
--argument-names proc_sched
|
||||
|
||||
set --query proc_sched[1]; or set proc_sched /proc/1/sched
|
||||
|
||||
if test -e $proc_sched
|
||||
head -n 1 $proc_sched \
|
||||
| string match \
|
||||
--quiet \
|
||||
--invert \
|
||||
--regex 'init|systemd|shepherd'
|
||||
end
|
||||
end
|
||||
49
configs/fish/functions/_pure_format_time.fish
Normal file
49
configs/fish/functions/_pure_format_time.fish
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
set SUCCESS 0
|
||||
set FAILURE 1
|
||||
|
||||
function _pure_format_time \
|
||||
--description="Format milliseconds to a human readable format" \
|
||||
--argument-names \
|
||||
milliseconds \
|
||||
threshold \
|
||||
show_subsecond
|
||||
|
||||
set --query show_subsecond[1]; or set show_subsecond false
|
||||
test "$milliseconds" -lt 0; and return $FAILURE
|
||||
test "$milliseconds" -lt (math --scale=0 "$threshold * 1000"); and echo; and return $SUCCESS
|
||||
|
||||
set --local time
|
||||
set --local days (math --scale=0 "$milliseconds / 86400000")
|
||||
test "$days" -gt 0; and set --append time (printf "%sd" $days)
|
||||
set --local hours (math --scale=0 "$milliseconds / 3600000 % 24")
|
||||
test "$hours" -gt 0; and set --append time (printf "%sh" $hours)
|
||||
set --local minutes (math --scale=0 "$milliseconds / 60000 % 60")
|
||||
test "$minutes" -gt 0; and set --append time (printf "%sm" $minutes)
|
||||
set --local seconds (math --scale=0 "$milliseconds / 1000 % 60")
|
||||
|
||||
if test "$show_subsecond" = true
|
||||
set --local threshold_as_ms (math --scale=0 "$threshold*1000")
|
||||
set --local subseconds (_pure_format_time_subseconds $milliseconds $threshold_as_ms)
|
||||
set --append time $seconds$subseconds's'
|
||||
else
|
||||
test "$seconds" -gt $threshold; and set --append time (printf "%ss" $seconds)
|
||||
end
|
||||
|
||||
echo -e (string join ' ' $time)
|
||||
end
|
||||
|
||||
|
||||
function _pure_format_time_subseconds \
|
||||
--description="Format duration milliseconds to a human readable format" \
|
||||
--argument-names \
|
||||
duration \
|
||||
threshold
|
||||
|
||||
set --local subseconds
|
||||
if test "$duration" -gt $threshold
|
||||
set --local precision 2
|
||||
set --local milliseconds (string sub --start -3 --length $precision $duration)
|
||||
set --append subseconds '.'$milliseconds
|
||||
end
|
||||
echo $subseconds
|
||||
end
|
||||
12
configs/fish/functions/_pure_get_prompt_symbol.fish
Normal file
12
configs/fish/functions/_pure_get_prompt_symbol.fish
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
function _pure_get_prompt_symbol \
|
||||
--description 'Print prompt symbol' \
|
||||
--argument-names exit_code
|
||||
|
||||
set --local prompt_symbol $pure_symbol_prompt
|
||||
test "$pure_reverse_prompt_symbol_in_vimode" = true
|
||||
and string match -rq "fish_(vi|hybrid)_key_bindings" $fish_key_bindings
|
||||
and not contains "$fish_bind_mode" insert replace
|
||||
and set prompt_symbol $pure_symbol_reverse_prompt
|
||||
|
||||
echo "$prompt_symbol"
|
||||
end
|
||||
25
configs/fish/functions/_pure_is_inside_container.fish
Normal file
25
configs/fish/functions/_pure_is_inside_container.fish
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
function _pure_is_inside_container \
|
||||
--argument-names cgroup_namespace
|
||||
set --query cgroup_namespace[1]; or set cgroup_namespace /proc/1/cgroup
|
||||
|
||||
set --local failure 1
|
||||
if set --query pure_enable_container_detection; and test "$pure_enable_container_detection" = true
|
||||
set --local success 0
|
||||
if test -n "$container"
|
||||
return $success
|
||||
end
|
||||
|
||||
set --local os_name (uname -s)
|
||||
# echo $os_name
|
||||
if test "$os_name" = Linux
|
||||
if _pure_detect_container_by_cgroup_method $cgroup_namespace
|
||||
return $success
|
||||
end
|
||||
|
||||
if _pure_detect_container_by_pid_method
|
||||
return $success
|
||||
end
|
||||
end
|
||||
end
|
||||
return $failure
|
||||
end
|
||||
5
configs/fish/functions/_pure_is_single_line_prompt.fish
Normal file
5
configs/fish/functions/_pure_is_single_line_prompt.fish
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
function _pure_is_single_line_prompt \
|
||||
--description 'Test if single line prompt feature is enabled'
|
||||
set --query pure_enable_single_line_prompt
|
||||
and test "$pure_enable_single_line_prompt" = true
|
||||
end
|
||||
3
configs/fish/functions/_pure_k8s_context.fish
Normal file
3
configs/fish/functions/_pure_k8s_context.fish
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
function _pure_k8s_context
|
||||
kubectl config current-context 2>/dev/null
|
||||
end
|
||||
9
configs/fish/functions/_pure_k8s_namespace.fish
Normal file
9
configs/fish/functions/_pure_k8s_namespace.fish
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
function _pure_k8s_namespace
|
||||
set namespace (kubectl config view --minify --output 'jsonpath={..namespace}' 2>/dev/null)
|
||||
|
||||
if test -z "$namespace"
|
||||
set namespace default
|
||||
end
|
||||
|
||||
echo $namespace
|
||||
end
|
||||
23
configs/fish/functions/_pure_parse_directory.fish
Normal file
23
configs/fish/functions/_pure_parse_directory.fish
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
function _pure_parse_directory \
|
||||
--description "Replace '$HOME' with '~'" \
|
||||
--argument-names max_path_length
|
||||
|
||||
set --local folder (fish_prompt_pwd_dir_length=$pure_shorten_prompt_current_directory_length prompt_pwd)
|
||||
|
||||
if test -n "$max_path_length"
|
||||
if test (string length $folder) -gt $max_path_length
|
||||
# If path exceeds maximum symbol limit, force fish path formating function to use 1 character
|
||||
set folder (fish_prompt_pwd_dir_length=1 prompt_pwd)
|
||||
end
|
||||
end
|
||||
|
||||
if test "$pure_truncate_prompt_current_directory_keeps" -ge 1
|
||||
set folder (
|
||||
string split '/' $folder \
|
||||
| tail -n $pure_truncate_prompt_current_directory_keeps \
|
||||
| string join '/'
|
||||
)
|
||||
end
|
||||
|
||||
echo $folder
|
||||
end
|
||||
4
configs/fish/functions/_pure_parse_git_branch.fish
Normal file
4
configs/fish/functions/_pure_parse_git_branch.fish
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
function _pure_parse_git_branch --description "Parse current Git branch name"
|
||||
command git symbolic-ref --short HEAD 2>/dev/null;
|
||||
or command git name-rev --name-only HEAD 2>/dev/null
|
||||
end
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
function _pure_place_iterm2_prompt_mark
|
||||
if functions -q iterm2_prompt_mark
|
||||
iterm2_prompt_mark
|
||||
end
|
||||
end
|
||||
11
configs/fish/functions/_pure_prefix_root_prompt.fish
Normal file
11
configs/fish/functions/_pure_prefix_root_prompt.fish
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
function _pure_prefix_root_prompt
|
||||
set --local username (id -u -n) # current user name
|
||||
set --local prefix_root_prompt
|
||||
|
||||
if set --query pure_show_prefix_root_prompt; and test "$pure_show_prefix_root_prompt" = true -a "$username" = "root"
|
||||
set --local prefix_color (_pure_set_color $pure_color_prefix_root_prompt)
|
||||
set prefix_root_prompt "$prefix_color$pure_symbol_prefix_root_prompt"
|
||||
end
|
||||
|
||||
echo "$prefix_root_prompt"
|
||||
end
|
||||
12
configs/fish/functions/_pure_print_prompt.fish
Normal file
12
configs/fish/functions/_pure_print_prompt.fish
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
function _pure_print_prompt \
|
||||
--description 'Concatenate parts single prompt string'
|
||||
set --local prompt
|
||||
|
||||
for prompt_part in $argv
|
||||
if test (_pure_string_width $prompt_part) -gt 0
|
||||
set --append prompt "$prompt_part"
|
||||
end
|
||||
end
|
||||
|
||||
echo (string trim -l $prompt)
|
||||
end
|
||||
10
configs/fish/functions/_pure_print_prompt_rows.fish
Normal file
10
configs/fish/functions/_pure_print_prompt_rows.fish
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
function _pure_print_prompt_rows \
|
||||
--description "Manage default vs. compact prompt"
|
||||
|
||||
# print current path, git branch/status, command duration
|
||||
if _pure_is_single_line_prompt
|
||||
echo -e -n (_pure_prompt_first_line)
|
||||
else
|
||||
echo -e (_pure_prompt_first_line)
|
||||
end
|
||||
end
|
||||
31
configs/fish/functions/_pure_prompt.fish
Normal file
31
configs/fish/functions/_pure_prompt.fish
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
function _pure_prompt \
|
||||
--description 'Print prompt symbol' \
|
||||
--argument-names exit_code
|
||||
|
||||
set --local jobs (_pure_prompt_jobs)
|
||||
set --local nixdevshell (_pure_prompt_nixdevshell) # Nix build environment indicator
|
||||
set --local virtualenv (_pure_prompt_virtualenv) # Python virtualenv name
|
||||
set --local aws_profile (_pure_prompt_aws_profile) # AWS profile name
|
||||
set --local vimode_indicator (_pure_prompt_vimode) # vi-mode indicator
|
||||
set --local pure_symbol (_pure_prompt_symbol $exit_code)
|
||||
set --local system_time (_pure_prompt_system_time)
|
||||
set --local root_prefix (_pure_prefix_root_prompt)
|
||||
set --local space
|
||||
|
||||
if _pure_is_single_line_prompt
|
||||
set space ' '
|
||||
end
|
||||
|
||||
echo (\
|
||||
_pure_print_prompt \
|
||||
$space \
|
||||
$system_time \
|
||||
$root_prefix \
|
||||
$jobs \
|
||||
$nixdevshell \
|
||||
$virtualenv \
|
||||
$aws_profile \
|
||||
$vimode_indicator \
|
||||
$pure_symbol \
|
||||
)
|
||||
end
|
||||
19
configs/fish/functions/_pure_prompt_aws_profile.fish
Normal file
19
configs/fish/functions/_pure_prompt_aws_profile.fish
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
function _pure_prompt_aws_profile --description "Display AWS profile name"
|
||||
|
||||
if set --query pure_enable_aws_profile;
|
||||
and test "$pure_enable_aws_profile" = true
|
||||
|
||||
set --local aws_profile ''
|
||||
set --local aws_profile_color (_pure_set_color $pure_color_aws_profile)
|
||||
|
||||
if test -n "$AWS_VAULT"
|
||||
set aws_profile "$AWS_VAULT"
|
||||
else if test -n "$AWS_PROFILE" -o "$AWS_PROFILE" != default
|
||||
set aws_profile "$AWS_PROFILE"
|
||||
end
|
||||
|
||||
if test -n $aws_profile
|
||||
echo "$pure_symbol_aws_profile_prefix$aws_profile_color$aws_profile"
|
||||
end
|
||||
end
|
||||
end
|
||||
7
configs/fish/functions/_pure_prompt_beginning.fish
Normal file
7
configs/fish/functions/_pure_prompt_beginning.fish
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
function _pure_prompt_beginning \
|
||||
--description 'Clear existing line content'
|
||||
|
||||
set --local clear_line "\r\033[K"
|
||||
|
||||
echo $clear_line
|
||||
end
|
||||
11
configs/fish/functions/_pure_prompt_command_duration.fish
Normal file
11
configs/fish/functions/_pure_prompt_command_duration.fish
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
function _pure_prompt_command_duration
|
||||
set --local command_duration
|
||||
|
||||
# Get command execution duration
|
||||
if test -n "$CMD_DURATION"
|
||||
set command_duration (_pure_format_time $CMD_DURATION $pure_threshold_command_duration $pure_show_subsecond_command_duration)
|
||||
end
|
||||
set --local command_duration_color (_pure_set_color $pure_color_command_duration)
|
||||
|
||||
echo "$command_duration_color$command_duration"
|
||||
end
|
||||
5
configs/fish/functions/_pure_prompt_container.fish
Normal file
5
configs/fish/functions/_pure_prompt_container.fish
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
function _pure_prompt_container
|
||||
if _pure_is_inside_container
|
||||
echo "$pure_symbol_container_prefix"(_pure_user_at_host)
|
||||
end
|
||||
end
|
||||
11
configs/fish/functions/_pure_prompt_current_folder.fish
Normal file
11
configs/fish/functions/_pure_prompt_current_folder.fish
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
set FAILURE 1
|
||||
|
||||
function _pure_prompt_current_folder --argument-names current_prompt_width
|
||||
|
||||
if test -z "$current_prompt_width"; return $FAILURE; end
|
||||
|
||||
set --local current_folder (_pure_parse_directory (math $COLUMNS - $current_prompt_width - 1))
|
||||
set --local current_folder_color (_pure_set_color $pure_color_current_directory)
|
||||
|
||||
echo "$current_folder_color$current_folder"
|
||||
end
|
||||
3
configs/fish/functions/_pure_prompt_ending.fish
Normal file
3
configs/fish/functions/_pure_prompt_ending.fish
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
function _pure_prompt_ending
|
||||
echo (set_color normal)" "
|
||||
end
|
||||
41
configs/fish/functions/_pure_prompt_first_line.fish
Normal file
41
configs/fish/functions/_pure_prompt_first_line.fish
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
set --global FAILURE 1
|
||||
|
||||
function _pure_prompt_first_line \
|
||||
--description 'Print contextual information before prompt.'
|
||||
|
||||
set --local prompt_ssh (_pure_prompt_ssh)
|
||||
set --local prompt_container (_pure_prompt_container)
|
||||
set --local prompt_k8s (_pure_prompt_k8s)
|
||||
set --local prompt_git (_pure_prompt_git)
|
||||
set --local prompt_command_duration (_pure_prompt_command_duration)
|
||||
set --local prompt (_pure_print_prompt \
|
||||
$prompt_ssh \
|
||||
$prompt_container \
|
||||
$prompt_k8s \
|
||||
$prompt_git \
|
||||
$prompt_command_duration
|
||||
)
|
||||
set --local prompt_width (_pure_string_width $prompt)
|
||||
set --local current_folder (_pure_prompt_current_folder $prompt_width)
|
||||
|
||||
set --local prompt_components
|
||||
if set --query pure_begin_prompt_with_current_directory; and test "$pure_begin_prompt_with_current_directory" = true
|
||||
set prompt_components \
|
||||
$current_folder \
|
||||
$prompt_git \
|
||||
$prompt_ssh \
|
||||
$prompt_container \
|
||||
$prompt_k8s \
|
||||
$prompt_command_duration
|
||||
else
|
||||
set prompt_components \
|
||||
$prompt_ssh \
|
||||
$prompt_container \
|
||||
$prompt_k8s \
|
||||
$current_folder \
|
||||
$prompt_git \
|
||||
$prompt_command_duration
|
||||
end
|
||||
|
||||
echo (_pure_print_prompt $prompt_components)
|
||||
end
|
||||
26
configs/fish/functions/_pure_prompt_git.fish
Normal file
26
configs/fish/functions/_pure_prompt_git.fish
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
function _pure_prompt_git \
|
||||
--description 'Print git repository informations: branch name, dirty, upstream ahead/behind'
|
||||
|
||||
set ABORT_FEATURE 2
|
||||
|
||||
if set --query pure_enable_git; and test "$pure_enable_git" != true
|
||||
return
|
||||
end
|
||||
|
||||
if not type -q --no-functions git # skip git-related features when `git` is not available
|
||||
return $ABORT_FEATURE
|
||||
end
|
||||
|
||||
set --local is_git_repository (command git rev-parse --is-inside-work-tree 2>/dev/null)
|
||||
|
||||
if test -n "$is_git_repository"
|
||||
set --local git_prompt (_pure_prompt_git_branch)(_pure_prompt_git_dirty)(_pure_prompt_git_stash)
|
||||
set --local git_pending_commits (_pure_prompt_git_pending_commits)
|
||||
|
||||
if test (_pure_string_width $git_pending_commits) -ne 0
|
||||
set --append git_prompt $git_pending_commits
|
||||
end
|
||||
|
||||
echo $git_prompt
|
||||
end
|
||||
end
|
||||
6
configs/fish/functions/_pure_prompt_git_branch.fish
Normal file
6
configs/fish/functions/_pure_prompt_git_branch.fish
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
function _pure_prompt_git_branch
|
||||
set --local git_branch (_pure_parse_git_branch) # current git branch
|
||||
set --local git_branch_color (_pure_set_color $pure_color_git_branch)
|
||||
|
||||
echo "$git_branch_color$git_branch"
|
||||
end
|
||||
27
configs/fish/functions/_pure_prompt_git_dirty.fish
Normal file
27
configs/fish/functions/_pure_prompt_git_dirty.fish
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
function _pure_prompt_git_dirty
|
||||
set --local git_dirty_symbol
|
||||
set --local git_dirty_color
|
||||
|
||||
set --local is_git_dirty (
|
||||
# HEAD may not exist (e.g. immediately after git init); diff-index is
|
||||
# fast for staged checks but requires a ref.
|
||||
#
|
||||
# The diff-index (or diff --staged) checks for staged changes; the diff
|
||||
# checks for unstaged changes; the ls-files checks for untracked files.
|
||||
# We put them in this order because checking staged changes is *fast*.
|
||||
if command git rev-list --max-count=1 HEAD -- >/dev/null 2>&1;
|
||||
not command git diff-index --ignore-submodules --cached --quiet HEAD -- >/dev/null 2>&1;
|
||||
else;
|
||||
not command git diff --staged --ignore-submodules --no-ext-diff --quiet --exit-code >/dev/null 2>&1;
|
||||
end
|
||||
or not command git diff --ignore-submodules --no-ext-diff --quiet --exit-code >/dev/null 2>&1
|
||||
or command git ls-files --others --exclude-standard --directory --no-empty-directory --error-unmatch -- ':/*' >/dev/null 2>&1
|
||||
and echo "true"
|
||||
)
|
||||
if test -n "$is_git_dirty" # untracked or un-commited files
|
||||
set git_dirty_symbol "$pure_symbol_git_dirty"
|
||||
set git_dirty_color (_pure_set_color $pure_color_git_dirty)
|
||||
end
|
||||
|
||||
echo "$git_dirty_color$git_dirty_symbol"
|
||||
end
|
||||
27
configs/fish/functions/_pure_prompt_git_pending_commits.fish
Normal file
27
configs/fish/functions/_pure_prompt_git_pending_commits.fish
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
function _pure_prompt_git_pending_commits
|
||||
set --local git_unpushed_commits
|
||||
set --local git_unpulled_commits
|
||||
|
||||
set --local has_upstream (command git rev-parse --abbrev-ref '@{upstream}' 2>/dev/null)
|
||||
if test -n "$has_upstream" # check there is an upstream repo configured
|
||||
and test "$has_upstream" != '@{upstream}' # Fixed #179, dont check the empty repo
|
||||
command git rev-list --left-right --count 'HEAD...@{upstream}' \
|
||||
| read --local --array git_status
|
||||
set --local commit_to_push $git_status[1]
|
||||
set --local commit_to_pull $git_status[2]
|
||||
|
||||
if test "$commit_to_push" -gt 0 # upstream is behind local repo
|
||||
set --local git_unpushed_commits_color \
|
||||
(_pure_set_color $pure_color_git_unpushed_commits)
|
||||
set git_unpushed_commits "$git_unpushed_commits_color$pure_symbol_git_unpushed_commits"
|
||||
end
|
||||
|
||||
if test "$commit_to_pull" -gt 0 # upstream is ahead of local repo
|
||||
set --local git_unpulled_commits_color \
|
||||
(_pure_set_color $pure_color_git_unpulled_commits)
|
||||
set git_unpulled_commits "$git_unpulled_commits_color$pure_symbol_git_unpulled_commits"
|
||||
end
|
||||
end
|
||||
|
||||
echo "$git_unpushed_commits$git_unpulled_commits"
|
||||
end
|
||||
15
configs/fish/functions/_pure_prompt_git_stash.fish
Normal file
15
configs/fish/functions/_pure_prompt_git_stash.fish
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
function _pure_prompt_git_stash
|
||||
set --local git_stash_symbol
|
||||
set --local git_stash_color
|
||||
|
||||
set --local has_stashed_files (
|
||||
command git rev-list --walk-reflogs --count refs/stash >/dev/null 2>&1
|
||||
and echo "true"
|
||||
)
|
||||
if test -n "$has_stashed_files" # untracked or un-commited files
|
||||
set git_stash_symbol " $pure_symbol_git_stash"
|
||||
set git_stash_color (_pure_set_color $pure_color_git_stash)
|
||||
end
|
||||
|
||||
echo "$git_stash_color$git_stash_symbol"
|
||||
end
|
||||
9
configs/fish/functions/_pure_prompt_jobs.fish
Normal file
9
configs/fish/functions/_pure_prompt_jobs.fish
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
function _pure_prompt_jobs --description "Display number of running jobs"
|
||||
if set --query pure_show_jobs; and test "$pure_show_jobs" = true
|
||||
set --local njobs (count (jobs -p))
|
||||
set --local jobs_color (_pure_set_color $pure_color_jobs)
|
||||
if test "$njobs" -gt 0
|
||||
echo "$jobs_color"[$njobs]
|
||||
end
|
||||
end
|
||||
end
|
||||
16
configs/fish/functions/_pure_prompt_k8s.fish
Normal file
16
configs/fish/functions/_pure_prompt_k8s.fish
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
function _pure_prompt_k8s
|
||||
if set --query pure_enable_k8s;
|
||||
and test "$pure_enable_k8s" = true;
|
||||
and _pure_check_availability pure_enable_k8s kubectl
|
||||
and test -n (_pure_k8s_context) # todo: use $(cmd) syntax when Fish 3.3.1 is dropped
|
||||
|
||||
set --local context (_pure_set_color $pure_color_k8s_context)(_pure_k8s_context)
|
||||
|
||||
if test -n "$context"
|
||||
set --local symbol (_pure_set_color $pure_color_k8s_prefix)$pure_symbol_k8s_prefix
|
||||
set --local namespace (_pure_set_color $pure_color_k8s_namespace)(_pure_k8s_namespace)
|
||||
|
||||
echo "$symbol $context/$namespace"
|
||||
end
|
||||
end
|
||||
end
|
||||
11
configs/fish/functions/_pure_prompt_new_line.fish
Normal file
11
configs/fish/functions/_pure_prompt_new_line.fish
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
function _pure_prompt_new_line \
|
||||
--description "Do not add a line break to a brand new session" \
|
||||
--on-event fish_prompt
|
||||
|
||||
set --local new_line ''
|
||||
if not _pure_is_single_line_prompt; and test "$_pure_fresh_session" = false
|
||||
set new_line "\n"
|
||||
end
|
||||
|
||||
echo -e -n (_pure_prompt_beginning)"$new_line"
|
||||
end
|
||||
13
configs/fish/functions/_pure_prompt_nixdevshell.fish
Normal file
13
configs/fish/functions/_pure_prompt_nixdevshell.fish
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
function _pure_prompt_nixdevshell \
|
||||
--description "Indicate if nix develop shell is activated"
|
||||
|
||||
if set --query pure_enable_nixdevshell;
|
||||
and test "$pure_enable_nixdevshell" = true;
|
||||
and test -n "$IN_NIX_SHELL"
|
||||
|
||||
set --local prefix (_pure_set_color $pure_color_nixdevshell_prefix)$pure_symbol_nixdevshell_prefix
|
||||
set --local symbol (_pure_set_color $pure_color_nixdevshell_status)$IN_NIX_SHELL
|
||||
|
||||
echo "$prefix$symbol"
|
||||
end
|
||||
end
|
||||
5
configs/fish/functions/_pure_prompt_ssh.fish
Normal file
5
configs/fish/functions/_pure_prompt_ssh.fish
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
function _pure_prompt_ssh
|
||||
if test "$SSH_CONNECTION" != ""
|
||||
echo "$pure_symbol_ssh_prefix"(_pure_user_at_host)
|
||||
end
|
||||
end
|
||||
20
configs/fish/functions/_pure_prompt_symbol.fish
Normal file
20
configs/fish/functions/_pure_prompt_symbol.fish
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
function _pure_prompt_symbol \
|
||||
--description 'Print prompt symbol' \
|
||||
--argument-names exit_code
|
||||
|
||||
set --local prompt_symbol (_pure_get_prompt_symbol)
|
||||
set --local symbol_color_success (_pure_set_color $pure_color_prompt_on_success)
|
||||
set --local symbol_color_error (_pure_set_color $pure_color_prompt_on_error)
|
||||
set --local command_succeed 0
|
||||
|
||||
set --local symbol_color $symbol_color_success # default pure symbol color
|
||||
if set --query exit_code; and test "$exit_code" -ne $command_succeed
|
||||
set symbol_color $symbol_color_error # different pure symbol color when previous command failed
|
||||
|
||||
if set --query pure_separate_prompt_on_error; and test "$pure_separate_prompt_on_error" = true
|
||||
set symbol_color "$symbol_color_error$prompt_symbol$symbol_color_success"
|
||||
end
|
||||
end
|
||||
|
||||
echo "$symbol_color$prompt_symbol"
|
||||
end
|
||||
6
configs/fish/functions/_pure_prompt_system_time.fish
Normal file
6
configs/fish/functions/_pure_prompt_system_time.fish
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
function _pure_prompt_system_time --description "Display system time"
|
||||
if set --query pure_show_system_time; and test "$pure_show_system_time" = true
|
||||
set --local time_color (_pure_set_color $pure_color_system_time)
|
||||
echo "$time_color"(date '+%T')
|
||||
end
|
||||
end
|
||||
6
configs/fish/functions/_pure_prompt_vimode.fish
Normal file
6
configs/fish/functions/_pure_prompt_vimode.fish
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
function _pure_prompt_vimode
|
||||
if set --query pure_reverse_prompt_symbol_in_vimode;
|
||||
and test "$pure_reverse_prompt_symbol_in_vimode" = false
|
||||
echo (fish_default_mode_prompt)
|
||||
end
|
||||
end
|
||||
18
configs/fish/functions/_pure_prompt_virtualenv.fish
Normal file
18
configs/fish/functions/_pure_prompt_virtualenv.fish
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
function _pure_prompt_virtualenv --description "Display virtualenv directory"
|
||||
|
||||
if set --query pure_enable_virtualenv;
|
||||
and test "$pure_enable_virtualenv" = true
|
||||
|
||||
set --local virtualenv ''
|
||||
set --local virtualenv_color (_pure_set_color $pure_color_virtualenv)
|
||||
if test -n "$VIRTUAL_ENV"
|
||||
set virtualenv (basename "$VIRTUAL_ENV")
|
||||
else if test -n "$CONDA_DEFAULT_ENV"
|
||||
set virtualenv (basename "$CONDA_DEFAULT_ENV")
|
||||
end
|
||||
|
||||
if test -n $virtualenv
|
||||
echo "$pure_symbol_virtualenv_prefix$virtualenv_color$virtualenv"
|
||||
end
|
||||
end
|
||||
end
|
||||
19
configs/fish/functions/_pure_set_color.fish
Normal file
19
configs/fish/functions/_pure_set_color.fish
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
function _pure_set_color \
|
||||
--description 'Set color' \
|
||||
--argument-names var
|
||||
|
||||
set --local color $var
|
||||
# Backwards compatibility for colors defined as control sequencies instead of fish colors
|
||||
if not string match --quiet --all --regex '\e\[[^m]*m' $color[1]
|
||||
and set -q $color
|
||||
set color $$var
|
||||
end
|
||||
|
||||
set --local result $color
|
||||
if not string match --quiet --all --regex '\e\[[^m]*m' $result[1]
|
||||
and not test -z $result[1]
|
||||
set result (set_color $color)
|
||||
end
|
||||
|
||||
echo "$result"
|
||||
end
|
||||
11
configs/fish/functions/_pure_set_default.fish
Normal file
11
configs/fish/functions/_pure_set_default.fish
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
function _pure_set_default \
|
||||
--description 'Set default value for configuration variable' \
|
||||
--argument-names var default
|
||||
|
||||
set is_available_universally (not set --query --universal $var; or test -z $$var; echo $status)
|
||||
set is_available_globally (not set --query --global $var; or test -z $$var; echo $status)
|
||||
|
||||
if test "$is_available_universally" -eq 0 -a $is_available_globally -eq 0
|
||||
set --universal $var "$default"
|
||||
end
|
||||
end
|
||||
9
configs/fish/functions/_pure_string_width.fish
Normal file
9
configs/fish/functions/_pure_string_width.fish
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
function _pure_string_width \
|
||||
--description 'returns raw string length, i.e. ignore ANSI-color' \
|
||||
--argument-names prompt
|
||||
|
||||
set --local empty ''
|
||||
set --local raw_prompt (string replace --all --regex '\e\[[^m]*m' $empty -- $prompt)
|
||||
|
||||
string length -- $raw_prompt
|
||||
end
|
||||
13
configs/fish/functions/_pure_user_at_host.fish
Normal file
13
configs/fish/functions/_pure_user_at_host.fish
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
function _pure_user_at_host
|
||||
set --local username (id -u -n) # current user name
|
||||
set --local at_sign "@"
|
||||
set --local at_sign_color (_pure_set_color $pure_color_at_sign)
|
||||
set --local hostname_color (_pure_set_color $pure_color_hostname)
|
||||
|
||||
set --local username_color (_pure_set_color $pure_color_username_normal) # default color
|
||||
if test "$username" = root
|
||||
set username_color (_pure_set_color $pure_color_username_root) # different color for root
|
||||
end
|
||||
|
||||
echo "$username_color$username$at_sign_color$at_sign$hostname_color$hostname"
|
||||
end
|
||||
0
configs/fish/functions/aliases.fish
Normal file
0
configs/fish/functions/aliases.fish
Normal file
19
configs/fish/functions/curl.fish
Normal file
19
configs/fish/functions/curl.fish
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
function http --argument-names method url --description "Curl wrapper with cache options"
|
||||
|
||||
argparse h/help c/cache '#cache_time' -- $argv
|
||||
or return
|
||||
|
||||
# If -h or --help is given, we print a little help text and return
|
||||
if set -ql _flag_help
|
||||
echo "http [-h|--help] [-s|--second] METHOD URL"
|
||||
return 0
|
||||
end
|
||||
|
||||
if set -ql _flag_cache
|
||||
mkdir -p /tmp/fish_http
|
||||
|
||||
curl -SsL -X (string upper $method) $url | tee /tmp/fish_http/(string escape --style=url $url)
|
||||
else
|
||||
curl -X (string upper $method) $url
|
||||
end
|
||||
end
|
||||
3
configs/fish/functions/fish_greeting.fish
Normal file
3
configs/fish/functions/fish_greeting.fish
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
function fish_greeting
|
||||
_pure_check_for_new_release
|
||||
end
|
||||
2
configs/fish/functions/fish_mode_prompt.fish
Normal file
2
configs/fish/functions/fish_mode_prompt.fish
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
function fish_mode_prompt
|
||||
end
|
||||
11
configs/fish/functions/fish_prompt.fish
Normal file
11
configs/fish/functions/fish_prompt.fish
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
# a called to `_pure_prompt_new_line` is triggered by an event
|
||||
function fish_prompt
|
||||
set --local exit_code $status # save previous exit code
|
||||
|
||||
_pure_print_prompt_rows # manage default vs. compact prompt
|
||||
_pure_place_iterm2_prompt_mark # place iTerm shell integration mark
|
||||
echo -e -n (_pure_prompt $exit_code) # print prompt
|
||||
echo -e (_pure_prompt_ending) # reset colors and end prompt
|
||||
|
||||
set _pure_fresh_session false
|
||||
end
|
||||
15
configs/fish/functions/fish_title.fish
Normal file
15
configs/fish/functions/fish_title.fish
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
function fish_title \
|
||||
--description "Set title to current folder and shell name" \
|
||||
--argument-names last_command
|
||||
|
||||
set --local current_folder (fish_prompt_pwd_dir_length=$pure_shorten_window_title_current_directory_length prompt_pwd)
|
||||
set --local current_command (status current-command 2>/dev/null; or echo $_)[1] # we use index to ignore extraneous item, see #360
|
||||
|
||||
set --local prompt "$current_folder: $last_command $pure_symbol_title_bar_separator $current_command"
|
||||
|
||||
if test -z "$last_command"
|
||||
set prompt "$current_folder $pure_symbol_title_bar_separator $current_command"
|
||||
end
|
||||
|
||||
echo $prompt
|
||||
end
|
||||
240
configs/fish/functions/fisher.fish
Normal file
240
configs/fish/functions/fisher.fish
Normal file
|
|
@ -0,0 +1,240 @@
|
|||
function fisher --argument-names cmd --description "A plugin manager for Fish"
|
||||
set --query fisher_path || set --local fisher_path $__fish_config_dir
|
||||
set --local fisher_version 4.4.5
|
||||
set --local fish_plugins $__fish_config_dir/fish_plugins
|
||||
|
||||
switch "$cmd"
|
||||
case -v --version
|
||||
echo "fisher, version $fisher_version"
|
||||
case "" -h --help
|
||||
echo "Usage: fisher install <plugins...> Install plugins"
|
||||
echo " fisher remove <plugins...> Remove installed plugins"
|
||||
echo " fisher update <plugins...> Update installed plugins"
|
||||
echo " fisher update Update all installed plugins"
|
||||
echo " fisher list [<regex>] List installed plugins matching regex"
|
||||
echo "Options:"
|
||||
echo " -v, --version Print version"
|
||||
echo " -h, --help Print this help message"
|
||||
echo "Variables:"
|
||||
echo " \$fisher_path Plugin installation path. Default: $__fish_config_dir" | string replace --regex -- $HOME \~
|
||||
case ls list
|
||||
string match --entire --regex -- "$argv[2]" $_fisher_plugins
|
||||
case install update remove
|
||||
isatty || read --local --null --array stdin && set --append argv $stdin
|
||||
|
||||
set --local install_plugins
|
||||
set --local update_plugins
|
||||
set --local remove_plugins
|
||||
set --local arg_plugins $argv[2..-1]
|
||||
set --local old_plugins $_fisher_plugins
|
||||
set --local new_plugins
|
||||
|
||||
test -e $fish_plugins && set --local file_plugins (string match --regex -- '^[^\s]+$' <$fish_plugins | string replace -- \~ ~)
|
||||
|
||||
if ! set --query argv[2]
|
||||
if test "$cmd" != update
|
||||
echo "fisher: Not enough arguments for command: \"$cmd\"" >&2 && return 1
|
||||
else if ! set --query file_plugins
|
||||
echo "fisher: \"$fish_plugins\" file not found: \"$cmd\"" >&2 && return 1
|
||||
end
|
||||
set arg_plugins $file_plugins
|
||||
end
|
||||
|
||||
for plugin in $arg_plugins
|
||||
set plugin (test -e "$plugin" && realpath $plugin || string lower -- $plugin)
|
||||
contains -- "$plugin" $new_plugins || set --append new_plugins $plugin
|
||||
end
|
||||
|
||||
if set --query argv[2]
|
||||
for plugin in $new_plugins
|
||||
if contains -- "$plugin" $old_plugins
|
||||
test "$cmd" = remove &&
|
||||
set --append remove_plugins $plugin ||
|
||||
set --append update_plugins $plugin
|
||||
else if test "$cmd" = install
|
||||
set --append install_plugins $plugin
|
||||
else
|
||||
echo "fisher: Plugin not installed: \"$plugin\"" >&2 && return 1
|
||||
end
|
||||
end
|
||||
else
|
||||
for plugin in $new_plugins
|
||||
contains -- "$plugin" $old_plugins &&
|
||||
set --append update_plugins $plugin ||
|
||||
set --append install_plugins $plugin
|
||||
end
|
||||
|
||||
for plugin in $old_plugins
|
||||
contains -- "$plugin" $new_plugins || set --append remove_plugins $plugin
|
||||
end
|
||||
end
|
||||
|
||||
set --local pid_list
|
||||
set --local source_plugins
|
||||
set --local fetch_plugins $update_plugins $install_plugins
|
||||
set --local fish_path (status fish-path)
|
||||
|
||||
echo (set_color --bold)fisher $cmd version $fisher_version(set_color normal)
|
||||
|
||||
for plugin in $fetch_plugins
|
||||
set --local source (command mktemp -d)
|
||||
set --append source_plugins $source
|
||||
|
||||
command mkdir -p $source/{completions,conf.d,themes,functions}
|
||||
|
||||
$fish_path --command "
|
||||
if test -e $plugin
|
||||
command cp -Rf $plugin/* $source
|
||||
else
|
||||
set temp (command mktemp -d)
|
||||
set repo (string split -- \@ $plugin) || set repo[2] HEAD
|
||||
|
||||
if set path (string replace --regex -- '^(https://)?gitlab.com/' '' \$repo[1])
|
||||
set name (string split -- / \$path)[-1]
|
||||
set url https://gitlab.com/\$path/-/archive/\$repo[2]/\$name-\$repo[2].tar.gz
|
||||
else
|
||||
set url https://api.github.com/repos/\$repo[1]/tarball/\$repo[2]
|
||||
end
|
||||
|
||||
echo Fetching (set_color --underline)\$url(set_color normal)
|
||||
|
||||
if command curl -q --silent -L \$url | command tar -xzC \$temp -f - 2>/dev/null
|
||||
command cp -Rf \$temp/*/* $source
|
||||
else
|
||||
echo fisher: Invalid plugin name or host unavailable: \\\"$plugin\\\" >&2
|
||||
command rm -rf $source
|
||||
end
|
||||
|
||||
command rm -rf \$temp
|
||||
end
|
||||
|
||||
set files $source/* && string match --quiet --regex -- .+\.fish\\\$ \$files
|
||||
" &
|
||||
|
||||
set --append pid_list (jobs --last --pid)
|
||||
end
|
||||
|
||||
wait $pid_list 2>/dev/null
|
||||
|
||||
for plugin in $fetch_plugins
|
||||
if set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)] && test ! -e $source
|
||||
if set --local index (contains --index -- "$plugin" $install_plugins)
|
||||
set --erase install_plugins[$index]
|
||||
else
|
||||
set --erase update_plugins[(contains --index -- "$plugin" $update_plugins)]
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
for plugin in $update_plugins $remove_plugins
|
||||
if set --local index (contains --index -- "$plugin" $_fisher_plugins)
|
||||
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
|
||||
|
||||
if contains -- "$plugin" $remove_plugins
|
||||
for name in (string replace --filter --regex -- '.+/conf\.d/([^/]+)\.fish$' '$1' $$plugin_files_var)
|
||||
emit {$name}_uninstall
|
||||
end
|
||||
printf "%s\n" Removing\ (set_color red --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
|
||||
set --erase _fisher_plugins[$index]
|
||||
end
|
||||
|
||||
command rm -rf (string replace -- \~ ~ $$plugin_files_var)
|
||||
|
||||
functions --erase (string replace --filter --regex -- '.+/functions/([^/]+)\.fish$' '$1' $$plugin_files_var)
|
||||
|
||||
for name in (string replace --filter --regex -- '.+/completions/([^/]+)\.fish$' '$1' $$plugin_files_var)
|
||||
complete --erase --command $name
|
||||
end
|
||||
|
||||
set --erase $plugin_files_var
|
||||
end
|
||||
end
|
||||
|
||||
if set --query update_plugins[1] || set --query install_plugins[1]
|
||||
command mkdir -p $fisher_path/{functions,themes,conf.d,completions}
|
||||
end
|
||||
|
||||
for plugin in $update_plugins $install_plugins
|
||||
set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)]
|
||||
set --local files $source/{functions,themes,conf.d,completions}/*
|
||||
|
||||
if set --local index (contains --index -- $plugin $install_plugins)
|
||||
set --local user_files $fisher_path/{functions,themes,conf.d,completions}/*
|
||||
set --local conflict_files
|
||||
|
||||
for file in (string replace -- $source/ $fisher_path/ $files)
|
||||
contains -- $file $user_files && set --append conflict_files $file
|
||||
end
|
||||
|
||||
if set --query conflict_files[1] && set --erase install_plugins[$index]
|
||||
echo -s "fisher: Cannot install \"$plugin\": please remove or move conflicting files first:" \n" "$conflict_files >&2
|
||||
continue
|
||||
end
|
||||
end
|
||||
|
||||
for file in (string replace -- $source/ "" $files)
|
||||
command cp -RLf $source/$file $fisher_path/$file
|
||||
end
|
||||
|
||||
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
|
||||
|
||||
set --query files[1] && set --universal $plugin_files_var (string replace -- $source $fisher_path $files | string replace -- ~ \~)
|
||||
|
||||
contains -- $plugin $_fisher_plugins || set --universal --append _fisher_plugins $plugin
|
||||
contains -- $plugin $install_plugins && set --local event install || set --local event update
|
||||
|
||||
printf "%s\n" Installing\ (set_color --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
|
||||
|
||||
for file in (string match --regex -- '.+/[^/]+\.fish$' $$plugin_files_var | string replace -- \~ ~)
|
||||
source $file
|
||||
if set --local name (string replace --regex -- '.+conf\.d/([^/]+)\.fish$' '$1' $file)
|
||||
emit {$name}_$event
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
command rm -rf $source_plugins
|
||||
|
||||
if set --query _fisher_plugins[1]
|
||||
set --local commit_plugins
|
||||
|
||||
for plugin in $file_plugins
|
||||
contains -- (string lower -- $plugin) (string lower -- $_fisher_plugins) && set --append commit_plugins $plugin
|
||||
end
|
||||
|
||||
for plugin in $_fisher_plugins
|
||||
contains -- (string lower -- $plugin) (string lower -- $commit_plugins) || set --append commit_plugins $plugin
|
||||
end
|
||||
|
||||
string replace --regex -- $HOME \~ $commit_plugins >$fish_plugins
|
||||
else
|
||||
set --erase _fisher_plugins
|
||||
command rm -f $fish_plugins
|
||||
end
|
||||
|
||||
set --local total (count $install_plugins) (count $update_plugins) (count $remove_plugins)
|
||||
|
||||
test "$total" != "0 0 0" && echo (string join ", " (
|
||||
test $total[1] = 0 || echo "Installed $total[1]") (
|
||||
test $total[2] = 0 || echo "Updated $total[2]") (
|
||||
test $total[3] = 0 || echo "Removed $total[3]")
|
||||
) plugin/s
|
||||
case \*
|
||||
echo "fisher: Unknown command: \"$cmd\"" >&2 && return 1
|
||||
end
|
||||
end
|
||||
|
||||
if ! set --query _fisher_upgraded_to_4_4
|
||||
set --universal _fisher_upgraded_to_4_4
|
||||
if functions --query _fisher_list
|
||||
set --query XDG_DATA_HOME[1] || set --local XDG_DATA_HOME ~/.local/share
|
||||
command rm -rf $XDG_DATA_HOME/fisher
|
||||
functions --erase _fisher_{list,plugin_parse}
|
||||
fisher update >/dev/null 2>/dev/null
|
||||
else
|
||||
for var in (set --names | string match --entire --regex '^_fisher_.+_files$')
|
||||
set $var (string replace -- ~ \~ $$var)
|
||||
end
|
||||
functions --erase _fisher_fish_postexec
|
||||
end
|
||||
end
|
||||
38
configs/fish/functions/split_run.fish
Normal file
38
configs/fish/functions/split_run.fish
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
function split_run
|
||||
argparse mask r/restart -- $argv
|
||||
or return
|
||||
|
||||
if not set -qg MPROCS_PORT
|
||||
set -gx MPROCS_PORT $(random 1024 2048)
|
||||
kitten @ env "MPROCS_PORT=$MPROCS_PORT"
|
||||
end
|
||||
|
||||
if set -ql _flag_restart
|
||||
# Send commands to server
|
||||
mprocs --server "127.0.0.1:$MPROCS_PORT" --ctl "{c: restart-proc}"
|
||||
return 0
|
||||
end
|
||||
|
||||
|
||||
if set -ql _flag_mask
|
||||
set -l cmd "$(mask --introspect | jq ".commands[] | [.name, .description] | @tsv" -r | fzf --accept-nth=1)"
|
||||
|
||||
if test -z $cmd
|
||||
return 1
|
||||
end
|
||||
|
||||
set -l cmd "mask $cmd"
|
||||
|
||||
# check if server is running
|
||||
if nc -w 1 -zv 127.0.0.1 $MPROCS_PORT &>/dev/null
|
||||
mprocs --server "127.0.0.1:$MPROCS_PORT" --ctl "{c: add-proc, cmd: \"$cmd\"}"
|
||||
mprocs --server "127.0.0.1:$MPROCS_PORT" --ctl "{c: select-proc, index: 0}"
|
||||
mprocs --server "127.0.0.1:$MPROCS_PORT" --ctl "{c: prev-proc}"
|
||||
else
|
||||
# Start server
|
||||
kitten @ launch --cwd=current --location last --dont-take-focus mprocs --server "127.0.0.1:$MPROCS_PORT" "$cmd"
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
end
|
||||
8
configs/fish/functions/yy.fish
Normal file
8
configs/fish/functions/yy.fish
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
function yy
|
||||
set tmp (mktemp -t "yazi-cwd.XXXXXX")
|
||||
yazi $argv --cwd-file="$tmp"
|
||||
if read -z cwd < "$tmp"; and [ -n "$cwd" ]; and [ "$cwd" != "$PWD" ]
|
||||
builtin cd -- "$cwd"
|
||||
end
|
||||
rm -f -- "$tmp"
|
||||
end
|
||||
30
configs/fish/themes/Catppuccin Frappe.theme
Normal file
30
configs/fish/themes/Catppuccin Frappe.theme
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# name: 'Catppuccin Frappé'
|
||||
# url: 'https://github.com/catppuccin/fish'
|
||||
# preferred_background: 303446
|
||||
|
||||
fish_color_normal c6d0f5
|
||||
fish_color_command 8caaee
|
||||
fish_color_param eebebe
|
||||
fish_color_keyword e78284
|
||||
fish_color_quote a6d189
|
||||
fish_color_redirection f4b8e4
|
||||
fish_color_end ef9f76
|
||||
fish_color_comment 838ba7
|
||||
fish_color_error e78284
|
||||
fish_color_gray 737994
|
||||
fish_color_selection --background=414559
|
||||
fish_color_search_match --background=414559
|
||||
fish_color_option a6d189
|
||||
fish_color_operator f4b8e4
|
||||
fish_color_escape ea999c
|
||||
fish_color_autosuggestion 737994
|
||||
fish_color_cancel e78284
|
||||
fish_color_cwd e5c890
|
||||
fish_color_user 81c8be
|
||||
fish_color_host 8caaee
|
||||
fish_color_host_remote a6d189
|
||||
fish_color_status e78284
|
||||
fish_pager_color_progress 737994
|
||||
fish_pager_color_prefix f4b8e4
|
||||
fish_pager_color_completion c6d0f5
|
||||
fish_pager_color_description 737994
|
||||
30
configs/fish/themes/Catppuccin Latte.theme
Normal file
30
configs/fish/themes/Catppuccin Latte.theme
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# name: 'Catppuccin Latte'
|
||||
# url: 'https://github.com/catppuccin/fish'
|
||||
# preferred_background: eff1f5
|
||||
|
||||
fish_color_normal 4c4f69
|
||||
fish_color_command 1e66f5
|
||||
fish_color_param dd7878
|
||||
fish_color_keyword d20f39
|
||||
fish_color_quote 40a02b
|
||||
fish_color_redirection ea76cb
|
||||
fish_color_end fe640b
|
||||
fish_color_comment 8c8fa1
|
||||
fish_color_error d20f39
|
||||
fish_color_gray 9ca0b0
|
||||
fish_color_selection --background=ccd0da
|
||||
fish_color_search_match --background=ccd0da
|
||||
fish_color_option 40a02b
|
||||
fish_color_operator ea76cb
|
||||
fish_color_escape e64553
|
||||
fish_color_autosuggestion 9ca0b0
|
||||
fish_color_cancel d20f39
|
||||
fish_color_cwd df8e1d
|
||||
fish_color_user 179299
|
||||
fish_color_host 1e66f5
|
||||
fish_color_host_remote 40a02b
|
||||
fish_color_status d20f39
|
||||
fish_pager_color_progress 9ca0b0
|
||||
fish_pager_color_prefix ea76cb
|
||||
fish_pager_color_completion 4c4f69
|
||||
fish_pager_color_description 9ca0b0
|
||||
30
configs/fish/themes/Catppuccin Macchiato.theme
Normal file
30
configs/fish/themes/Catppuccin Macchiato.theme
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# name: 'Catppuccin Macchiato'
|
||||
# url: 'https://github.com/catppuccin/fish'
|
||||
# preferred_background: 24273a
|
||||
|
||||
fish_color_normal cad3f5
|
||||
fish_color_command 8aadf4
|
||||
fish_color_param f0c6c6
|
||||
fish_color_keyword ed8796
|
||||
fish_color_quote a6da95
|
||||
fish_color_redirection f5bde6
|
||||
fish_color_end f5a97f
|
||||
fish_color_comment 8087a2
|
||||
fish_color_error ed8796
|
||||
fish_color_gray 6e738d
|
||||
fish_color_selection --background=363a4f
|
||||
fish_color_search_match --background=363a4f
|
||||
fish_color_option a6da95
|
||||
fish_color_operator f5bde6
|
||||
fish_color_escape ee99a0
|
||||
fish_color_autosuggestion 6e738d
|
||||
fish_color_cancel ed8796
|
||||
fish_color_cwd eed49f
|
||||
fish_color_user 8bd5ca
|
||||
fish_color_host 8aadf4
|
||||
fish_color_host_remote a6da95
|
||||
fish_color_status ed8796
|
||||
fish_pager_color_progress 6e738d
|
||||
fish_pager_color_prefix f5bde6
|
||||
fish_pager_color_completion cad3f5
|
||||
fish_pager_color_description 6e738d
|
||||
30
configs/fish/themes/Catppuccin Mocha.theme
Normal file
30
configs/fish/themes/Catppuccin Mocha.theme
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# name: 'Catppuccin Mocha'
|
||||
# url: 'https://github.com/catppuccin/fish'
|
||||
# preferred_background: 1e1e2e
|
||||
|
||||
fish_color_normal cdd6f4
|
||||
fish_color_command 89b4fa
|
||||
fish_color_param f2cdcd
|
||||
fish_color_keyword f38ba8
|
||||
fish_color_quote a6e3a1
|
||||
fish_color_redirection f5c2e7
|
||||
fish_color_end fab387
|
||||
fish_color_comment 7f849c
|
||||
fish_color_error f38ba8
|
||||
fish_color_gray 6c7086
|
||||
fish_color_selection --background=313244
|
||||
fish_color_search_match --background=313244
|
||||
fish_color_option a6e3a1
|
||||
fish_color_operator f5c2e7
|
||||
fish_color_escape eba0ac
|
||||
fish_color_autosuggestion 6c7086
|
||||
fish_color_cancel f38ba8
|
||||
fish_color_cwd f9e2af
|
||||
fish_color_user 94e2d5
|
||||
fish_color_host 89b4fa
|
||||
fish_color_host_remote a6e3a1
|
||||
fish_color_status f38ba8
|
||||
fish_pager_color_progress 6c7086
|
||||
fish_pager_color_prefix f5c2e7
|
||||
fish_pager_color_completion cdd6f4
|
||||
fish_pager_color_description 6c7086
|
||||
49
configs/fzf/forgitrc
Normal file
49
configs/fzf/forgitrc
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
forgit-list-command-widget() {
|
||||
local cmd=$(alias | grep 'forgit' | sed -E 's/::/ /g; s/=/ :- /g; s/for//g' | \
|
||||
awk -v BLD=${BLD} -v RST=${RST} -v BLU=${BLU} -v CYN=${CYN} -F":" '{print BLU BLD $1 RST ":" CYN $2 RST }' | \
|
||||
column -ts":")
|
||||
LBUFFER="$LBUFFER$( \
|
||||
fzf-tmux -p -w 30% -h 53% --preview-window=hidden --prompt=' List > ' \
|
||||
--header=$'Alias\t Description' <<< "$cmd" | awk '{print $1}')"
|
||||
if [[ -n $LBUFFER ]]; then
|
||||
zle accept-line
|
||||
fi
|
||||
zle reset-prompt
|
||||
}
|
||||
|
||||
zle -N forgit-list-command-widget
|
||||
bindkey '^[g^[l' forgit-list-command-widget #<Alt-G+Alt-L>
|
||||
|
||||
export FORGIT_FZF_SHOW_HELP_OPTS="$(
|
||||
cat <<-EOF
|
||||
|
||||
Forgit Commands (Aliases)
|
||||
|
||||
fga add
|
||||
fgbl blame
|
||||
fgbd branch delete
|
||||
fgcb checkout branch
|
||||
fgco checkout commit
|
||||
fgcf checkout file
|
||||
fgct checkout tag
|
||||
fgcp cherry pick
|
||||
fgclean clean
|
||||
fgd diff
|
||||
fgfu fixup
|
||||
fgi ignore
|
||||
fglo log
|
||||
fgrb rebase
|
||||
fgrh reset head
|
||||
fgrev revert commit
|
||||
fgsta stash push
|
||||
fgsts stash show
|
||||
EOF
|
||||
)"
|
||||
|
||||
export FORGIT_FZF_DEFAULT_OPTS="
|
||||
--cycle
|
||||
--reverse
|
||||
--height '80%'
|
||||
--preview-window=nohidden
|
||||
--bind 'alt-?:preview(printf \"${FORGIT_FZF_SHOW_HELP_OPTS}\")'
|
||||
"
|
||||
128
configs/fzf/fzfrc
Normal file
128
configs/fzf/fzfrc
Normal file
|
|
@ -0,0 +1,128 @@
|
|||
export FZF_SHOW_HELP_OPTS="$(
|
||||
cat <<-EOF
|
||||
FZF Keybinds Shortcut
|
||||
|
||||
? Toggle/Hide Preview
|
||||
C-space Change preview layout
|
||||
C-e Open in Editor
|
||||
C-v Open in VsCode
|
||||
C-o Launch Application Chooser
|
||||
M-o Open in Default Appllication
|
||||
C-/ Directory: Navigate on broot
|
||||
C-/ File: Open in Pager (bat)
|
||||
|
||||
M-s Toggle Sort
|
||||
C-y Copy/Yank
|
||||
C-M-y Copy/Yank Working Directory
|
||||
C-a Select all
|
||||
C-M-d Deselect All
|
||||
Del Delete/Remove file
|
||||
|
||||
Alt-? Help (this page)
|
||||
ESC Quit
|
||||
EOF
|
||||
)"
|
||||
|
||||
export FZF_DEFAULT_OPTS=" \
|
||||
--color=bg+:#363a4f,bg:#24273a,spinner:#f4dbd6,hl:#ed8796 \
|
||||
--color=fg:#cad3f5,header:#ed8796,info:#c6a0f6,pointer:#f4dbd6 \
|
||||
--color=marker:#f4dbd6,fg+:#cad3f5,prompt:#c6a0f6,hl+:#ed8796"
|
||||
|
||||
export FZF_PREVIEW_OPTS="--preview
|
||||
'([[ {} =~ ('.jpg'|'.jpeg'|'.png'|'.gif'|'.bmp'|'.svg'|'.mp4'|'.mkv')$ ]] && (chafa --center=on {} && exiftool {})) ||
|
||||
([[ -f {} ]] && (bat --style=header,numbers,changes,plain --color=always --language=sh --line-range :500 {} || cat {})) ||
|
||||
([[ -d {} ]] && (lsd -all --long --tree --depth=5 --group-dirs=first -I=.git {} )) || echo {} 3>/dev/null | head -n 500'
|
||||
"
|
||||
|
||||
#'([[ \$(file -bL --mime-type {} 2> /dev/null = image) ]] && (catimg -w 100 {})) || # throwing an stb error cant silence
|
||||
|
||||
export FZF_PREVIEW_KEYBIND_OPTS="
|
||||
--bind '?:toggle-preview'
|
||||
--bind 'alt-?:preview(printf \"${FZF_SHOW_HELP_OPTS}\")'
|
||||
--bind 'alt-j:preview-down'
|
||||
--bind 'alt-k:preview-up'
|
||||
--bind 'ctrl-d:preview-page-down'
|
||||
--bind 'ctrl-u:preview-page-up'
|
||||
--bind 'ctrl-t:preview-top'
|
||||
--bind 'ctrl-b:preview-bottom'
|
||||
--bind 'ctrl-l:clear-screen+clear-query+first'
|
||||
--bind 'ctrl-space:change-preview-window(right,80%,nohidden|down,80%,border-top,nohidden|down,50%,nohidden|up,80%,border-down,nohidden|up,50%,nohidden|left,80%,nohidden|left,50%,nohidden|down:3:nohidden:wrap|up:3,nohidden:wrap|right,50%,nohidden)'
|
||||
"
|
||||
export FZF_KEYBIND_SHORTCUTS="
|
||||
$FZF_PREVIEW_KEYBIND_OPTS
|
||||
--bind 'alt-o:execute(xdg-open {+})'
|
||||
--bind 'alt-s:toggle-sort'
|
||||
--bind 'ctrl-/:execute(
|
||||
if [[ -d {} ]]; then
|
||||
broot {} < /dev/tty > /dev/tty 2>&1
|
||||
elif [[ {} =~ ('.jpg'|'.jpeg'|'.png'|'.gif'|'.bmp'|'.svg'|'.mp4'|'.mkv')$ ]]; then
|
||||
chafa --center {} | less > /dev/tty
|
||||
else
|
||||
bat --paging=always --style=plain --color=always --language=sh {} > /dev/tty
|
||||
fi)'
|
||||
--bind 'ctrl-a:select-all'
|
||||
--bind 'ctrl-alt-d:deselect-all'
|
||||
--bind 'ctrl-o:execute(flatpak run re.sonny.Junction {+})'
|
||||
--bind 'ctrl-y:execute-silent(wl-copy {+})'
|
||||
--bind 'ctrl-alt-y:execute-silent(readlink -f {+} | wl-copy)'
|
||||
--bind 'ctrl-e:execute(${EDITOR} {} > /dev/tty)'
|
||||
--bind 'ctrl-v:execute(code {+})'
|
||||
--bind 'del:execute(rm -iv {};)+reload($FZF_DEFAULT_COMMAND)+clear-screen'
|
||||
"
|
||||
# --bind 'ctrl-/:execute(if [[ -f {} ]]; then bat --paging=always --style=\"header,numbers,changes\" --language=sh {} < /dev/tty > /dev/tty 2>&1; else broot {} < /dev/tty > /dev/tty 2>&1
|
||||
# ; fi)'
|
||||
|
||||
export FZF_DEFAULT_COMMAND="fd --color=always --hidden --exclude .git"
|
||||
|
||||
export FZF_DEFAULT_OPTS="
|
||||
"$FZF_PREVIEW_OPTS"
|
||||
"$FZF_KEYBIND_SHORTCUTS"
|
||||
"$FZF_THEME_CATPPUCCIN_MOCHA"
|
||||
-i
|
||||
--ansi
|
||||
--multi
|
||||
--height=90%
|
||||
--info=inline
|
||||
--no-separator
|
||||
--layout=reverse
|
||||
"
|
||||
|
||||
export FZF_ALT_C_COMMAND="fd --type=d --color=always --hidden --exclude .git"
|
||||
|
||||
export FZF_ALT_C_OPTS="
|
||||
--preview 'lsd --all --long --tree --depth=3 {} | head -500'
|
||||
--preview-window 'nohidden,<50(down,75%,border-top)'
|
||||
--bind 'alt-h:reload(fd --type=d --color=always --follow --exclude .git)'
|
||||
--bind 'alt-c:reload(fd -p ~ --color=always --hidden --type=d --follow)'
|
||||
"
|
||||
|
||||
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
|
||||
|
||||
export FZF_CTRL_T_OPTS="
|
||||
--exit-0
|
||||
--select-1
|
||||
--info=default
|
||||
--layout=reverse-list
|
||||
--preview-window '50%,<50(up,75%,border-down)'
|
||||
--header 'Alt-D: Directories | Alt-F: Files | Alt-H: Hide Files'
|
||||
--bind 'alt-d:change-prompt( Directories > )+reload("$FZF_ALT_C_COMMAND")'
|
||||
--bind 'alt-f:change-prompt( Files > )+reload("$FZF_DEFAULT_COMMAND")'
|
||||
--bind 'alt-h:change-prompt( Hide Files > )+reload(fd --type=f --color=always --follow)'
|
||||
--bind 'ctrl-t:change-prompt(Home > )+reload(fd --base-directory ~ --color=always --hidden --exclude .git)'
|
||||
"
|
||||
|
||||
export FZF_CTRL_R_OPTS="
|
||||
--preview 'echo {+} | bat --color=always --wrap never --language=sh --style=plain'
|
||||
--preview-window 'down:3:nohidden:wrap'"
|
||||
|
||||
# export FZF_TMUX_OPTS='-p80% --color=border:blue'
|
||||
# FZF_TMUX_CTRL_R_OPT="fzf-tmux -p $FZF_CTRL_R_OPTS"
|
||||
# --bind 'alt-p:execute($'FZF_TMUX_OPTS'='-p90% --color=border:blue')'
|
||||
|
||||
# fzf completion '**' doesn't preview files (idk if it is a bug)
|
||||
_fzf_compgen_path() {
|
||||
fd --color=always --hidden --follow --exclude ".git" . "$1"
|
||||
}
|
||||
_fzf_compgen_dir() {
|
||||
fd --color=always --type d --hidden --follow --exclude ".git" . "$1"
|
||||
}
|
||||
16
configs/fzf/widgets/alias_widget.zsh
Normal file
16
configs/fzf/widgets/alias_widget.zsh
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
fzf-aliases-widget() {
|
||||
LBUFFER="$LBUFFER$(FZF_DEFAULT_COMMAND=
|
||||
alias | sed 's/=/ --- /' | \
|
||||
awk -v blu=$(tput setaf 4) -v cyn=$(tput setaf 6) -v bld=$(tput bold) -v rst=$(tput sgr0) -F '---' \
|
||||
'{
|
||||
print bld cyn $1 rst blu "--" $2
|
||||
}' | \
|
||||
tr -d "'" | column -tl2 | \
|
||||
fzf --prompt=" Aliases > " \
|
||||
--preview 'echo {3..} | bat --color=always --plain --language=sh' \
|
||||
--preview-window 'up:4:nohidden:wrap' | cut -d' ' -f 1)"
|
||||
zle reset-prompt
|
||||
}
|
||||
|
||||
zle -N fzf-aliases-widget
|
||||
bindkey '^[a' fzf-aliases-widget #<Alt-A>
|
||||
25
configs/fzf/widgets/atuin-history_widget.zsh
Normal file
25
configs/fzf/widgets/atuin-history_widget.zsh
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
fzf-atuin-history-widget() {
|
||||
local selected num
|
||||
setopt localoptions noglobsubst noposixbuiltins pipefail no_aliases 2> /dev/null
|
||||
selected=( $(atuin history list --cmd-only | tac | awk '{ cmd=$0; sub(/^[ \t]*[0-9]+\**[ \t]+/, "", cmd); if (!seen[cmd]++) print $0 }' | bat --color=always --wrap never --language=sh --style=plain |
|
||||
FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} ${FZF_DEFAULT_OPTS-} --scheme=history --bind=ctrl-r:toggle-sort,ctrl-z:ignore ${FZF_CTRL_R_OPTS-} --query=${(qqq)LBUFFER} +m" $(__fzfcmd)) )
|
||||
local ret=$?
|
||||
if [ -n "$selected" ]; then
|
||||
cmd=$selected[1,-1]
|
||||
if [ -n "$cmd" ]; then
|
||||
zle vi-fetch-history -n $cmd
|
||||
fi
|
||||
fi
|
||||
zle -U "$cmd"
|
||||
zle kill-buffer
|
||||
zle reset-prompt
|
||||
return $ret
|
||||
}
|
||||
|
||||
if ! command -v atuin > /dev/null; then
|
||||
zle -N fzf-history-widget
|
||||
bindkey '^R' fzf-history-widget
|
||||
else
|
||||
zle -N fzf-atuin-history-widget
|
||||
bindkey '^R' fzf-atuin-history-widget
|
||||
fi
|
||||
15
configs/fzf/widgets/cd-recent-dir_widget.zsh
Normal file
15
configs/fzf/widgets/cd-recent-dir_widget.zsh
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
fzf-cd-recent-dir-widget () {
|
||||
local dir
|
||||
print -rNC1 -- $dirstack |
|
||||
FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} --bind=ctrl-z:ignore ${FZF_DEFAULT_OPTS-} ${FZF_ALT_C_OPTS-}" $(__fzfcmd) +m \
|
||||
--color=fg:bold:blue --query=${LBUFFER} --read0 --print0 |
|
||||
IFS= read -rd '' dir
|
||||
if [[ -n $dir ]]; then
|
||||
BUFFER=" builtin cd -- $dir"
|
||||
zle accept-line
|
||||
fi
|
||||
zle reset-prompt
|
||||
}
|
||||
|
||||
zle -N fzf-cd-recent-dir-widget
|
||||
bindkey '^[C' fzf-cd-recent-dir-widget #<Alt-Shift-C>
|
||||
20
configs/fzf/widgets/cd_widget.zsh
Normal file
20
configs/fzf/widgets/cd_widget.zsh
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
fzf-cd-widget() {
|
||||
local cmd="${FZF_ALT_C_COMMAND:-"command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \
|
||||
-o -type d -print 2> /dev/null | cut -b3-"}"
|
||||
setopt localoptions pipefail no_aliases 2> /dev/null
|
||||
local dir="$(eval "$cmd" | FZF_DEFAULT_OPTS="--height ${FZF_TMUX_HEIGHT:-40%} --reverse --bind=ctrl-z:ignore ${FZF_DEFAULT_OPTS-} ${FZF_ALT_C_OPTS-}" $(__fzfcmd) +m)"
|
||||
if [[ -z "$dir" ]]; then
|
||||
zle redisplay
|
||||
return 0
|
||||
fi
|
||||
zle push-line # Clear buffer. Auto-restored on next prompt.
|
||||
BUFFER=" builtin cd -- ${(q)dir}"
|
||||
zle accept-line
|
||||
local ret=$?
|
||||
unset dir # ensure this doesn't end up appearing in prompt expansion
|
||||
zle reset-prompt
|
||||
return $ret
|
||||
}
|
||||
|
||||
zle -N fzf-cd-widget
|
||||
bindkey '^[c' fzf-cd-widget #<Alt-C>
|
||||
24
configs/fzf/widgets/dictionary_widget.zsh
Normal file
24
configs/fzf/widgets/dictionary_widget.zsh
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
fzf-dictionary-widget() {
|
||||
local dict wiki wikis gogl
|
||||
dict="dict {}"
|
||||
wiki="wiki {} > /dev/tty"
|
||||
wweb="w3m https://en.wikipedia.org/wiki/{}"
|
||||
gogl="w3m https://google.com/search?q=define\ {}"
|
||||
LBUFFER="$LBUFFER$(FZF_DEFAULT_COMMAND= cat /usr/share/dict/*words | sort | uniq -id | \
|
||||
fzf-tmux \
|
||||
-p60% \
|
||||
--layout=default \
|
||||
--header-first \
|
||||
--header="M-w: Wiki | M-d: Define | M-g: Google" \
|
||||
--color=fg:blue,fg+:blue,border:blue \
|
||||
--bind="alt-d:change-preview($dict)" \
|
||||
--bind="alt-w:execute($wiki)" \
|
||||
--bind="alt-g:execute($gogl)" \
|
||||
--prompt=" > " \
|
||||
--preview "$dict" \
|
||||
--preview-window='up,85%,border-bottom,wrap' | paste -sd" " -)"
|
||||
zle reset-prompt
|
||||
}
|
||||
|
||||
zle -N fzf-dictionary-widget
|
||||
bindkey '^[d' fzf-dictionary-widget #<Alt-D>
|
||||
7
configs/fzf/widgets/fzf-rg-launcher.zsh
Normal file
7
configs/fzf/widgets/fzf-rg-launcher.zsh
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
function fzf-rg-widget() {
|
||||
bash ${DOOTS:-$HOME/.local}/bin/fzf-rg-launcher "$LBUFFER"
|
||||
zle redisplay
|
||||
}
|
||||
|
||||
zle -N fzf-rg-widget
|
||||
bindkey '^F' fzf-rg-widget
|
||||
13
configs/fzf/widgets/locate_widget.zsh
Normal file
13
configs/fzf/widgets/locate_widget.zsh
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
fzf-locate-widget() {
|
||||
local selected
|
||||
if selected=$(locate / | fzf --prompt " Locate > " -q "$LBUFFER" \
|
||||
--bind 'alt-u:execute(sudo updatedb)' --header 'M-u: UpdateDB' \
|
||||
--color=fg:bold:blue --preview-window '<50(down,75%,border-top)'
|
||||
); then
|
||||
LBUFFER=$selected
|
||||
fi
|
||||
zle reset-prompt
|
||||
}
|
||||
zle -N fzf-locate-widget
|
||||
bindkey '^[i' fzf-locate-widget #<Alt-I>
|
||||
|
||||
21
configs/fzf/widgets/man_widget.zsh
Normal file
21
configs/fzf/widgets/man_widget.zsh
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
fzf-man-widget() {
|
||||
batman="man {1} | col -bx | bat --language=man --plain --color always --theme=\"Monokai Extended\""
|
||||
man -k . | sort \
|
||||
| awk -v CYN=${CYN} -v BLU=${BLU} -v RES=${RES} -v BLD=${BLD} '{ $1=CYN BLD $1; $2=RES BLU;} 1' \
|
||||
| fzf \
|
||||
-q "$LBUFFER" \
|
||||
--ansi \
|
||||
--tiebreak=begin \
|
||||
--prompt=' Man > ' \
|
||||
--header="M-u: update mandb | M-t: tl;dr | M-c: cheat.sh | M:m manual " \
|
||||
--preview-window '50%,rounded,<50(down,80%,border-up)' \
|
||||
--preview "${batman}" \
|
||||
--bind "enter:execute(man {1})" \
|
||||
--bind "alt-c:+change-preview(curl -s cht.sh/{1})+change-prompt(ﯽ Cheat > )" \
|
||||
--bind "alt-m:+change-preview(${batman})+change-prompt( Man > )" \
|
||||
--bind "alt-u:execute(sudo mandb && echo -e '\nUpdating tl;dr cache...';tldr --update)" \
|
||||
--bind "alt-t:+change-preview(tldr --color=always {1})+change-prompt(ﳁ TLDR > )"
|
||||
zle reset-prompt
|
||||
}
|
||||
zle -N fzf-man-widget
|
||||
bindkey '^[h' fzf-man-widget
|
||||
92
configs/ghostty/config
Normal file
92
configs/ghostty/config
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
theme = catppuccin-macchiato
|
||||
|
||||
# Common
|
||||
|
||||
keybind = ctrl+space>o=write_selection_file:open
|
||||
keybind = ctrl+space>shift+o=write_selection_file:paste
|
||||
|
||||
keybind = ctrl+space>alt+o=write_scrollback_file:open
|
||||
keybind = ctrl+space>alt+shift+o=write_scrollback_file:paste
|
||||
|
||||
keybind = ctrl+comma=open_config
|
||||
keybind = ctrl+space>shift+r=reload_config
|
||||
|
||||
keybind = ctrl+shift+c=copy_to_clipboard
|
||||
keybind = ctrl+shift+i=inspector:toggle
|
||||
keybind = ctrl+shift+v=paste_from_clipboard
|
||||
keybind = shift+insert=paste_from_selection
|
||||
|
||||
# Navigation
|
||||
keybind = alt+f4=close_window
|
||||
keybind = ctrl+shift+w=close_surface
|
||||
keybind = ctrl+space>shift+t=close_surface
|
||||
keybind = ctrl+shift+n=new_window
|
||||
keybind = ctrl+shift+q=quit
|
||||
|
||||
keybind = ctrl+space>shift+f=toggle_fullscreen
|
||||
|
||||
keybind = ctrl+alt+j=jump_to_prompt:1
|
||||
keybind = ctrl+alt+k=jump_to_prompt:-1
|
||||
|
||||
keybind = ctrl+shift+a=select_all
|
||||
keybind = shift+right=adjust_selection:right
|
||||
keybind = shift+down=adjust_selection:down
|
||||
keybind = shift+up=adjust_selection:up
|
||||
keybind = shift+left=adjust_selection:left
|
||||
|
||||
keybind = shift+end=scroll_to_bottom
|
||||
keybind = shift+home=scroll_to_top
|
||||
keybind = shift+page_up=scroll_page_up
|
||||
keybind = shift+page_down=scroll_page_down
|
||||
|
||||
# Config
|
||||
keybind = ctrl+equal=increase_font_size:1
|
||||
keybind = ctrl+minus=decrease_font_size:1
|
||||
keybind = ctrl+plus=increase_font_size:1
|
||||
keybind = ctrl+zero=reset_font_size
|
||||
|
||||
# Splits
|
||||
keybind = ctrl+space>s=new_split:right
|
||||
keybind = ctrl+space>v=new_split:down
|
||||
|
||||
keybind = ctrl+space>h=goto_split:left
|
||||
keybind = ctrl+space>j=goto_split:bottom
|
||||
keybind = ctrl+space>k=goto_split:top
|
||||
keybind = ctrl+space>l=goto_split:right
|
||||
|
||||
keybind = ctrl+space>left=goto_split:left
|
||||
keybind = ctrl+space>down=goto_split:bottom
|
||||
keybind = ctrl+space>up=goto_split:top
|
||||
keybind = ctrl+space>right=goto_split:right
|
||||
|
||||
keybind = ctrl+space>m=toggle_split_zoom
|
||||
|
||||
keybind = super+ctrl+left_bracket=goto_split:previous
|
||||
keybind = super+ctrl+right_bracket=goto_split:next
|
||||
|
||||
keybind = super+ctrl+shift+right=resize_split:right,10
|
||||
keybind = super+ctrl+shift+down=resize_split:down,10
|
||||
keybind = super+ctrl+shift+up=resize_split:up,10
|
||||
keybind = super+ctrl+shift+left=resize_split:left,10
|
||||
keybind = ctrl+space>ctrl+zero=equalize_splits
|
||||
|
||||
# Tabs
|
||||
keybind = ctrl+space>one=goto_tab:1
|
||||
keybind = ctrl+space>two=goto_tab:2
|
||||
keybind = ctrl+space>three=goto_tab:3
|
||||
keybind = ctrl+space>four=goto_tab:4
|
||||
keybind = ctrl+space>five=goto_tab:5
|
||||
keybind = ctrl+space>six=goto_tab:6
|
||||
keybind = ctrl+space>seven=goto_tab:7
|
||||
keybind = ctrl+space>eight=goto_tab:8
|
||||
keybind = ctrl+space>nine=last_tab
|
||||
|
||||
keybind = ctrl+page_up=previous_tab
|
||||
keybind = ctrl+page_down=next_tab
|
||||
keybind = ctrl+shift+left=previous_tab
|
||||
keybind = ctrl+shift+right=next_tab
|
||||
keybind = ctrl+space>shift+tab=previous_tab
|
||||
keybind = ctrl+space>tab=next_tab
|
||||
|
||||
keybind = ctrl+space>t=new_tab
|
||||
|
||||
16
configs/git/config
Normal file
16
configs/git/config
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
[user]
|
||||
name = aleidk
|
||||
email = ale.navarro.parra@gmail.com
|
||||
[pull]
|
||||
rebase = true
|
||||
[init]
|
||||
defaultBranch = main
|
||||
|
||||
[includeIf "gitdir:~/Repos/Work/"]
|
||||
path = ~/.config/git/config-work
|
||||
[merge]
|
||||
autoStash = true
|
||||
edit = no
|
||||
ff = no
|
||||
[rebase]
|
||||
autoStash = true
|
||||
9
configs/git/ignore
Normal file
9
configs/git/ignore
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# Git Worktrees
|
||||
.worktrees/*
|
||||
|
||||
# PHP Stuff
|
||||
vendor
|
||||
.php-cs-fixer.cache
|
||||
|
||||
# Neovim
|
||||
Session.vim
|
||||
9
configs/hypr/almighty/hyprland.conf
Normal file
9
configs/hypr/almighty/hyprland.conf
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
monitorv2 {
|
||||
output = desc:GWD ARZOPA 000000000000
|
||||
mode = 1920x1080@60, transform
|
||||
position = auto
|
||||
scale = 1
|
||||
transform = 3 # rotate 180°
|
||||
supports_wide_color = true
|
||||
supports_hdr = true
|
||||
}
|
||||
39
configs/hypr/base/executable_gdm-wrapper.sh
Normal file
39
configs/hypr/base/executable_gdm-wrapper.sh
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
#!/usr/bin/sh
|
||||
|
||||
if [ "x$XDG_SESSION_TYPE" = "xwayland" ] &&
|
||||
[ "x$XDG_SESSION_CLASS" != "xgreeter" ] &&
|
||||
[ -n "$SHELL" ] &&
|
||||
grep -q "$SHELL" /etc/shells &&
|
||||
! (echo "$SHELL" | grep -q "false") &&
|
||||
! (echo "$SHELL" | grep -q "nologin"); then
|
||||
if [ "$1" != '-l' ]; then
|
||||
exec bash -c "exec -l '$SHELL' -c '$0 -l $*'"
|
||||
else
|
||||
shift
|
||||
fi
|
||||
fi
|
||||
|
||||
SETTING=$(G_MESSAGES_DEBUG='' gsettings get org.gnome.system.locale region)
|
||||
REGION=${SETTING#\'}
|
||||
REGION=${REGION%\'}
|
||||
|
||||
if [ -n "$REGION" ]; then
|
||||
unset LC_TIME LC_NUMERIC LC_MONETARY LC_MEASUREMENT LC_PAPER
|
||||
|
||||
if [ "$LANG" != "$REGION" ]; then
|
||||
# LC_CTYPE
|
||||
export LC_NUMERIC=$REGION
|
||||
export LC_TIME=$REGION
|
||||
# LC_COLLATE
|
||||
export LC_MONETARY=$REGION
|
||||
# LC_MESSAGES
|
||||
export LC_PAPER=$REGION
|
||||
# LC_NAME
|
||||
export LC_ADDRESS=$REGION
|
||||
export LC_TELEPHONE=$REGION
|
||||
export LC_MEASUREMENT=$REGION
|
||||
# LC_IDENTIFICATION
|
||||
fi
|
||||
fi
|
||||
|
||||
exec Hyprland
|
||||
34
configs/hypr/base/hypridle.conf
Normal file
34
configs/hypr/base/hypridle.conf
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
|
||||
before_sleep_cmd = loginctl lock-session # lock before suspend.
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 600 # 10min.
|
||||
on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor.
|
||||
on-resume = brightnessctl -r # monitor backlight restore.
|
||||
}
|
||||
|
||||
# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight.
|
||||
# listener {
|
||||
# timeout = 300 # 2.5min.
|
||||
# on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight.
|
||||
# on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight.
|
||||
# }
|
||||
|
||||
listener {
|
||||
timeout = 900 # 15min
|
||||
on-timeout = loginctl lock-session # lock screen when timeout has passed
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 330 # 5.5min
|
||||
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
|
||||
on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected after timeout has fired.
|
||||
}
|
||||
|
||||
listener {
|
||||
timeout = 1800 # 30min
|
||||
on-timeout = systemctl suspend # suspend pc
|
||||
}
|
||||
235
configs/hypr/base/hyprland.conf
Normal file
235
configs/hypr/base/hyprland.conf
Normal file
|
|
@ -0,0 +1,235 @@
|
|||
# | |_| | | | | '_ \| '__| |/ _` | '_ \ / _` |
|
||||
# | _ | |_| | |_) | | | | (_| | | | | (_| |
|
||||
# |_| |_|\__, | .__/|_| |_|\__,_|_| |_|\__,_|
|
||||
# |___/|_|
|
||||
#
|
||||
# ╰────────────────────────────────────────────────────────────────────╯
|
||||
|
||||
|
||||
# ╭──────────────────────────────────────────────────────────╮
|
||||
# │ Autostart apps │
|
||||
# ╰──────────────────────────────────────────────────────────╯
|
||||
|
||||
# ── System apps ─────────────────────────────────────────────────────────
|
||||
# exec-once = pipewire
|
||||
exec-once = /usr/lib/pam_kwallet_init
|
||||
exec-once = udieskie
|
||||
exec-once = hyprctl setcursor catppuccin-macchiato-lavender-cursors 24
|
||||
|
||||
# ── Utils ───────────────────────────────────────────────────────────────
|
||||
exec-once = wpaperd -d
|
||||
exec-once = swaync --skip-system-css
|
||||
|
||||
# ╭──────────────────────────────────────────────────────────╮
|
||||
# │ Config │
|
||||
# ╰──────────────────────────────────────────────────────────╯
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
source = ~/.config/hypr/theme.conf
|
||||
source = ~/.config/hypr/include/*.conf
|
||||
|
||||
# ── Monitors ──────────────────────────────────────────────────────────
|
||||
monitor = , preferred, auto, 1
|
||||
monitor = WAYLAND-1, disable # hack for when running manually
|
||||
|
||||
# Workaround for wrong wpaperd texture on vertical screen
|
||||
# https://github.com/hyprwm/Hyprland/issues/9408#issuecomment-2661608482
|
||||
render {
|
||||
expand_undersized_textures = false
|
||||
}
|
||||
|
||||
# ── Input devides ─────────────────────────────────────────────────────
|
||||
input {
|
||||
kb_layout = latam
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options = caps:escape
|
||||
kb_rules =
|
||||
|
||||
follow_mouse = 2
|
||||
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
}
|
||||
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
# ── General config ────────────────────────────────────────────────────
|
||||
general {
|
||||
gaps_in = 5
|
||||
gaps_out = 10
|
||||
border_size = 2
|
||||
|
||||
col.active_border = $teal $teal
|
||||
col.inactive_border = $surface1 $surface1
|
||||
|
||||
# snap {
|
||||
# enabled = true
|
||||
# }
|
||||
|
||||
layout = master
|
||||
}
|
||||
|
||||
# decoration {
|
||||
# rounding = 2
|
||||
# drop_shadow = true
|
||||
# shadow_range = 4
|
||||
# shadow_render_power = 3
|
||||
# col.shadow = rgba($baseAlphaee)
|
||||
# }
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
|
||||
animation = windows, 1, 5, default, slide
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
animation = specialWorkspace, 1, 8, default, fade
|
||||
}
|
||||
|
||||
gestures {
|
||||
workspace_swipe = true
|
||||
workspace_swipe_invert = true
|
||||
workspace_swipe_distance = 200
|
||||
}
|
||||
|
||||
misc {
|
||||
enable_swallow = true
|
||||
swallow_regex = ^(Alacritty|kitty|footclient)$
|
||||
# swallow_exception_regex = ""
|
||||
|
||||
mouse_move_focuses_monitor = false
|
||||
}
|
||||
|
||||
# ── Layouts ───────────────────────────────────────────────────────────
|
||||
master {
|
||||
new_status = slave
|
||||
mfact = 0.5
|
||||
# slave_count_for_center_master = 4
|
||||
}
|
||||
|
||||
# ╭──────────────────────────────────────────────────────────╮
|
||||
# │ Windows rules │
|
||||
# ╰──────────────────────────────────────────────────────────╯
|
||||
|
||||
windowrulev2 = float, class:org.gnome.Nautilus
|
||||
windowrulev2 = float, class:xdg-desktop-portal-gtk
|
||||
|
||||
# ╭───────────────────────────────────────────────────────────╮
|
||||
# │ Workspaces rules │
|
||||
# ╰───────────────────────────────────────────────────────────╯
|
||||
|
||||
workspace = 1, monitor:HDMI-A-1, persistent:true
|
||||
workspace = 2, monitor:HDMI-A-1, persistent:true
|
||||
workspace = 3, monitor:HDMI-A-1, persistent:true
|
||||
workspace = 4, monitor:HDMI-A-1, persistent:true
|
||||
workspace = 5, monitor:HDMI-A-1, persistent:true
|
||||
|
||||
workspace = 6, monitor:HDMI-A-2, persistent:true
|
||||
workspace = 7, monitor:HDMI-A-2, persistent:true
|
||||
workspace = 8, monitor:HDMI-A-2, persistent:true
|
||||
workspace = 9, monitor:HDMI-A-2, persistent:true
|
||||
|
||||
# ╭──────────────────────────────────────────────────────────╮
|
||||
# │ Keybindings │
|
||||
# ╰──────────────────────────────────────────────────────────╯
|
||||
|
||||
$mainMod = SUPER
|
||||
|
||||
# $menu = bemenu-run -iwn --binding vim --vim-esc-exits --scrollbar autohide --fixed-height --counter always -l 20 -P '>' -p 'Open:' -B 2 -R 5 --cw '5x' --fn 'JetBrainsMono 13' --bdr '##$tealAlpha' --ab '##$baseAlpha' --af '##$textAlpha' --fb '##$baseAlpha' --ff '##$textAlpha' --cf '##$mauveAlpha' --hb '##$surface0Alpha' --hf '##$tealAlpha' --nb '##$baseAlpha' --nf '##$textAlpha' --tb '##$mauveAlpha' --tf '##$baseAlpha' --scb '##$surface0Alpha' --scf '##$mauveAlpha'
|
||||
$menu = rofi -show drun -run-command "uwsm app -- {cmd}"
|
||||
|
||||
# ── Spawn ─────────────────────────────────────────────────────────────
|
||||
bind = $mainMod SHIFT, E, exec, uwsm stop
|
||||
bind = $mainMod, return, exec, kitty
|
||||
bind = $mainMod SHIFT, q, killactive,
|
||||
bind = $mainMod, D, exec, $menu
|
||||
|
||||
# screenshot current window
|
||||
bind = SHIFT, Print, exec, grim -g "$(hyprctl activewindow -j | jq -r '"\(.at[0]),\(.at[1]) \(.size[0])x\(.size[1])"')" - | wl-copy && notify-send "Screenshot taken!"
|
||||
# screenshot area and edit it
|
||||
bind = SHIFT CTRL, Print, exec, grim -g "$(slurp -d)" - | swappy -f - && notify-send "Screenshot taken!"
|
||||
# screenshot area
|
||||
bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy && notify-send "Screenshot taken!"
|
||||
|
||||
bind = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%+
|
||||
bind = , XF86AudioLowerVolume, exec, wpctl set-volume -l 1.0 @DEFAULT_AUDIO_SINK@ 5%-
|
||||
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = , XF86MonBrightnessUp, exec, brightnessctl set +5%
|
||||
|
||||
# ── Window Options ────────────────────────────────────────────────────
|
||||
bind = $mainMod SHIFT, space, togglefloating,
|
||||
bind = $mainMod, f, fullscreen, 1 # preserve gaps and bar
|
||||
bind = $mainMod SHIFT, f, fullscreen, 0 # use whole screen
|
||||
bind = $mainMod SHIFT, s, toggleswallow
|
||||
|
||||
# ── Focus ─────────────────────────────────────────────────────────────
|
||||
bind = $mainMod, h, movefocus, l
|
||||
bind = $mainMod, j, movefocus, d
|
||||
bind = $mainMod, k, movefocus, u
|
||||
bind = $mainMod, l, movefocus, r
|
||||
|
||||
bind = $mainMod + SHIFT, h, movewindow, l
|
||||
bind = $mainMod + SHIFT, j, movewindow, d
|
||||
bind = $mainMod + SHIFT, k, movewindow, u
|
||||
bind = $mainMod + SHIFT, l, movewindow, r
|
||||
|
||||
bind = $mainMod, bar, workspace, previous
|
||||
bind = $mainMod CTRL, bar, focusmonitor, +1
|
||||
bind = $mainMod, space, focusurgentorlast
|
||||
bind = $mainMod, tab, cyclenext, visible
|
||||
bind = $mainMod SHIFT, tab, cyclenext, visible prev
|
||||
|
||||
# ── Layout ──────────────────────────────────────────────────────────────
|
||||
|
||||
bind = $mainMod, plus, layoutmsg, mfact +0.1
|
||||
bind = $mainMod, minus, layoutmsg, mfact -0.1
|
||||
bind = $mainMod CTRL, 0, layoutmsg, mfact exact 0.5
|
||||
bind = $mainMod, n, layoutmsg, addmaster
|
||||
bind = $mainMod SHIFT, n, layoutmsg, removemaster
|
||||
bind = $mainMod, m, layoutmsg, rollprev
|
||||
bind = $mainMod SHIFT, m, layoutmsg, rollnext
|
||||
bind = $mainMod, s, layoutmsg, orientationcycle
|
||||
|
||||
|
||||
# ── Workspaces ────────────────────────────────────────────────────────
|
||||
bind = $mainMod, 1, workspace, 1
|
||||
bind = $mainMod, 2, workspace, 2
|
||||
bind = $mainMod, 3, workspace, 3
|
||||
bind = $mainMod, 4, workspace, 4
|
||||
bind = $mainMod, 5, workspace, 5
|
||||
bind = $mainMod, 6, workspace, 6
|
||||
bind = $mainMod, 7, workspace, 7
|
||||
bind = $mainMod, 8, workspace, 8
|
||||
bind = $mainMod, 9, workspace, 9
|
||||
|
||||
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||||
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||||
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||||
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||||
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||||
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||||
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||||
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||||
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||||
|
||||
bind = $mainMod, 0, togglespecialworkspace, scratchpad
|
||||
bind = $mainMod SHIFT, 0, movetoworkspace, special:scratchpad
|
||||
|
||||
# ── Mouse ─────────────────────────────────────────────────────────────
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow
|
||||
bindm = $mainMod, mouse:273, resizewindow
|
||||
|
||||
95
configs/hypr/base/hyprlock.conf
Normal file
95
configs/hypr/base/hyprlock.conf
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
# sample hyprlock.conf
|
||||
# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock
|
||||
#
|
||||
# rendered text in all widgets supports pango markup (e.g. <b> or <i> tags)
|
||||
# ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#general-remarks
|
||||
#
|
||||
# shortcuts to clear password buffer: ESC, Ctrl+U, Ctrl+Backspace
|
||||
#
|
||||
# you can get started by copying this config to ~/.config/hypr/hyprlock.conf
|
||||
#
|
||||
|
||||
$font = Monospace
|
||||
|
||||
general {
|
||||
hide_cursor = true
|
||||
}
|
||||
|
||||
# uncomment to enable fingerprint authentication
|
||||
# auth {
|
||||
# fingerprint {
|
||||
# enabled = true
|
||||
# ready_message = Scan fingerprint to unlock
|
||||
# present_message = Scanning...
|
||||
# retry_delay = 250 # in milliseconds
|
||||
# }
|
||||
# }
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
bezier = linear, 1, 1, 0, 0
|
||||
animation = fadeIn, 1, 5, linear
|
||||
animation = fadeOut, 1, 5, linear
|
||||
animation = inputFieldDots, 1, 2, linear
|
||||
}
|
||||
|
||||
background {
|
||||
monitor =
|
||||
path = screenshot
|
||||
blur_passes = 2
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 30%, 5%
|
||||
outline_thickness = 2
|
||||
inner_color = rgba(0, 0, 0, 0.0) # no fill
|
||||
|
||||
outer_color = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
check_color = rgba(00ff99ee) rgba(ff6633ee) 120deg
|
||||
fail_color = rgba(ff6633ee) rgba(ff0066ee) 40deg
|
||||
|
||||
font_color = rgb(143, 143, 143)
|
||||
fade_on_empty = false
|
||||
rounding = 15
|
||||
|
||||
font_family = $font
|
||||
placeholder_text = Input password...
|
||||
fail_text = $PAMFAIL
|
||||
|
||||
# uncomment to use a letter instead of a dot to indicate the typed password
|
||||
# dots_text_format = *
|
||||
# dots_size = 0.4
|
||||
dots_spacing = 0.3
|
||||
|
||||
# uncomment to use an input indicator that does not show the password length (similar to swaylock's input indicator)
|
||||
hide_input = false
|
||||
|
||||
position = 0, 0
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
|
||||
# TIME
|
||||
label {
|
||||
monitor =
|
||||
text = $TIME # ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#variable-substitution
|
||||
font_size = 90
|
||||
font_family = $font
|
||||
|
||||
position = 0, -100
|
||||
halign = center
|
||||
valign = top
|
||||
}
|
||||
|
||||
# DATE
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:60000] date +"%A, %d %B %Y" # update every 60 seconds
|
||||
font_size = 25
|
||||
font_family = $font
|
||||
|
||||
position = 0, -270
|
||||
halign = center
|
||||
valign = top
|
||||
}
|
||||
4
configs/hypr/base/hyprpaper.conf
Normal file
4
configs/hypr/base/hyprpaper.conf
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
preload = ~/Pictures/wallpaper.jpg
|
||||
|
||||
#set the default wallpaper(s) seen on inital workspace(s) --depending on the number of monitors used
|
||||
wallpaper = ,~/Pictures/wallpaper.jpg
|
||||
0
configs/hypr/base/include/.gitkeep
Normal file
0
configs/hypr/base/include/.gitkeep
Normal file
77
configs/hypr/base/theme.conf
Normal file
77
configs/hypr/base/theme.conf
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
$rosewater = rgb(f4dbd6)
|
||||
$rosewaterAlpha = f4dbd6
|
||||
|
||||
$flamingo = rgb(f0c6c6)
|
||||
$flamingoAlpha = f0c6c6
|
||||
|
||||
$pink = rgb(f5bde6)
|
||||
$pinkAlpha = f5bde6
|
||||
|
||||
$mauve = rgb(c6a0f6)
|
||||
$mauveAlpha = c6a0f6
|
||||
|
||||
$red = rgb(ed8796)
|
||||
$redAlpha = ed8796
|
||||
|
||||
$maroon = rgb(ee99a0)
|
||||
$maroonAlpha = ee99a0
|
||||
|
||||
$peach = rgb(f5a97f)
|
||||
$peachAlpha = f5a97f
|
||||
|
||||
$yellow = rgb(eed49f)
|
||||
$yellowAlpha = eed49f
|
||||
|
||||
$green = rgb(a6da95)
|
||||
$greenAlpha = a6da95
|
||||
|
||||
$teal = rgb(8bd5ca)
|
||||
$tealAlpha = 8bd5ca
|
||||
|
||||
$sky = rgb(91d7e3)
|
||||
$skyAlpha = 91d7e3
|
||||
|
||||
$sapphire = rgb(7dc4e4)
|
||||
$sapphireAlpha = 7dc4e4
|
||||
|
||||
$blue = rgb(8aadf4)
|
||||
$blueAlpha = 8aadf4
|
||||
|
||||
$lavender = rgb(b7bdf8)
|
||||
$lavenderAlpha = b7bdf8
|
||||
|
||||
$text = rgb(cad3f5)
|
||||
$textAlpha = cad3f5
|
||||
|
||||
$subtext1 = rgb(b8c0e0)
|
||||
$subtext1Alpha = b8c0e0
|
||||
|
||||
$subtext0 = rgb(a5adcb)
|
||||
$subtext0Alpha = a5adcb
|
||||
|
||||
$overlay2 = rgb(939ab7)
|
||||
$overlay2Alpha = 939ab7
|
||||
|
||||
$overlay1 = rgb(8087a2)
|
||||
$overlay1Alpha = 8087a2
|
||||
|
||||
$overlay0 = rgb(6e738d)
|
||||
$overlay0Alpha = 6e738d
|
||||
|
||||
$surface2 = rgb(5b6078)
|
||||
$surface2Alpha = 5b6078
|
||||
|
||||
$surface1 = rgb(494d64)
|
||||
$surface1Alpha = 494d64
|
||||
|
||||
$surface0 = rgb(363a4f)
|
||||
$surface0Alpha = 363a4f
|
||||
|
||||
$base = rgb(24273a)
|
||||
$baseAlpha = 24273a
|
||||
|
||||
$mantle = rgb(1e2030)
|
||||
$mantleAlpha = 1e2030
|
||||
|
||||
$crust = rgb(181926)
|
||||
$crustAlpha = 181926
|
||||
8
configs/hypr/work-laptop/hyprland.conf
Normal file
8
configs/hypr/work-laptop/hyprland.conf
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
monitorv2 {
|
||||
output = HDMI-A-1
|
||||
mode = 3440x1440@49.99Hz
|
||||
position = auto
|
||||
scale = 1
|
||||
supports_wide_color = true
|
||||
supports_hdr = true
|
||||
}
|
||||
153
configs/jetbrains/ideavimrc
Normal file
153
configs/jetbrains/ideavimrc
Normal file
|
|
@ -0,0 +1,153 @@
|
|||
" .ideavimrc is a configuration file for IdeaVim plugin. It uses
|
||||
" the same commands as the original .vimrc configuration.
|
||||
" You can find a list of commands here: https://jb.gg/h38q75
|
||||
" Find more examples here: https://jb.gg/share-ideavimrc
|
||||
|
||||
" UI/UX
|
||||
set scrolloff=10
|
||||
set autoindent
|
||||
set relativenumber
|
||||
set showcmd
|
||||
set showmode
|
||||
set ideajoin
|
||||
set startofline
|
||||
|
||||
" search
|
||||
set hlsearch
|
||||
set incsearch
|
||||
set smartcase
|
||||
|
||||
let mapleader=" "
|
||||
let g:mapleader=" "
|
||||
|
||||
" system clipboard
|
||||
set clipboard+=unnamedplus
|
||||
set ideaput
|
||||
|
||||
"" Plugins
|
||||
" --- Enable IdeaVim plugins https://jb.gg/ideavim-plugins
|
||||
|
||||
" set sneak
|
||||
set highlightedyank
|
||||
set exchange
|
||||
set commentary
|
||||
set matchit
|
||||
set mini-ai
|
||||
set vim-paragraph-motion
|
||||
set peekaboo
|
||||
set surround
|
||||
|
||||
" More text objects
|
||||
set argtextobj
|
||||
set functiontextobj
|
||||
set textobj-indent
|
||||
|
||||
set which-key
|
||||
set notimeout
|
||||
let g:WhichKey_ShowVimActions = "true"
|
||||
let g:WhichKey_SortOrder = "by_key_prefix_first"
|
||||
|
||||
set NERDTree
|
||||
let g:NERDTreeMapActivateNode = "l"
|
||||
let g:NERDTreeMapPreview = "<Tab>"
|
||||
let g:NERDTreeMapJumpParent = "h"
|
||||
nmap <leader>e :NERDTree<CR>
|
||||
|
||||
" surround
|
||||
Plug "tpope/vim-surround"
|
||||
|
||||
" Mappings
|
||||
|
||||
" Choose if vim or ide will handle the mapping
|
||||
|
||||
" Allows to set text formatting in markdown
|
||||
sethandler <C-b> n:vim i-v:ide
|
||||
sethandler <C-i> n:vim i-v:ide
|
||||
sethandler <C-f> a:ide
|
||||
sethandler <C-r> n:vim i-v:ide
|
||||
sethandler <C-v> a:vim i:ide
|
||||
|
||||
" Don't use Ex mode, use Q for formatting.
|
||||
map Q gq
|
||||
" Prevent movement
|
||||
nmap <Space> <nop>
|
||||
vmap <Space> <nop>
|
||||
vmap p "_dP
|
||||
vmap J <Action>(MoveStatementDown)
|
||||
vmap K <Action>(MoveStatementUp)
|
||||
let g:WhichKeyDesc_Nop = "<Space>"
|
||||
|
||||
"" find
|
||||
let g:WhichKeyDesc_Find = "<leader>f Find"
|
||||
nmap <leader>fF <Action>(SearchEverywhere)
|
||||
let g:WhichKeyDesc_Find_Everywhere = "<leader>fF Everywhere"
|
||||
|
||||
nmap <leader>ff <Action>(GotoFile)
|
||||
let g:WhichKeyDesc_Find_Files = "<leader>ff Files"
|
||||
|
||||
nmap <leader>fr <Action>(RecentFiles)
|
||||
let g:WhichKeyDesc_Find_Recents = "<leader>fr Recent"
|
||||
|
||||
nmap <leader>fa <Action>(GotoAction)
|
||||
|
||||
nmap <leader>fl <Action>(GotoSymbol)
|
||||
|
||||
"" code jump
|
||||
" nmap gd <Action>(GotoSuperMethod)
|
||||
" nmap gD <Action>(GotoDeclaration)
|
||||
" nmap gy <Action>(GotoTypeDeclaration)
|
||||
" nmap gri <Action>(GotoImplementation)
|
||||
" nmap grr <Action>(FindUsages)
|
||||
" nmap <leader>lR <Action>(FindUsages)
|
||||
|
||||
nmap <leader>lj <Action>(GotoNextError)
|
||||
nmap <leader>lk <Action>(GotoPreviousError)
|
||||
|
||||
"" editing
|
||||
let g:WhichKeyDesc_Commentary = "<leader>gc Comment"
|
||||
" nmap gco o<Action>(CommentByLineComment)<ESC>
|
||||
" nmap gcO O<Action>(CommentByLineComment)<ESC>
|
||||
|
||||
nmap <leader>lf <Action>(ReformatCode)
|
||||
vmap <leader>lf <Action>(ReformatCode)<ESC>
|
||||
nmap <leader>lr <Action>(RenameElement)
|
||||
|
||||
" Actions
|
||||
nmap <leader>ps <Action>(QuickList.SSH Actions)
|
||||
|
||||
"" git operation
|
||||
nmap <leader>gt <Action>(ActivateCommitToolWindow)
|
||||
" nmap <leader>gC <Action>(Vcs.ShowTabbedFileHistory)
|
||||
nmap <leader>gr <Action>(Vcs.RollbackChangedLines)
|
||||
nmap <leader>gR <Action>(ChangesView.Revert)
|
||||
" nmap <leader>gl <Action>(Annotate)
|
||||
|
||||
"" tabs
|
||||
nmap H <Action>(PreviousTab)
|
||||
nmap L <Action>(NextTab)
|
||||
nmap <leader>bc <Action>(CloseContent)
|
||||
nmap <leader>bC <Action>(CloseAllEditors)
|
||||
|
||||
"" panels
|
||||
nmap <C-h> <C-w>h
|
||||
nmap <C-l> <C-w>l
|
||||
nmap <C-k> <C-w>k
|
||||
nmap <C-j> <C-w>j
|
||||
|
||||
nmap <Bar> <Action>(SplitVertically)
|
||||
nmap ° <Action>(SplitHorizontally)
|
||||
|
||||
"" debug
|
||||
" nmap <leader>dc <Action>(Debug)
|
||||
" nmap <leader>dq <Action>(Stop)
|
||||
" nmap <leader>db <Action>(ToggleLineBreakpoint)
|
||||
" nmap <leader>do <Action>(StepOver)
|
||||
" nmap <leader>di <Action>(StepInto)
|
||||
" nmap <leader>dO <Action>(StepOut)
|
||||
" nmap <leader>dE <Action>(EvaluateExpression)
|
||||
|
||||
"" UI
|
||||
map <leader>z <Action>(ToggleDistractionFreeMode)
|
||||
|
||||
"" 快速关闭上次搜索结果高亮
|
||||
nmap <ESC> :nohlsearch<CR>
|
||||
80
configs/kitty/current-theme.conf
Normal file
80
configs/kitty/current-theme.conf
Normal file
|
|
@ -0,0 +1,80 @@
|
|||
# vim:ft=kitty
|
||||
|
||||
## name: Catppuccin-Macchiato
|
||||
## author: Pocco81 (https://github.com/Pocco81)
|
||||
## license: MIT
|
||||
## upstream: https://github.com/catppuccin/kitty/blob/main/macchiato.conf
|
||||
## blurb: Soothing pastel theme for the high-spirited!
|
||||
|
||||
|
||||
|
||||
# The basic colors
|
||||
foreground #CAD3F5
|
||||
background #24273A
|
||||
selection_foreground #24273A
|
||||
selection_background #F4DBD6
|
||||
|
||||
# Cursor colors
|
||||
cursor #F4DBD6
|
||||
cursor_text_color #24273A
|
||||
|
||||
# URL underline color when hovering with mouse
|
||||
url_color #F4DBD6
|
||||
|
||||
# Kitty window border colors
|
||||
active_border_color #B7BDF8
|
||||
inactive_border_color #6E738D
|
||||
bell_border_color #EED49F
|
||||
|
||||
# OS Window titlebar colors
|
||||
wayland_titlebar_color system
|
||||
macos_titlebar_color system
|
||||
|
||||
# Tab bar colors
|
||||
active_tab_foreground #181926
|
||||
active_tab_background #C6A0F6
|
||||
inactive_tab_foreground #CAD3F5
|
||||
inactive_tab_background #1E2030
|
||||
tab_bar_background #181926
|
||||
|
||||
# Colors for marks (marked text in the terminal)
|
||||
mark1_foreground #24273A
|
||||
mark1_background #B7BDF8
|
||||
mark2_foreground #24273A
|
||||
mark2_background #C6A0F6
|
||||
mark3_foreground #24273A
|
||||
mark3_background #7DC4E4
|
||||
|
||||
# The 16 terminal colors
|
||||
|
||||
# black
|
||||
color0 #494D64
|
||||
color8 #5B6078
|
||||
|
||||
# red
|
||||
color1 #ED8796
|
||||
color9 #ED8796
|
||||
|
||||
# green
|
||||
color2 #A6DA95
|
||||
color10 #A6DA95
|
||||
|
||||
# yellow
|
||||
color3 #EED49F
|
||||
color11 #EED49F
|
||||
|
||||
# blue
|
||||
color4 #8AADF4
|
||||
color12 #8AADF4
|
||||
|
||||
# magenta
|
||||
color5 #F5BDE6
|
||||
color13 #F5BDE6
|
||||
|
||||
# cyan
|
||||
color6 #8BD5CA
|
||||
color14 #8BD5CA
|
||||
|
||||
# white
|
||||
color7 #B8C0E0
|
||||
color15 #A5ADCB
|
||||
2513
configs/kitty/kitty.conf
Normal file
2513
configs/kitty/kitty.conf
Normal file
File diff suppressed because it is too large
Load diff
2453
configs/kitty/private_kitty.conf.bak
Normal file
2453
configs/kitty/private_kitty.conf.bak
Normal file
File diff suppressed because it is too large
Load diff
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue