Compare commits

..

9 Commits

212 changed files with 5118 additions and 19653 deletions

View File

@@ -8,16 +8,13 @@ indent_style = space
insert_final_newline = true insert_final_newline = true
trim_trailing_whitespace = true trim_trailing_whitespace = true
[*.fish]
max_line_length = 80
[*.md] [*.md]
max_line_length = 100 max_line_length = 100
[*.lua] [*.lua]
max_line_length = 90 max_line_length = 120
[*.{php,fish}] [*.php]
indent_size = 4 indent_size = 4
[.git{ignore,modules}] [.git{ignore,modules}]

45
.gitattributes vendored
View File

@@ -1,4 +1,4 @@
## GITATTRIBUTES ## GITATTRIBUTES FOR WEB PROJECTS
# #
# These settings are for any web project. # These settings are for any web project.
# #
@@ -20,23 +20,20 @@
*.bat text eol=crlf *.bat text eol=crlf
*.cmd text eol=crlf *.cmd text eol=crlf
*.coffee text *.coffee text
*.css text diff=css eol=lf *.css text diff=css
*.fish text diff=shell eol=lf *.htm text diff=html
*.htm text diff=html eol=lf *.html text diff=html
*.html text diff=html eol=lf
*.inc text *.inc text
*.ini text *.ini text
*.js text *.js text
*.json text *.json text
*.jsx text *.jsx text
*.less text *.less text
*.lua text diff=lua eol=lf
*.ls text *.ls text
*.map text -diff *.map text -diff
*.od text *.od text
*.onlydata text *.onlydata text
*.php text diff=php *.php text diff=php
*.plist text eol=lf
*.pl text *.pl text
*.ps1 text eol=crlf *.ps1 text eol=crlf
*.py text diff=python *.py text diff=python
@@ -44,18 +41,15 @@
*.sass text *.sass text
*.scm text *.scm text
*.scss text diff=css *.scss text diff=css
*.sh text eol=lf diff=shell *.sh text eol=lf
.husky/* text eol=lf .husky/* text eol=lf
*.sql text *.sql text
*.styl text *.styl text
*.tag text *.tag text
*.tmux text eol=lf diff=tmux
*.ts text *.ts text
*.tsx text *.tsx text
*.vim text eol=lf
*.xml text *.xml text
*.xhtml text diff=html *.xhtml text diff=html
*.zsh text diff=zsh eol=lf
# Docker # Docker
Dockerfile text Dockerfile text
@@ -74,7 +68,6 @@ Dockerfile text
AUTHORS text AUTHORS text
CHANGELOG text CHANGELOG text
CHANGES text CHANGES text
CODEOWNERS text
CONTRIBUTING text CONTRIBUTING text
COPYING text COPYING text
copyright text copyright text
@@ -112,8 +105,6 @@ TODO text
*.config text *.config text
.editorconfig text .editorconfig text
.env text .env text
*.env text
*.env.* text
.gitattributes text .gitattributes text
.gitconfig text .gitconfig text
.htaccess text .htaccess text
@@ -217,37 +208,15 @@ Procfile text
*.gitignore text *.gitignore text
*.gitkeep text *.gitkeep text
.gitattributes text export-ignore .gitattributes export-ignore
*.gitattributes text export-ignore
.gitmodules text export-ignore
*.gitmodules text export-ignore
**/.gitignore export-ignore **/.gitignore export-ignore
**/.gitkeep export-ignore **/.gitkeep export-ignore
# Repo specials # Repo specials
local/bin/* text eol=lf diff=shell local/bin/* text eol=lf
local/bin/*.md text eol=lf diff=markdown
config/antigen.zsh text config/antigen.zsh text
git/* text git/* text
**/git/* text **/git/* text
**/alias text **/alias text
ssh/* text ssh/* text
ssh/shared.d/* text
ssh/local.d/* text
# Auto-generated rules - 2025-04-16 10:28:04
# Shell scripts detected by content
install text eol=lf diff=shell
# File extension-based rules
*.1 text eol=lf
*.applescript text eol=lf
*.d/work-git text eol=lf
*.dirs text eol=lf
*.example text eol=lf
*.itermcolors text eol=lf
*.locale text eol=lf
*.python-version text eol=lf
*.snippets text eol=lf
*.theme text eol=lf
*.yamlfmt text eol=lf

View File

@@ -1,32 +1,18 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json
name: Debug Changelog # Workflow name displayed on GitHub name: Debug Changelog # Workflow name displayed on GitHub
on: on:
workflow_dispatch: # Trigger manually workflow_dispatch: # Trigger manually
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
debug-changelog: debug-changelog:
runs-on: self-hosted runs-on: self-hosted
permissions: write-all
steps: steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/checkout@v4
- name: Create changelog text - name: Create changelog text
id: changelog id: changelog
uses: loopwerk/tag-changelog@941366edb8920e2071eae0449031830984b9f26e # v1.3.0 uses: loopwerk/tag-changelog@v1
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
config_file: .github/tag-changelog-config.js config_file: .github/tag-changelog-config.js
- name: 'Echo results' - name: 'Echo results'
id: output-changelog id: output-changelog
run: | run: |

View File

@@ -1,47 +1,29 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json name: reviewdog
name: Reviewdog
on: [push] on: [push]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
linters: linters:
name: Linters name: Linters
runs-on: self-hosted runs-on: self-hosted
permissions: write-all
steps: steps:
- uses: actions/checkout@v4
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: GitHub Actions - name: GitHub Actions
uses: reviewdog/action-actionlint@a5524e1c19e62881d79c1f1b9b6f09f16356e281 # v1.65.2 uses: reviewdog/action-actionlint@v1
with: with:
github_token: ${{ secrets.GITHUB_TOKEN }} github_token: ${{ secrets.GITHUB_TOKEN }}
reporter: github-pr-review reporter: github-pr-review
- name: detect-secrets - name: detect-secrets
uses: reviewdog/action-detect-secrets@master uses: reviewdog/action-detect-secrets@master
with: with:
github_token: ${{ secrets.GITHUB_TOKEN }} github_token: ${{ secrets.GITHUB_TOKEN }}
reporter: github-pr-review reporter: github-pr-review
- name: markdownlint - name: markdownlint
uses: reviewdog/action-markdownlint@3667398db9118d7e78f7a63d10e26ce454ba5f58 # v0.26.2 uses: reviewdog/action-markdownlint@v0
with: with:
github_token: ${{ secrets.GITHUB_TOKEN }} github_token: ${{ secrets.GITHUB_TOKEN }}
reporter: github-pr-review reporter: github-pr-review
- name: shfmt - name: shfmt
uses: reviewdog/action-shfmt@d8f080930b9be5847b4f97e9f4122b81a82aaeac # v1.0.4 uses: reviewdog/action-shfmt@v1
with: with:
github_token: ${{ secrets.GITHUB_TOKEN }} github_token: ${{ secrets.GITHUB_TOKEN }}
shfmt_flags: | shfmt_flags: |

View File

@@ -1,48 +1,38 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json
name: Release Daily State name: Release Daily State
on: on:
workflow_dispatch: workflow_dispatch:
schedule: schedule:
- cron: '0 21 * * *' # 00:00 at Europe/Helsinki - cron: '0 21 * * *' # 00:00 at Europe/Helsinki
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
new-daily-release: new-daily-release:
runs-on: self-hosted runs-on: self-hosted
permissions:
permissions: write-all contents: write
outputs: outputs:
created: ${{ steps.daily-version.outputs.created }} created: ${{ steps.daily-version.outputs.created }}
version: ${{ steps.daily-version.outputs.version }} version: ${{ steps.daily-version.outputs.version }}
steps: steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/checkout@v4
- name: Create tag if necessary - name: Create tag if necessary
uses: fregante/daily-version-action@fb1a60b7c4daf1410cd755e360ebec3901e58588 # v2.1.3 uses: fregante/daily-version-action@v2
id: daily-version id: daily-version
- name: Create changelog text - name: Create changelog text
if: steps.daily-version.outputs.created if: steps.daily-version.outputs.created
id: changelog id: changelog
uses: loopwerk/tag-changelog@941366edb8920e2071eae0449031830984b9f26e # v1.3.0 uses: loopwerk/tag-changelog@v1
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
config_file: .github/tag-changelog-config.js config_file: .github/tag-changelog-config.js
- name: Create release - name: Create release
if: steps.daily-version.outputs.created if: steps.daily-version.outputs.created
uses: softprops/action-gh-release@da05d552573ad5aba039eaac05058a918a7bf631 # v2.2.2 uses: actions/create-release@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:
token: ${{ secrets.GITHUB_TOKEN }}
tag_name: ${{ steps.daily-version.outputs.version }} tag_name: ${{ steps.daily-version.outputs.version }}
name: Release ${{ steps.daily-version.outputs.version }} release_name: Release ${{ steps.daily-version.outputs.version }}
body: ${{ steps.changelog.outputs.changes }} body: ${{ steps.changelog.outputs.changes }}

View File

@@ -1,35 +1,21 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json
name: Pre-commit autoupdate name: Pre-commit autoupdate
on: on:
schedule: schedule:
# At 04:00 on Monday and Thursday. # At 04:00 on Monday and Thursday.
- cron: "0 4 * * 1,4" - cron: "0 4 * * 1,4"
workflow_dispatch: workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
auto-update: auto-update:
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions: permissions:
contents: write contents: write
pull-requests: write pull-requests: write
steps: steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/checkout@v4
- uses: actions/setup-python@v5.4.0
- uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
- run: pip install pre-commit && pre-commit autoupdate - run: pip install pre-commit && pre-commit autoupdate
- uses: peter-evans/create-pull-request@v7
- uses: peter-evans/create-pull-request@271a8d0340265f705b14b6d32b9829c1cb33d45e # v7.0.8
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
branch: update/pre-commit-hooks branch: update/pre-commit-hooks

View File

@@ -1,5 +1,4 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json
name: Semantic PR name: Semantic PR
on: on:
@@ -9,18 +8,11 @@ on:
- edited - edited
- synchronize - synchronize
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
semantic-pr: semantic-pr:
runs-on: self-hosted runs-on: self-hosted
steps: steps:
- uses: amannn/action-semantic-pull-request@0723387faaf9b38adef4775cd42cfd5155ed6017 # v5.5.3 - uses: amannn/action-semantic-pull-request@v5.5.3
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:

View File

@@ -1,5 +1,4 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json
name: Sync labels name: Sync labels
# yamllint disable-line rule:truthy # yamllint disable-line rule:truthy
@@ -15,18 +14,10 @@ on:
workflow_call: workflow_call:
workflow_dispatch: workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
SyncLabels: SyncLabels:
runs-on: ubuntu-latest
permissions: permissions:
issues: write issues: write
runs-on: ubuntu-latest
steps: steps:
- uses: ivuorinen/actions/sync-labels@main - uses: ivuorinen/actions/sync-labels@main

View File

@@ -1,39 +1,28 @@
--- ---
# yaml-language-server: https://json.schemastore.org/github-workflow.json
name: Update submodules name: Update submodules
on: on:
schedule: schedule:
# At 04:00 on Monday and Thursday. # At 04:00 on Monday and Thursday.
- cron: "0 4 * * 1" - cron: "0 4 * * 1,4"
workflow_dispatch: workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions: read-all
jobs: jobs:
update-submodules: update-submodules:
permissions:
contents: write
issues: write
pull-requests: write
runs-on: self-hosted runs-on: self-hosted
permissions: write-all
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 uses: actions/checkout@v4
with: with:
submodules: true submodules: true
fetch-depth: 2 fetch-depth: 0
token: ${{secrets.GITHUB_TOKEN}} token: ${{secrets.GITHUB_TOKEN}}
- name: Config Git User - name: Config Git User
run: | run: |
git config --global user.name "${{ github.actor }}" git config --global user.name "${{ github.actor }}"
git config --global user.email "${{ github.actor }}@users.noreply.github.com" git config --global user.email "${{ github.actor }}@users.noreply.github.com"
- name: Update submodules - name: Update submodules
run: | run: |
git submodule sync git submodule sync

13
.gitignore vendored
View File

@@ -3,8 +3,6 @@
*.bak *.bak
*.log *.log
*.socket *.socket
*.swp
*.old
*cache *cache
.env .env
.idea .idea
@@ -24,10 +22,6 @@ config/npm/npmrc
config/nvim/lazy-lock.json config/nvim/lazy-lock.json
config/nvim/spell/* config/nvim/spell/*
!config/nvim/spell/.gitkeep !config/nvim/spell/.gitkeep
config/git/local.d/*
!config/git/local.d/.gitkeep
config/vim/fzf
config/vim/plugged/*
config/zed/* config/zed/*
!config/zed/settings.json !config/zed/settings.json
config/zsh/.zcompdump config/zsh/.zcompdump
@@ -40,12 +34,5 @@ node_modules
ssh/local.d/* ssh/local.d/*
!ssh/local.d/.gitkeep !ssh/local.d/.gitkeep
config/fish/fish_variables config/fish/fish_variables
**/exports.secret.fish
**/exports-secret.fish **/exports-secret.fish
config/fish/completions/asdf.fish config/fish/completions/asdf.fish
config/vim/.netrwhist
config/vim/extra/*
config/gh/hosts.yml
dependency-check-report.html
local/bin/yabai
local/man/yabai.1

6
.gitmodules vendored
View File

@@ -80,6 +80,6 @@
shallow = true shallow = true
ignore = dirty ignore = dirty
[submodule "tmux/tmux-resurrect"] [submodule "dotbot-asdf"]
path = config/tmux/plugins/tmux-resurrect path = tools/dotbot-asdf
url = https://github.com/tmux-plugins/tmux-resurrect.git url = https://github.com/sobolevn/dotbot-asdf

View File

@@ -13,6 +13,7 @@
"siblings_only": true "siblings_only": true
}, },
"required-headings": false, "required-headings": false,
"ol-prefix": false,
"ul-style": { "ul-style": {
"style": "dash" "style": "dash"
} }

2
.nvmrc
View File

@@ -1 +1 @@
22.16.0 22.14.0

View File

@@ -23,13 +23,13 @@ repos:
args: [--autofix, --no-sort-keys] args: [--autofix, --no-sort-keys]
- repo: https://github.com/igorshubovych/markdownlint-cli - repo: https://github.com/igorshubovych/markdownlint-cli
rev: v0.45.0 rev: v0.44.0
hooks: hooks:
- id: markdownlint - id: markdownlint
args: [-c, .markdownlint.json, --fix] args: [-c, .markdownlint.json, --fix]
- repo: https://github.com/adrienverge/yamllint - repo: https://github.com/adrienverge/yamllint
rev: v1.37.1 rev: v1.35.1
hooks: hooks:
- id: yamllint - id: yamllint
@@ -39,7 +39,7 @@ repos:
- id: shellcheck - id: shellcheck
- repo: https://github.com/scop/pre-commit-shfmt - repo: https://github.com/scop/pre-commit-shfmt
rev: v3.11.0-1 rev: v3.10.0-2
hooks: hooks:
- id: shfmt - id: shfmt
@@ -49,17 +49,11 @@ repos:
- id: actionlint - id: actionlint
- repo: https://github.com/renovatebot/pre-commit-hooks - repo: https://github.com/renovatebot/pre-commit-hooks
rev: 40.36.8 rev: 39.178.1
hooks: hooks:
- id: renovate-config-validator - id: renovate-config-validator
- repo: https://github.com/JohnnyMorganz/StyLua - repo: https://github.com/JohnnyMorganz/StyLua
rev: v2.1.0 rev: v2.0.2
hooks: hooks:
- id: stylua # or stylua-system / stylua-github - id: stylua # or stylua-system / stylua-github
- repo: https://github.com/hugoh/pre-commit-fish.git
rev: v1.2
hooks:
- id: fish_syntax
- id: fish_indent

View File

@@ -1 +1 @@
3.13.3 3.13.2

View File

@@ -11,6 +11,8 @@ git submodule add --name dotbot-include \
-f https://gitlab.com/gnfzdz/dotbot-include.git tools/dotbot-include -f https://gitlab.com/gnfzdz/dotbot-include.git tools/dotbot-include
git submodule add --name dotbot-pip \ git submodule add --name dotbot-pip \
-f https://github.com/sobolevn/dotbot-pip.git tools/dotbot-pip -f https://github.com/sobolevn/dotbot-pip.git tools/dotbot-pip
git submodule add --name dotbot-asdf \
-f https://github.com/sobolevn/dotbot-asdf tools/dotbot-asdf
# other repos # other repos
git submodule add --name cheat-community \ git submodule add --name cheat-community \
@@ -26,8 +28,6 @@ git submodule add --name tmux/tmux-continuum \
-f https://github.com/tmux-plugins/tmux-continuum config/tmux/plugins/tmux-continuum -f https://github.com/tmux-plugins/tmux-continuum config/tmux/plugins/tmux-continuum
git submodule add --name tmux/tmux-mode-indicator \ git submodule add --name tmux/tmux-mode-indicator \
-f https://github.com/MunifTanjim/tmux-mode-indicator.git config/tmux/plugins/tmux-mode-indicator -f https://github.com/MunifTanjim/tmux-mode-indicator.git config/tmux/plugins/tmux-mode-indicator
git submodule add --name tmux/tmux-resurrect \
-f https://github.com/tmux-plugins/tmux-resurrect.git config/tmux/plugins/tmux-resurrect
git submodule add --name tmux/tmux-sensible \ git submodule add --name tmux/tmux-sensible \
-f https://github.com/tmux-plugins/tmux-sensible.git config/tmux/plugins/tmux-sensible -f https://github.com/tmux-plugins/tmux-sensible.git config/tmux/plugins/tmux-sensible
git submodule add --name tmux/tmux-sessionist \ git submodule add --name tmux/tmux-sessionist \
@@ -57,6 +57,7 @@ folders=(
"config/tmux/plugins/tpm" "config/tmux/plugins/tpm"
"config/tmux/plugins/tmux" "config/tmux/plugins/tmux"
"config/tmux/plugins/tmux-menus" "config/tmux/plugins/tmux-menus"
"config/tmux/plugins/tmux-resurrect"
"tools/dotbot-crontab" "tools/dotbot-crontab"
"tools/dotbot-snap" "tools/dotbot-snap"
"config/nvim-kickstart" "config/nvim-kickstart"

View File

@@ -25,6 +25,3 @@ x-have antidot && {
PROMPT_DIRTRIM=3 PROMPT_DIRTRIM=3
PROMPT_COMMAND='PS1_CMD1=$(git branch --show-current 2>/dev/null)' PROMPT_COMMAND='PS1_CMD1=$(git branch --show-current 2>/dev/null)'
PS1='\[\e[95m\]\u\[\e[0m\]@\[\e[38;5;22;2m\]\h\[\e[0m\] \[\e[38;5;33m\]\w\[\e[0m\] \[\e[92;2m\]${PS1_CMD1}\n\[\e[39m\]➜\[\e[0m\] ' PS1='\[\e[95m\]\u\[\e[0m\]@\[\e[38;5;22;2m\]\h\[\e[0m\] \[\e[38;5;33m\]\w\[\e[0m\] \[\e[92;2m\]${PS1_CMD1}\n\[\e[39m\]➜\[\e[0m\] '
# Added by LM Studio CLI (lms)
export PATH="$PATH:$HOME/.lmstudio/bin"

View File

@@ -1 +1 @@
v22.14.0 lts/*

View File

@@ -22,6 +22,7 @@ FPATH="$ZSH_COMPLETIONS:$FPATH"
ZSH_COMPDUMP="$XDG_CACHE_HOME/zsh/zcompdump-${SHORT_HOST}-${ZSH_VERSION}" ZSH_COMPDUMP="$XDG_CACHE_HOME/zsh/zcompdump-${SHORT_HOST}-${ZSH_VERSION}"
source "$DOTFILES/config/zsh/antidote.zsh" source "$DOTFILES/config/zsh/antidote.zsh"
# source "$DOTFILES/config/zsh/prompt.zsh"
# Function to source FZF configuration # Function to source FZF configuration
source_fzf_config() source_fzf_config()
@@ -60,6 +61,3 @@ bashcompinit
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
export P10K_CONFIG="$DOTFILES/config/zsh/p10k.zsh" export P10K_CONFIG="$DOTFILES/config/zsh/p10k.zsh"
[[ ! -f "$P10K_CONFIG" ]] || source "$P10K_CONFIG" [[ ! -f "$P10K_CONFIG" ]] || source "$P10K_CONFIG"
# Added by LM Studio CLI (lms)
export PATH="$PATH:$HOME/.lmstudio/bin"

View File

@@ -119,10 +119,6 @@ run = ['layout floating']
if.app-id = 'com.philipyoungg.session-setapp' # Session app (Setapp) if.app-id = 'com.philipyoungg.session-setapp' # Session app (Setapp)
run = ['layout floating'] run = ['layout floating']
[[on-window-detected]]
if.app-id = 'com.microsoft.rdc.macos' # Remote Desktop
run = ['layout floating']
# Possible values: (qwerty|dvorak) # Possible values: (qwerty|dvorak)
# See https://nikitabobko.github.io/AeroSpace/guide#key-mapping # See https://nikitabobko.github.io/AeroSpace/guide#key-mapping
[key-mapping] [key-mapping]

View File

@@ -7,8 +7,6 @@ x-have eza && {
alias ls="eza -h -s=type --git --icons --group-directories-first" alias ls="eza -h -s=type --git --icons --group-directories-first"
} }
alias vim='vim -u "$XDG_CONFIG_HOME/vim/vimrc"'
# Easier navigation: .., ..., .... # Easier navigation: .., ..., ....
alias ..="cd .." alias ..="cd .."
alias ...="cd ../.." alias ...="cd ../.."

View File

@@ -1,15 +0,0 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/aquaproj/aqua/main/json-schema/aqua-yaml.json
# aqua - Declarative CLI Version Manager
# https://aquaproj.github.io/
# checksum:
# enabled: true
# require_checksum: true
# supported_envs:
# - all
registries:
- type: standard
ref: v4.346.0 # renovate: depName=aquaproj/aqua-registry
packages:
- name: cli/cli
version: 'v2.69.0'

View File

@@ -1,8 +1,6 @@
// These are golang packages I use, // These are golang packages I use,
// so they should be available with all versions // so they should be available with all versions
// Aqua is a package manager like asdf, or Brew
github.com/aquaproj/aqua/v2/cmd/aqua@latest
// Git Profile allows you to switch between user profiles in git repos // Git Profile allows you to switch between user profiles in git repos
github.com/dotzero/git-profile@v1.4.0 github.com/dotzero/git-profile@v1.4.0
// An extensible command line tool or library to format yaml files. // An extensible command line tool or library to format yaml files.

View File

@@ -1,108 +0,0 @@
# Set aliases for fish shell
alias vim='vim -u "$XDG_CONFIG_HOME/vim/vimrc"'
# eza aliases if eza is installed
if type -q eza >/dev/null
function eza_git -d "Use eza and its git options if in a git repo"
if git rev-parse --is-inside-work-tree &>/dev/null
eza --group-directories-first --icons=always --smart-group --git $argv
else
eza --group-directories-first --icons=always --smart-group $argv
end
end
function lsa --wraps='eza_git -al' --description 'eza -al'
eza_git -al $argv
end
function ls --wraps='eza_git' --description eza
eza_git $argv
end
function ll --wraps='eza_git -l' --description 'eza -l'
eza_git -l $argv
end
function l --wraps='eza_git' --description eza
eza_git $argv
end
end
# Edit fish alias file
function .a --wraps='nvim ~/.dotfiles/config/fish/alias.fish' --description 'edit alias.fish'
nvim ~/.dotfiles/config/fish/alias.fish $argv
end
# Go to the directory where my projects are stored
function .c --wraps='cd ~/Code' --description 'cd ~/Code'
cd ~/Code $argv
end
# Go to the directory where the dotfiles are stored
function .d --wraps='cd ~/.dotfiles' --description 'cd ~/.dotfiles'
cd ~/.dotfiles $argv
end
# Go to the directory where my work codes are stored
function .s --wraps='cd ~/Code/s' --description 'cd ~/Code/s'
cd ~/Code/s $argv
end
# Go to the directory where my personal codes are stored
function .p --wraps='cd ~/Code/ivuorinen' --description 'cd ~/Code/ivuorinen'
cd ~/Code/ivuorinen $argv
end
# shortcut to commit with a message
function commit --wraps='git commit -a -m "chore: automated commit"' --description 'commit shortcut'
set -l commitMessage $argv
git add .
if test -z "$commitMessage"
if type -q aicommits
aicommits --type conventional
else
git commit -a -m "chore: automated commit"
end
return
end
git commit -a -m "$commitMessage"
end
function configure_tide --description 'Configure tide with the lean style and my preferences'
tide configure \
--auto \
--style=Lean \
--prompt_colors='True color' \
--show_time=No \
--lean_prompt_height='Two lines' \
--prompt_connection=Disconnected \
--prompt_spacing=Sparse \
--icons='Many icons' \
--transient=Yes
end
# Abbreviations for git
abbr --add gau git add -u
abbr --add gaa git add -A
abbr --add gcv git commit -v
# Abbreviations for composer
abbr --add c composer
abbr --add cu composer update
abbr --add ci composer install
# Abbreviations for php artisan
abbr --add .pa php artisan
abbr --add .paf php artisan fresh
abbr --add .pam php artisan migrate
abbr --add .pams php artisan migrate --seed
abbr --add .pat php artisan test
# Abbreviations for npm
abbr --add .n npm
abbr --add .nt npm test --if-present
abbr --add .nb npm run build --if-present
abbr --add .ns npm run start --if-present

View File

@@ -1,125 +0,0 @@
# aqua fish shell completion
function __fish_aqua_no_subcommand --description 'Test if there has been any subcommand yet'
for i in (commandline -opc)
if contains -- $i init install i generate g update-aqua upa update-checksum upc update up completion bash zsh fish help h help h which info remove rm vacuum cp policy allow deny init init-policy exec list generate-registry gr version root-dir help h
return 1
end
end
return 0
end
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l log-level -r -d 'log level'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l config -s c -r -d 'configuration file path'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l disable-cosign -d 'Disable Cosign verification'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l disable-slsa -d 'Disable SLSA verification'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l disable-github-artifact-attestation -d 'Disable GitHub Artifact Attestations verification'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l trace -r -d 'trace output file path'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l cpu-profile -r -d 'cpu profile output file path'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l help -s h -d 'show help'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l version -s v -d 'print the version'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l help -s h -d 'show help'
complete -c aqua -n '__fish_aqua_no_subcommand' -f -l version -s v -d 'print the version'
complete -c aqua -n '__fish_seen_subcommand_from init' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'init' -d 'Create a configuration file if it doesn\'t exist'
complete -c aqua -n '__fish_seen_subcommand_from init' -f -l use-import-dir -s u -d 'Use import_dir'
complete -c aqua -n '__fish_seen_subcommand_from init' -f -l import-dir -s i -r -d 'import_dir'
complete -c aqua -n '__fish_seen_subcommand_from init' -f -l create-dir -s d -d 'Create a directory named aqua and create aqua.yaml in it'
complete -c aqua -n '__fish_seen_subcommand_from install i' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'install i' -d 'Install tools'
complete -c aqua -n '__fish_seen_subcommand_from install i' -f -l only-link -s l -d 'create links but skip downloading packages'
complete -c aqua -n '__fish_seen_subcommand_from install i' -f -l test -d 'This flag was deprecated and had no meaning from aqua v2.0.0. This flag will be removed in aqua v3.0.0. https://github.com/aquaproj/aqua/issues/1691'
complete -c aqua -n '__fish_seen_subcommand_from install i' -f -l all -s a -d 'install all aqua configuration packages'
complete -c aqua -n '__fish_seen_subcommand_from install i' -f -l tags -s t -r -d 'filter installed packages with tags'
complete -c aqua -n '__fish_seen_subcommand_from install i' -f -l exclude-tags -r -d 'exclude installed packages with tags'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'generate g' -d 'Search packages in registries and output the configuration interactively'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l f -r -d 'the file path of packages list. When the value is "-", the list is passed from the standard input'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l i -d 'Insert packages to configuration file'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l pin -d 'Pin version'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l g -d 'Insert packages in a global configuration file'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l detail -s d -d 'Output additional fields such as description and link'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l o -r -d 'inserted file'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l select-version -s s -d 'Select the installed version interactively. Default to display 30 versions, use --limit/-l to change it.'
complete -c aqua -n '__fish_seen_subcommand_from generate g' -f -l limit -s l -r -d 'The maximum number of versions. Non-positive number refers to no limit.'
complete -c aqua -n '__fish_seen_subcommand_from update-aqua upa' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'update-aqua upa' -d 'Update aqua'
complete -c aqua -n '__fish_seen_subcommand_from update-checksum upc' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'update-checksum upc' -d 'Create or Update aqua-checksums.json'
complete -c aqua -n '__fish_seen_subcommand_from update-checksum upc' -f -l all -s a -d 'Create or Update all aqua-checksums.json including global configuration'
complete -c aqua -n '__fish_seen_subcommand_from update-checksum upc' -f -l deep -d 'This flag was deprecated and had no meaning from aqua v2.0.0. This flag will be removed in aqua v3.0.0. https://github.com/aquaproj/aqua/issues/1769'
complete -c aqua -n '__fish_seen_subcommand_from update-checksum upc' -f -l prune -d 'Remove unused checksums'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'update up' -d 'Update registries and packages'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l i -d 'Select packages with fuzzy finder'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l select-version -s s -d 'Select the version with fuzzy finder. Default to display 30 versions, use --limit/-l to change it.'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l only-registry -s r -d 'Update only registries'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l only-package -s p -d 'Update only packages'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l limit -s l -r -d 'The maximum number of versions. Non-positive number refers to no limit.'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l tags -s t -r -d 'filter installed packages with tags'
complete -c aqua -n '__fish_seen_subcommand_from update up' -f -l exclude-tags -r -d 'exclude installed packages with tags'
complete -c aqua -n '__fish_seen_subcommand_from completion' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'completion' -d 'Output shell completion script for bash, zsh, or fish'
complete -c aqua -n '__fish_seen_subcommand_from completion' -f -l help -s h -d 'show help'
complete -c aqua -n '__fish_seen_subcommand_from bash' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from completion' -a 'bash' -d 'Output shell completion script for bash'
complete -c aqua -n '__fish_seen_subcommand_from zsh' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from completion' -a 'zsh' -d 'Output shell completion script for zsh'
complete -c aqua -n '__fish_seen_subcommand_from fish' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from completion' -a 'fish' -d 'Output shell completion script for fish'
complete -c aqua -n '__fish_seen_subcommand_from fish' -f -l help -s h -d 'show help'
complete -c aqua -n '__fish_seen_subcommand_from help h' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from fish' -a 'help h' -d 'Shows a list of commands or help for one command'
complete -c aqua -n '__fish_seen_subcommand_from help h' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from completion' -a 'help h' -d 'Shows a list of commands or help for one command'
complete -c aqua -n '__fish_seen_subcommand_from which' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'which' -d 'Output the absolute file path of the given command'
complete -c aqua -n '__fish_seen_subcommand_from which' -f -l version -s v -d 'Output the given package version'
complete -c aqua -n '__fish_seen_subcommand_from info' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'info' -d 'Show information'
complete -c aqua -n '__fish_seen_subcommand_from remove rm' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'remove rm' -d 'Uninstall packages'
complete -c aqua -n '__fish_seen_subcommand_from remove rm' -f -l all -s a -d 'uninstall all packages'
complete -c aqua -n '__fish_seen_subcommand_from remove rm' -f -l mode -s m -r -d 'Removed target modes. l: link, p: package'
complete -c aqua -n '__fish_seen_subcommand_from remove rm' -f -l i -d 'Select packages with a Fuzzy Finder'
complete -c aqua -n '__fish_seen_subcommand_from vacuum' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'vacuum' -d 'Remove unused installed packages'
complete -c aqua -n '__fish_seen_subcommand_from vacuum' -f -l init -d 'Create timestamp files.'
complete -c aqua -n '__fish_seen_subcommand_from vacuum' -f -l days -s d -r -d 'Expiration days'
complete -c aqua -n '__fish_seen_subcommand_from cp' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'cp' -d 'Copy executable files in a directory'
complete -c aqua -n '__fish_seen_subcommand_from cp' -f -l o -r -d 'destination directory'
complete -c aqua -n '__fish_seen_subcommand_from cp' -f -l all -s a -d 'install all aqua configuration packages'
complete -c aqua -n '__fish_seen_subcommand_from cp' -f -l tags -s t -r -d 'filter installed packages with tags'
complete -c aqua -n '__fish_seen_subcommand_from cp' -f -l exclude-tags -r -d 'exclude installed packages with tags'
complete -c aqua -n '__fish_seen_subcommand_from policy' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'policy' -d 'Manage Policy'
complete -c aqua -n '__fish_seen_subcommand_from allow' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from policy' -a 'allow' -d 'Allow a policy file'
complete -c aqua -n '__fish_seen_subcommand_from deny' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from policy' -a 'deny' -d 'Deny a policy file'
complete -c aqua -n '__fish_seen_subcommand_from init' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_seen_subcommand_from policy' -a 'init' -d 'Create a policy file if it doesn\'t exist'
complete -c aqua -n '__fish_seen_subcommand_from init-policy' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'init-policy' -d '[Deprecated] Create a policy file if it doesn\'t exist'
complete -c aqua -n '__fish_seen_subcommand_from exec' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'exec' -d 'Execute tool'
complete -c aqua -n '__fish_seen_subcommand_from list' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'list' -d 'List packages in Registries'
complete -c aqua -n '__fish_seen_subcommand_from list' -f -l installed -s i -d 'List installed packages'
complete -c aqua -n '__fish_seen_subcommand_from list' -f -l all -s a -d 'List global configuration packages too'
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'generate-registry gr' -d 'Generate a registry\'s package configuration'
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l out-testdata -r -d 'A file path where the testdata is outputted'
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l cmd -r -d 'A list of commands joined with commas \',\''
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l generate-config -s c -r -d 'A configuration file path'
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l limit -s l -r -d 'the maximum number of versions'
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l deep -d 'This flag was deprecated and had no meaning from aqua v2.15.0. This flag will be removed in aqua v3.0.0. https://github.com/aquaproj/aqua/issues/2351'
complete -c aqua -n '__fish_seen_subcommand_from generate-registry gr' -f -l init -d 'Generate a configuration file'
complete -c aqua -n '__fish_seen_subcommand_from version' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'version' -d 'Show version'
complete -c aqua -n '__fish_seen_subcommand_from root-dir' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'root-dir' -d 'Output the aqua root directory (AQUA_ROOT_DIR)'
complete -c aqua -n '__fish_seen_subcommand_from help h' -f -l help -s h -d 'show help'
complete -r -c aqua -n '__fish_aqua_no_subcommand' -a 'help h' -d 'Shows a list of commands or help for one command'

View File

@@ -1,235 +0,0 @@
# fish completion for docker -*- shell-script -*-
function __docker_debug
set -l file "$BASH_COMP_DEBUG_FILE"
if test -n "$file"
echo "$argv" >> $file
end
end
function __docker_perform_completion
__docker_debug "Starting __docker_perform_completion"
# Extract all args except the last one
set -l args (commandline -opc)
# Extract the last arg and escape it in case it is a space
set -l lastArg (string escape -- (commandline -ct))
__docker_debug "args: $args"
__docker_debug "last arg: $lastArg"
# Disable ActiveHelp which is not supported for fish shell
set -l requestComp "DOCKER_ACTIVE_HELP=0 $args[1] __complete $args[2..-1] $lastArg"
__docker_debug "Calling $requestComp"
set -l results (eval $requestComp 2> /dev/null)
# Some programs may output extra empty lines after the directive.
# Let's ignore them or else it will break completion.
# Ref: https://github.com/spf13/cobra/issues/1279
for line in $results[-1..1]
if test (string trim -- $line) = ""
# Found an empty line, remove it
set results $results[1..-2]
else
# Found non-empty line, we have our proper output
break
end
end
set -l comps $results[1..-2]
set -l directiveLine $results[-1]
# For Fish, when completing a flag with an = (e.g., <program> -n=<TAB>)
# completions must be prefixed with the flag
set -l flagPrefix (string match -r -- '-.*=' "$lastArg")
__docker_debug "Comps: $comps"
__docker_debug "DirectiveLine: $directiveLine"
__docker_debug "flagPrefix: $flagPrefix"
for comp in $comps
printf "%s%s\n" "$flagPrefix" "$comp"
end
printf "%s\n" "$directiveLine"
end
# this function limits calls to __docker_perform_completion, by caching the result behind $__docker_perform_completion_once_result
function __docker_perform_completion_once
__docker_debug "Starting __docker_perform_completion_once"
if test -n "$__docker_perform_completion_once_result"
__docker_debug "Seems like a valid result already exists, skipping __docker_perform_completion"
return 0
end
set --global __docker_perform_completion_once_result (__docker_perform_completion)
if test -z "$__docker_perform_completion_once_result"
__docker_debug "No completions, probably due to a failure"
return 1
end
__docker_debug "Performed completions and set __docker_perform_completion_once_result"
return 0
end
# this function is used to clear the $__docker_perform_completion_once_result variable after completions are run
function __docker_clear_perform_completion_once_result
__docker_debug ""
__docker_debug "========= clearing previously set __docker_perform_completion_once_result variable =========="
set --erase __docker_perform_completion_once_result
__docker_debug "Successfully erased the variable __docker_perform_completion_once_result"
end
function __docker_requires_order_preservation
__docker_debug ""
__docker_debug "========= checking if order preservation is required =========="
__docker_perform_completion_once
if test -z "$__docker_perform_completion_once_result"
__docker_debug "Error determining if order preservation is required"
return 1
end
set -l directive (string sub --start 2 $__docker_perform_completion_once_result[-1])
__docker_debug "Directive is: $directive"
set -l shellCompDirectiveKeepOrder 32
set -l keeporder (math (math --scale 0 $directive / $shellCompDirectiveKeepOrder) % 2)
__docker_debug "Keeporder is: $keeporder"
if test $keeporder -ne 0
__docker_debug "This does require order preservation"
return 0
end
__docker_debug "This doesn't require order preservation"
return 1
end
# This function does two things:
# - Obtain the completions and store them in the global __docker_comp_results
# - Return false if file completion should be performed
function __docker_prepare_completions
__docker_debug ""
__docker_debug "========= starting completion logic =========="
# Start fresh
set --erase __docker_comp_results
__docker_perform_completion_once
__docker_debug "Completion results: $__docker_perform_completion_once_result"
if test -z "$__docker_perform_completion_once_result"
__docker_debug "No completion, probably due to a failure"
# Might as well do file completion, in case it helps
return 1
end
set -l directive (string sub --start 2 $__docker_perform_completion_once_result[-1])
set --global __docker_comp_results $__docker_perform_completion_once_result[1..-2]
__docker_debug "Completions are: $__docker_comp_results"
__docker_debug "Directive is: $directive"
set -l shellCompDirectiveError 1
set -l shellCompDirectiveNoSpace 2
set -l shellCompDirectiveNoFileComp 4
set -l shellCompDirectiveFilterFileExt 8
set -l shellCompDirectiveFilterDirs 16
if test -z "$directive"
set directive 0
end
set -l compErr (math (math --scale 0 $directive / $shellCompDirectiveError) % 2)
if test $compErr -eq 1
__docker_debug "Received error directive: aborting."
# Might as well do file completion, in case it helps
return 1
end
set -l filefilter (math (math --scale 0 $directive / $shellCompDirectiveFilterFileExt) % 2)
set -l dirfilter (math (math --scale 0 $directive / $shellCompDirectiveFilterDirs) % 2)
if test $filefilter -eq 1; or test $dirfilter -eq 1
__docker_debug "File extension filtering or directory filtering not supported"
# Do full file completion instead
return 1
end
set -l nospace (math (math --scale 0 $directive / $shellCompDirectiveNoSpace) % 2)
set -l nofiles (math (math --scale 0 $directive / $shellCompDirectiveNoFileComp) % 2)
__docker_debug "nospace: $nospace, nofiles: $nofiles"
# If we want to prevent a space, or if file completion is NOT disabled,
# we need to count the number of valid completions.
# To do so, we will filter on prefix as the completions we have received
# may not already be filtered so as to allow fish to match on different
# criteria than the prefix.
if test $nospace -ne 0; or test $nofiles -eq 0
set -l prefix (commandline -t | string escape --style=regex)
__docker_debug "prefix: $prefix"
set -l completions (string match -r -- "^$prefix.*" $__docker_comp_results)
set --global __docker_comp_results $completions
__docker_debug "Filtered completions are: $__docker_comp_results"
# Important not to quote the variable for count to work
set -l numComps (count $__docker_comp_results)
__docker_debug "numComps: $numComps"
if test $numComps -eq 1; and test $nospace -ne 0
# We must first split on \t to get rid of the descriptions to be
# able to check what the actual completion will be.
# We don't need descriptions anyway since there is only a single
# real completion which the shell will expand immediately.
set -l split (string split --max 1 \t $__docker_comp_results[1])
# Fish won't add a space if the completion ends with any
# of the following characters: @=/:.,
set -l lastChar (string sub -s -1 -- $split)
if not string match -r -q "[@=/:.,]" -- "$lastChar"
# In other cases, to support the "nospace" directive we trick the shell
# by outputting an extra, longer completion.
__docker_debug "Adding second completion to perform nospace directive"
set --global __docker_comp_results $split[1] $split[1].
__docker_debug "Completions are now: $__docker_comp_results"
end
end
if test $numComps -eq 0; and test $nofiles -eq 0
# To be consistent with bash and zsh, we only trigger file
# completion when there are no other completions
__docker_debug "Requesting file completion"
return 1
end
end
return 0
end
# Since Fish completions are only loaded once the user triggers them, we trigger them ourselves
# so we can properly delete any completions provided by another script.
# Only do this if the program can be found, or else fish may print some errors; besides,
# the existing completions will only be loaded if the program can be found.
if type -q "docker"
# The space after the program name is essential to trigger completion for the program
# and not completion of the program name itself.
# Also, we use '> /dev/null 2>&1' since '&>' is not supported in older versions of fish.
complete --do-complete "docker " > /dev/null 2>&1
end
# Remove any pre-existing completions for the program since we will be handling all of them.
complete -c docker -e
# this will get called after the two calls below and clear the $__docker_perform_completion_once_result global
complete -c docker -n '__docker_clear_perform_completion_once_result'
# The call to __docker_prepare_completions will setup __docker_comp_results
# which provides the program's completion choices.
# If this doesn't require order preservation, we don't use the -k flag
complete -c docker -n 'not __docker_requires_order_preservation && __docker_prepare_completions' -f -a '$__docker_comp_results'
# otherwise we use the -k flag
complete -k -c docker -n '__docker_requires_order_preservation && __docker_prepare_completions' -f -a '$__docker_comp_results'

View File

@@ -1,176 +0,0 @@
# fish completion for git-profile -*- shell-script -*-
function __git_profile_debug
set -l file "$BASH_COMP_DEBUG_FILE"
if test -n "$file"
echo "$argv" >> $file
end
end
function __git_profile_perform_completion
__git_profile_debug "Starting __git_profile_perform_completion"
# Extract all args except the last one
set -l args (commandline -opc)
# Extract the last arg and escape it in case it is a space
set -l lastArg (string escape -- (commandline -ct))
__git_profile_debug "args: $args"
__git_profile_debug "last arg: $lastArg"
set -l requestComp "$args[1] __complete $args[2..-1] $lastArg"
__git_profile_debug "Calling $requestComp"
set -l results (eval $requestComp 2> /dev/null)
# Some programs may output extra empty lines after the directive.
# Let's ignore them or else it will break completion.
# Ref: https://github.com/spf13/cobra/issues/1279
for line in $results[-1..1]
if test (string trim -- $line) = ""
# Found an empty line, remove it
set results $results[1..-2]
else
# Found non-empty line, we have our proper output
break
end
end
set -l comps $results[1..-2]
set -l directiveLine $results[-1]
# For Fish, when completing a flag with an = (e.g., <program> -n=<TAB>)
# completions must be prefixed with the flag
set -l flagPrefix (string match -r -- '-.*=' "$lastArg")
__git_profile_debug "Comps: $comps"
__git_profile_debug "DirectiveLine: $directiveLine"
__git_profile_debug "flagPrefix: $flagPrefix"
for comp in $comps
printf "%s%s\n" "$flagPrefix" "$comp"
end
printf "%s\n" "$directiveLine"
end
# This function does two things:
# - Obtain the completions and store them in the global __git_profile_comp_results
# - Return false if file completion should be performed
function __git_profile_prepare_completions
__git_profile_debug ""
__git_profile_debug "========= starting completion logic =========="
# Start fresh
set --erase __git_profile_comp_results
set -l results (__git_profile_perform_completion)
__git_profile_debug "Completion results: $results"
if test -z "$results"
__git_profile_debug "No completion, probably due to a failure"
# Might as well do file completion, in case it helps
return 1
end
set -l directive (string sub --start 2 $results[-1])
set --global __git_profile_comp_results $results[1..-2]
__git_profile_debug "Completions are: $__git_profile_comp_results"
__git_profile_debug "Directive is: $directive"
set -l shellCompDirectiveError 1
set -l shellCompDirectiveNoSpace 2
set -l shellCompDirectiveNoFileComp 4
set -l shellCompDirectiveFilterFileExt 8
set -l shellCompDirectiveFilterDirs 16
if test -z "$directive"
set directive 0
end
set -l compErr (math (math --scale 0 $directive / $shellCompDirectiveError) % 2)
if test $compErr -eq 1
__git_profile_debug "Received error directive: aborting."
# Might as well do file completion, in case it helps
return 1
end
set -l filefilter (math (math --scale 0 $directive / $shellCompDirectiveFilterFileExt) % 2)
set -l dirfilter (math (math --scale 0 $directive / $shellCompDirectiveFilterDirs) % 2)
if test $filefilter -eq 1; or test $dirfilter -eq 1
__git_profile_debug "File extension filtering or directory filtering not supported"
# Do full file completion instead
return 1
end
set -l nospace (math (math --scale 0 $directive / $shellCompDirectiveNoSpace) % 2)
set -l nofiles (math (math --scale 0 $directive / $shellCompDirectiveNoFileComp) % 2)
__git_profile_debug "nospace: $nospace, nofiles: $nofiles"
# If we want to prevent a space, or if file completion is NOT disabled,
# we need to count the number of valid completions.
# To do so, we will filter on prefix as the completions we have received
# may not already be filtered so as to allow fish to match on different
# criteria than the prefix.
if test $nospace -ne 0; or test $nofiles -eq 0
set -l prefix (commandline -t | string escape --style=regex)
__git_profile_debug "prefix: $prefix"
set -l completions (string match -r -- "^$prefix.*" $__git_profile_comp_results)
set --global __git_profile_comp_results $completions
__git_profile_debug "Filtered completions are: $__git_profile_comp_results"
# Important not to quote the variable for count to work
set -l numComps (count $__git_profile_comp_results)
__git_profile_debug "numComps: $numComps"
if test $numComps -eq 1; and test $nospace -ne 0
# We must first split on \t to get rid of the descriptions to be
# able to check what the actual completion will be.
# We don't need descriptions anyway since there is only a single
# real completion which the shell will expand immediately.
set -l split (string split --max 1 \t $__git_profile_comp_results[1])
# Fish won't add a space if the completion ends with any
# of the following characters: @=/:.,
set -l lastChar (string sub -s -1 -- $split)
if not string match -r -q "[@=/:.,]" -- "$lastChar"
# In other cases, to support the "nospace" directive we trick the shell
# by outputting an extra, longer completion.
__git_profile_debug "Adding second completion to perform nospace directive"
set --global __git_profile_comp_results $split[1] $split[1].
__git_profile_debug "Completions are now: $__git_profile_comp_results"
end
end
if test $numComps -eq 0; and test $nofiles -eq 0
# To be consistent with bash and zsh, we only trigger file
# completion when there are no other completions
__git_profile_debug "Requesting file completion"
return 1
end
end
return 0
end
# Since Fish completions are only loaded once the user triggers them, we trigger them ourselves
# so we can properly delete any completions provided by another script.
# Only do this if the program can be found, or else fish may print some errors; besides,
# the existing completions will only be loaded if the program can be found.
if type -q "git-profile"
# The space after the program name is essential to trigger completion for the program
# and not completion of the program name itself.
# Also, we use '> /dev/null 2>&1' since '&>' is not supported in older versions of fish.
complete --do-complete "git-profile " > /dev/null 2>&1
end
# Remove any pre-existing completions for the program since we will be handling all of them.
complete -c git-profile -e
# The call to __git_profile_prepare_completions will setup __git_profile_comp_results
# which provides the program's completion choices.
complete -c git-profile -n '__git_profile_prepare_completions' -f -a '$__git_profile_comp_results'

View File

@@ -0,0 +1,21 @@
complete --command nvm --exclusive
complete --command nvm --exclusive --long version --description "Print version"
complete --command nvm --exclusive --long help --description "Print help"
complete --command nvm --long silent --description "Suppress standard output"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments install --description "Download and activate the specified Node version"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments use --description "Activate the specified Node version in the current shell"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list --description "List installed Node versions"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments list-remote --description "List available Node versions to install"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments current --description "Print the currently-active Node version"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from install" --arguments "(
test -e $nvm_data && string split ' ' <$nvm_data/.index
)"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use" --arguments "(_nvm_list | string split ' ')"
complete --command nvm --exclusive --condition __fish_use_subcommand --arguments uninstall --description "Uninstall the specified Node version"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from uninstall" --arguments "(
_nvm_list | string split ' ' | string replace system ''
)"
complete --command nvm --exclusive --condition "__fish_seen_subcommand_from use uninstall" --arguments "(
set --query nvm_default_version && echo default
)"

View File

@@ -0,0 +1,87 @@
function __fish_eza_install --on-event fish-eza_install
set -Ux __FISH_EZA_BASE_ALIASES l ll lg le lt lc lo
set -Ux __FISH_EZA_EXPANDED a d i id aa ad ai aid aad aai aaid
set -Ux __FISH_EZA_EXPANDED_OPT_NAME LA LD LI LID LAA LAD LAI LAID LAAD LAAI LAAID
set -Ux __FISH_EZA_OPT_NAMES
set -Ux __FISH_EZA_ALIASES
set -Ux __FISH_EZA_SORT_OPTIONS name .name size ext mod old acc cr inode
set -Ux EZA_STANDARD_OPTIONS "--group" "--header" "--group-directories-first"
# Base aliases
set -Ux EZA_L_OPTIONS
set -Ux EZA_LL_OPTIONS "--long"
set -Ux EZA_LG_OPTIONS "--git" "--git-ignore" "--long"
set -Ux EZA_LE_OPTIONS "--extended" "--long"
set -Ux EZA_LT_OPTIONS "--tree" "--level"
set -Ux EZA_LC_OPTIONS "--across"
set -Ux EZA_LO_OPTIONS "--oneline"
# Extended aliases
set -Ux EZA_LI_OPTIONS "--icons"
set -Ux EZA_LD_OPTIONS "--only-dirs"
set -Ux EZA_LID_OPTIONS "--icons" "--only-dirs"
set -Ux EZA_LA_OPTIONS "--all" "--binary"
set -Ux EZA_LAD_OPTIONS "--all" "--binary" "--only-dirs"
set -Ux EZA_LAI_OPTIONS "--all" "--binary" "--icons"
set -Ux EZA_LAID_OPTIONS "--all" "--binary" "--icons" "--only-dirs"
set -Ux EZA_LAA_OPTIONS "--all" "--all" "--binary"
set -Ux EZA_LAAD_OPTIONS "--all" "--all" "--binary" "--only-dirs"
set -Ux EZA_LAAI_OPTIONS "--all" "--all" "--binary" "--icons"
set -Ux EZA_LAAID_OPTIONS "--all" "--all" "--binary" "--icons" "--only-dirs"
for a in $__FISH_EZA_BASE_ALIASES
set -l opt_name (string join '_' "EZA" (string upper $a) "OPTIONS")
if test $a = "ll"
alias --save "$a" "eza_git"
else
alias --save "$a" "eza \$EZA_STANDARD_OPTIONS \$$opt_name"
end
set -a __FISH_EZA_OPT_NAMES "$opt_name"
set -a __FISH_EZA_ALIASES "$a"
for i in (seq (count $__FISH_EZA_EXPANDED))
set -l name "$a$__FISH_EZA_EXPANDED[$i]"
# --tree is useless given --all --all
if test $name = "ltaa"; or test $name = "ltaac"
continue
end
set -l exp_opt_name (string join '_' "EZA" $__FISH_EZA_EXPANDED_OPT_NAME[$i] "OPTIONS")
if string match --quiet 'll*' "$name"
alias --save "$name" "eza_git \$$exp_opt_name"
else
alias --save "$name" "eza \$EZA_STANDARD_OPTIONS \$$exp_opt_name \$$opt_name"
end
set -a __FISH_EZA_ALIASES "$name"
if not contains $exp_opt_name $__FISH_EZA_OPT_NAMES
set -a __FISH_EZA_OPT_NAMES $exp_opt_name
end
end
end
end
function __fish_eza_update --on-event fish-eza_update
__fish_eza_uninstall
__fish_eza_install
end
function __fish_eza_uninstall --on-event fish-eza_uninstall
set --erase EZA_STANDARD_OPTIONS
for a in $__FISH_EZA_ALIASES
functions --erase $a
funcsave $a
end
for opt in $__FISH_EZA_OPT_NAMES
set --erase $opt
end
set --erase __FISH_EZA_BASE_ALIASES
set --erase __FISH_EZA_ALIASES
set --erase __FISH_EZA_EXPANDED
set --erase __FISH_EZA_EXPANDED_OPT_NAME
set --erase __FISH_EZA_OPT_NAMES
set --erase __FISH_EZA_SORT_OPTIONS
end

View File

@@ -0,0 +1,28 @@
set --query XDG_DATA_HOME || set --local XDG_DATA_HOME ~/.local/share
set --query nvm_mirror || set --global nvm_mirror https://nodejs.org/dist
set --query nvm_data || set --global nvm_data $XDG_DATA_HOME/nvm
function _nvm_install --on-event nvm_install
test ! -d $nvm_data && command mkdir -p $nvm_data
echo "Downloading the Node distribution index..." 2>/dev/null
_nvm_index_update
end
function _nvm_update --on-event nvm_update
set --query --universal nvm_data && set --erase --universal nvm_data
set --query --universal nvm_mirror && set --erase --universal nvm_mirror
set --query nvm_mirror || set --global nvm_mirror https://nodejs.org/dist
end
function _nvm_uninstall --on-event nvm_uninstall
command rm -rf $nvm_data
set --query nvm_current_version && _nvm_version_deactivate $nvm_current_version
set --names | string replace --filter --regex -- "^nvm" "set --erase nvm" | source
functions --erase (functions --all | string match --entire --regex -- "^_nvm_")
end
if status is-interactive && set --query nvm_default_version && ! set --query nvm_current_version
nvm use --silent $nvm_default_version
end

View File

@@ -0,0 +1,22 @@
function ___paths_plugin_set_colors
if not set -q ___paths_plugin_colors
set -Ux ___paths_plugin_colors 27e6ff 29e0ff 5cd8ff 77d0ff 8ac8ff 9cbfff afb5ff c5a7ff d99bfe ea8feb f684d5 fe7abd ff73a3 ff708a fa7070 ff708a ff73a3 fe7abd f684d5 ea8feb d99bfe c5a7ff afb5ff 9cbfff 8ac8ff 77d0ff 5cd8ff 29e0ff
end
return 0
end
function _paths_uninstall --on-event paths_uninstall
for i in ___paths_plugin_wrap_color ___paths_plugin_output ___paths_plugin_handle_found_item ___paths_plugin_handle_source ___paths_plugin_cycle_color
functions -e $i
end
set -e ___paths_plugin_colors
set -e ___paths_plugin_current_color
end
function _paths_install --on-event _paths_install
___paths_plugin_set_colors
end
function _paths_update --on-event paths_update
___paths_plugin_set_colors
end

View File

@@ -2,35 +2,12 @@
# │ fish/config.fish │ # │ fish/config.fish │
# ╰──────────────────────────────────────────────────────────╯ # ╰──────────────────────────────────────────────────────────╯
test -e "$HOME/.config/fish/alias.fish" &&
source "$HOME/.config/fish/alias.fish"
test -e "$HOME/.config/fish/exports.fish" && test -e "$HOME/.config/fish/exports.fish" &&
source "$HOME/.config/fish/exports.fish" source "$HOME/.config/fish/exports.fish"
test -e "$HOME/.dotfiles/config/fzf/key-bindings.fish" &&
source "$HOME/.dotfiles/config/fzf/key-bindings.fish"
if status is-interactive if status is-interactive
# Commands to run in interactive shell # Commands to run in interactive sessions can go here
# 1Password plugins if op command is available # Start tmux if not already running and not in SSH
type -q op; and test -e "$HOME/.config/op/plugins.sh" && open-tmux # defined in functions/open-tmux.fish
source "$HOME/.config/op/plugins.sh"
# version manager initializers
type -q rbenv; and source (rbenv init -|psub)
type -q pyenv; and source (pyenv init -|psub)
type -q pyenv; and source (pyenv virtualenv-init -|psub)
type -q goenv; and source (goenv init -|psub)
# type -q fnm; and fnm env --use-on-cd --shell fish | source
type -q load_nvm; and load_nvm > /dev/stderr
# Start tmux if not already running and not in SSH
open-tmux # defined in functions/open-tmux.fish
end end
# Added by LM Studio CLI (lms)
set -gx PATH $PATH $HOME/.lmstudio/bin
# vim: ft=fish ts=4 sw=4 et:

View File

@@ -1,38 +1,34 @@
#!/usr/bin/env fish #!/usr/bin/env fish
# XDG Base Directory Specification # Set XDG environment variables
set -q XDG_CONFIG_HOME; or set -x XDG_CONFIG_HOME "$HOME/.config" test -z "$XDG_CONFIG_HOME" && set -x XDG_CONFIG_HOME "$HOME/.config"
set -q XDG_DATA_HOME; or set -x XDG_DATA_HOME "$HOME/.local/share" test -z "$XDG_DATA_HOME" && set -x XDG_DATA_HOME "$HOME/.local/share"
set -q XDG_CACHE_HOME; or set -x XDG_CACHE_HOME "$HOME/.cache" test -z "$XDG_CACHE_HOME" && set -x XDG_CACHE_HOME "$HOME/.cache"
set -q XDG_STATE_HOME; or set -x XDG_STATE_HOME "$HOME/.local/state" test -z "$XDG_STATE_HOME" && set -x XDG_STATE_HOME "$HOME/.local/state"
set -q XDG_BIN_HOME; or set -x XDG_BIN_HOME "$HOME/.local/bin" test -z "$XDG_BIN_HOME" && set -x XDG_BIN_HOME "$HOME/.local/bin"
set -q XDG_RUNTIME_DIR; or set -x XDG_RUNTIME_DIR "$HOME/.local/run" test -z "$XDG_RUNTIME_DIR" && set -x XDG_RUNTIME_DIR "$HOME/.local/run"
# Dotfiles directory # Set dotfiles directory
set -q DOTFILES; or set -x DOTFILES "$HOME/.dotfiles" test -z "$DOTFILES" && set -x DOTFILES "$HOME/.dotfiles"
# Editor settings # Set other environment variables
set -q EDITOR; or set -x EDITOR nvim test -z "$EDITOR" && set -x EDITOR "nvim"
set -q VISUAL; or set -x VISUAL code test -z "$VISUAL" && set -x VISUAL "code"
set -q HOSTNAME; or set -x HOSTNAME (hostname -s) test -z "$HOSTNAME" && set -x HOSTNAME (hostname -s)
# Add local bin to path # Add local bin to path
fish_add_path "$XDG_BIN_HOME" fish_add_path "$XDG_BIN_HOME"
# Add cargo bin to path # Set npm environment variables
fish_add_path "$XDG_SHARE_HOME/cargo/bin" test -z "$NPM_CONFIG_PREFIX" && set -x NPM_CONFIG_PREFIX "$XDG_DATA_HOME/npm"
fish_add_path "$NPM_CONFIG_PREFIX/bin"
# NPM/NVM configuration # Set yarn environment variables
set -q NVM_DIR; or set -x NVM_DIR "$XDG_DATA_HOME/nvm" test -z "$YARN_GLOBAL_FOLDER" && set -x YARN_GLOBAL_FOLDER "$XDG_DATA_HOME/yarn"
fish_add_path "$NVM_DIR/bin"
fish_add_path "$XDG_CONFIG_HOME/nvm"
# Yarn configuration
set -q YARN_GLOBAL_FOLDER; or set -x YARN_GLOBAL_FOLDER "$XDG_DATA_HOME/yarn"
fish_add_path "$YARN_GLOBAL_FOLDER/bin" fish_add_path "$YARN_GLOBAL_FOLDER/bin"
# Mason configuration # Set mason environment variables
set -q MASON_HOME; or set -x MASON_HOME "$XDG_DATA_HOME/nvim/mason" test -z "$MASON_HOME" && set -x MASON_HOME "$XDG_DATA_HOME/nvim/mason"
fish_add_path "$MASON_HOME/bin" fish_add_path "$MASON_HOME/bin"
# Set Neovim environment variables # Set Neovim environment variables
@@ -46,142 +42,136 @@ test -z "$NVIM_SHADA_PATH" && set -x NVIM_SHADA_PATH "$NVIM_STATE/shada"
test -z "$NVIM_UNDO_PATH" && set -x NVIM_UNDO_PATH "$NVIM_STATE/undo" test -z "$NVIM_UNDO_PATH" && set -x NVIM_UNDO_PATH "$NVIM_STATE/undo"
# Ansible configuration # Ansible configuration
set -q ANSIBLE_HOME; or set -x ANSIBLE_HOME "$XDG_CONFIG_HOME/ansible" # https://docs.ansible.com/ansible/latest/reference_appendices/config.html
set -q ANSIBLE_CONFIG; or set -x ANSIBLE_CONFIG "$ANSIBLE_HOME/ansible.cfg" test -z "$ANSIBLE_HOME" && set -x ANSIBLE_HOME "$XDG_CONFIG_HOME/ansible"
set -q ANSIBLE_GALAXY_CACHE_DIR; or set -x ANSIBLE_GALAXY_CACHE_DIR "$XDG_CACHE_HOME/ansible/galaxy_cache" test -z "$ANSIBLE_CONFIG" && set -x ANSIBLE_CONFIG "$ANSIBLE_HOME/ansible.cfg"
test -z "$ANSIBLE_GALAXY_CACHE_DIR" && set -x ANSIBLE_GALAXY_CACHE_DIR "$XDG_CACHE_HOME/ansible/galaxy_cache"
x-dc "$ANSIBLE_HOME" x-dc "$ANSIBLE_HOME"
x-dc "$ANSIBLE_GALAXY_CACHE_DIR" x-dc "$ANSIBLE_GALAXY_CACHE_DIR"
# AWS configuration # AWS configuration
set -q AWS_CONFIG_FILE; or set -x AWS_CONFIG_FILE "$XDG_STATE_HOME/aws/config" test -z "$AWS_CONFIG_FILE" && set -x AWS_CONFIG_FILE "$XDG_STATE_HOME/aws/config"
set -q AWS_SHARED_CREDENTIALS_FILE; or set -x AWS_SHARED_CREDENTIALS_FILE "$XDG_STATE_HOME/aws/credentials" test -z "$AWS_SHARED_CREDENTIALS_FILE" && set -x AWS_SHARED_CREDENTIALS_FILE "$XDG_STATE_HOME/aws/credentials"
set -q AWS_SESSION_TOKEN; or set -x AWS_SESSION_TOKEN "$XDG_STATE_HOME/aws/session_token" test -z "$AWS_SESSION_TOKEN" && set -x AWS_SESSION_TOKEN "$XDG_STATE_HOME/aws/session_token"
set -q AWS_DATA_PATH; or set -x AWS_DATA_PATH "$XDG_DATA_HOME/aws" test -z "$AWS_DATA_PATH" && set -x AWS_DATA_PATH "$XDG_DATA_HOME/aws"
set -q AWS_DEFAULT_OUTPUT; or set -x AWS_DEFAULT_OUTPUT table test -z "$AWS_DEFAULT_OUTPUT" && set -x AWS_DEFAULT_OUTPUT "table"
set -q AWS_CONFIGURE_KEYS; or set -x AWS_CONFIGURE_KEYS true test -z "$AWS_CONFIGURE_KEYS" && set -x AWS_CONFIGURE_KEYS "true"
set -q AWS_CONFIGURE_SESSION; or set -x AWS_CONFIGURE_SESSION true test -z "$AWS_CONFIGURE_SESSION" && set -x AWS_CONFIGURE_SESSION "true"
set -q AWS_CONFIGURE_SESSION_DURATION; or set -x AWS_CONFIGURE_SESSION_DURATION 7200 test -z "$AWS_CONFIGURE_SESSION_DURATION" && set -x AWS_CONFIGURE_SESSION_DURATION "7200"
set -q AWS_CONFIGURE_SESSION_MFA; or set -x AWS_CONFIGURE_SESSION_MFA true test -z "$AWS_CONFIGURE_SESSION_MFA" && set -x AWS_CONFIGURE_SESSION_MFA "true"
set -q AWS_CONFIGURE_PROFILE; or set -x AWS_CONFIGURE_PROFILE true test -z "$AWS_CONFIGURE_PROFILE" && set -x AWS_CONFIGURE_PROFILE "true"
set -q AWS_CONFIGURE_PROMPT; or set -x AWS_CONFIGURE_PROMPT true test -z "$AWS_CONFIGURE_PROMPT" && set -x AWS_CONFIGURE_PROMPT "true"
set -q AWS_CONFIGURE_PROMPT_DEFAULT; or set -x AWS_CONFIGURE_PROMPT_DEFAULT true test -z "$AWS_CONFIGURE_PROMPT_DEFAULT" && set -x AWS_CONFIGURE_PROMPT_DEFAULT "true"
# Brew configuration # Brew configuration
set -q HOMEBREW_NO_ANALYTICS; or set -x HOMEBREW_NO_ANALYTICS true test -z "$HOMEBREW_NO_ANALYTICS" && set -x HOMEBREW_NO_ANALYTICS "true"
set -q HOMEBREW_NO_ENV_HINTS; or set -x HOMEBREW_NO_ENV_HINTS true test -z "$HOMEBREW_NO_ENV_HINTS" && set -x HOMEBREW_NO_ENV_HINTS "true"
set -q HOMEBREW_BUNDLE_MAS_SKIP; or set -x HOMEBREW_BUNDLE_MAS_SKIP true test -z "$HOMEBREW_BUNDLE_MAS_SKIP" && set -x HOMEBREW_BUNDLE_MAS_SKIP "true"
set -q HOMEBREW_BUNDLE_FILE; or set -x HOMEBREW_BUNDLE_FILE "$XDG_CONFIG_HOME/homebrew/Brewfile" test -z "$HOMEBREW_BUNDLE_FILE" && set -x HOMEBREW_BUNDLE_FILE "$XDG_CONFIG_HOME/homebrew/Brewfile"
# Composer configuration # Set composer environment variables
set -q COMPOSER_HOME; or set -x COMPOSER_HOME "$XDG_STATE_HOME/composer" test -z "$COMPOSER_HOME" && set -x COMPOSER_HOME "$XDG_STATE_HOME/composer"
set -q COMPOSER_BIN; or set -x COMPOSER_BIN "$COMPOSER_HOME/vendor/bin" test -z "$COMPOSER_BIN" && set -x COMPOSER_BIN "$COMPOSER_HOME/vendor/bin"
fish_add_path "$COMPOSER_BIN" fish_add_path "$COMPOSER_BIN"
# direnv configuration # direnv, https://direnv.net/
set -q DIRENV_LOG_FORMAT; or set -x DIRENV_LOG_FORMAT '' # https://direnv.net/docs/hook.html
# Set the hook to show the direnv message in a different color
# export DIRENV_LOG_FORMAT=$'\033[2mdirenv: %s\033[0m'
test -z "$DIRENV_LOG_FORMAT" && set -x DIRENV_LOG_FORMAT ''
# Docker configuration # docker, https://docs.docker.com/engine/reference/commandline/cli/
set -q DOCKER_CONFIG; or set -x DOCKER_CONFIG "$XDG_CONFIG_HOME/docker" test -z "$DOCKER_CONFIG" && set -x DOCKER_CONFIG "$XDG_CONFIG_HOME/docker"
x-dc "$DOCKER_CONFIG" x-dc "$DOCKER_CONFIG"
set -q DOCKER_HIDE_LEGACY_COMMANDS; or set -x DOCKER_HIDE_LEGACY_COMMANDS true test -z "$DOCKER_HIDE_LEGACY_COMMANDS" && set -x DOCKER_HIDE_LEGACY_COMMANDS "true"
set -q DOCKER_SCAN_SUGGEST; or set -x DOCKER_SCAN_SUGGEST false # Docke: Disable snyk ad
test -z "$DOCKER_SCAN_SUGGEST" && set -x DOCKER_SCAN_SUGGEST "false"
# FNM / Node.js configuration # fzf
set -q FNM_DIR; or set -x FNM_DIR "$XDG_DATA_HOME/fnm" test -z "$FZF_BASE" && set -x FZF_BASE "$XDG_CONFIG_HOME/fzf"
fish_add_path "$FNM_DIR" test -z "$FZF_DEFAULT_OPTS" && set -x FZF_DEFAULT_OPTS '--height 40% --tmux bottom,40% --layout reverse --border top'
set -q FNM_VERSION_FILE_STRATEGY; or set -x FNM_VERSION_FILE_STRATEGY recursive
set -q FNM_USE_ON_CD; or set -x FNM_USE_ON_CD true
set -q FNM_COREPACK_ENABLED; or set -x FNM_COREPACK_ENABLED true
set -q FNM_RESOLVE_ENGINES; or set -x FNM_RESOLVE_ENGINES true
# fzf configuration # GnuPG
set -q FZF_BASE; or set -x FZF_BASE "$XDG_CONFIG_HOME/fzf" # https://gnupg.org/documentation/manuals/gnupg/Invoking-GPG.html
set -q FZF_DEFAULT_OPTS; or set -x FZF_DEFAULT_OPTS '--height 40% --tmux bottom,40% --layout reverse --border top' test -z "$GNUPGHOME" && set -x GNUPGHOME "$XDG_DATA_HOME/gnupg"
# GnuPG configuration # Go
set -q GNUPGHOME; or set -x GNUPGHOME "$XDG_DATA_HOME/gnupg" test -z "$GOPATH" && set -x GOPATH "$XDG_DATA_HOME/go"
test -z "$GOBIN" && set -x GOBIN "$XDG_BIN_HOME"
fish_add_path "$GOBIN"
# Go configuration # NPM: Add npm packages to path
# set -q GOPATH; or set -x GOPATH "$XDG_DATA_HOME/go" if x-have node;
set -q GOBIN; or set -x GOBIN "$XDG_BIN_HOME" set -x NVM_NODE_BIN_DIR $(dirname $(which node))
fish_add_path "$NVM_NODE_BIN_DIR"
end
set -q GOENV_ROOT; or set -x GOENV_ROOT "$XDG_DATA_HOME/goenv" # 1Password
set -q GOENV_RC_FILE; or set -x GOENV_RC_FILE "$XDG_CONFIG_HOME/goenv/goenvrc.fish" test -z "$OP_CACHE" && set -x OP_CACHE "$XDG_STATE_HOME/1password"
# 1Password configuration # Python
set -q OP_CACHE; or set -x OP_CACHE "$XDG_STATE_HOME/1password" test -z "$WORKON_HOME" && set -x WORKON_HOME "$XDG_DATA_HOME/virtualenvs"
test -z "$PYENV_ROOT" && set -x PYENV_ROOT "$XDG_DATA_HOME/pyenv"
# Python configuration
set -q WORKON_HOME; or set -x WORKON_HOME "$XDG_DATA_HOME/virtualenvs"
set -q PYENV_ROOT; or set -x PYENV_ROOT "$XDG_DATA_HOME/pyenv"
fish_add_path "$PYENV_ROOT/bin" fish_add_path "$PYENV_ROOT/bin"
# Poetry configuration ## Set poetry environment variables
set -q POETRY_HOME; or set -x POETRY_HOME "$XDG_DATA_HOME/poetry" test -z "$POETRY_HOME" && set -x POETRY_HOME "$XDG_DATA_HOME/poetry"
fish_add_path "$POETRY_HOME/bin" fish_add_path "$POETRY_HOME/bin"
# Rust / cargo configuration # Rust / cargo
set -q CARGO_HOME; or set -x CARGO_HOME "$XDG_DATA_HOME/cargo" test -z "$CARGO_HOME" && set -x CARGO_HOME "$XDG_DATA_HOME/cargo"
set -q CARGO_BIN_HOME; or set -x CARGO_BIN_HOME "$XDG_BIN_HOME" test -z "$CARGO_BIN_HOME" && set -x CARGO_BIN_HOME "$XDG_BIN_HOME"
set -q RUSTUP_HOME; or set -x RUSTUP_HOME "$XDG_DATA_HOME/rustup" test -z "$RUSTUP_HOME" && set -x RUSTUP_HOME "$XDG_DATA_HOME/rustup"
set -x RUST_WITHOUT "clippy,docs,rls" set -x RUST_WITHOUT "clippy,docs,rls"
fish_add_path "$CARGO_HOME/bin" fish_add_path "$CARGO_BIN_HOME"
fish_add_path "$XDG_SHARE_HOME/bob/nvim-bin" fish_add_path "$XDG_SHARE_HOME/bob/nvim-bin"
# screen configuration # screen
set -q SCREENRC; or set -x SCREENRC "$XDG_CONFIG_HOME/misc/screenrc" # https://www.gnu.org/software/screen/manual/screen.html
test -z "$SCREENRC" && set -x SCREENRC "$XDG_CONFIG_HOME/misc/screenrc"
# Sonarlint configuration # Sonarlint
set -q SONARLINT_HOME; or set -x SONARLINT_HOME "$XDG_DATA_HOME/sonarlint" test -z "$SONARLINT_HOME" && set -x SONARLINT_HOME "$XDG_DATA_HOME/sonarlint"
set -q SONARLINT_BIN; or set -x SONARLINT_BIN "$XDG_BIN_HOME" test -z "$SONARLINT_BIN" && set -x SONARLINT_BIN "$XDG_BIN_HOME"
set -q SONARLINT_USER_HOME; or set -x SONARLINT_USER_HOME "$XDG_DATA_HOME/sonarlint" test -z "$SONARLINT_USER_HOME" && set -x SONARLINT_USER_HOME "$XDG_DATA_HOME/sonarlint"
# Terraform configuration # Terraform
set -q TF_DATA_DIR; or set -x TF_DATA_DIR "$XDG_STATE_HOME/terraform" test -z "$TF_DATA_DIR" && set -x TF_DATA_DIR "$XDG_STATE_HOME/terraform"
set -q TF_CLI_CONFIG_FILE; or set -x TF_CLI_CONFIG_FILE "$XDG_CONFIG_HOME/terraform/terraformrc" test -z "$TF_CLI_CONFIG_FILE" && set -x TF_CLI_CONFIG_FILE "$XDG_CONFIG_HOME/terraform/terraformrc"
set -q TF_PLUGIN_CACHE_DIR; or set -x TF_PLUGIN_CACHE_DIR "$XDG_CACHE_HOME/terraform/plugin-cache" test -z "$TF_PLUGIN_CACHE_DIR" && set -x TF_PLUGIN_CACHE_DIR "$XDG_CACHE_HOME/terraform/plugin-cache"
# tmux configuration # tmux
set -q TMUX_TMPDIR; or set -x TMUX_TMPDIR "$XDG_STATE_HOME/tmux" # https://tmux.github.io/
set -q TMUX_CONF_DIR; or set -x TMUX_CONF_DIR "$XDG_CONFIG_HOME/tmux" test -z "$TMUX_TMPDIR" && set -x TMUX_TMPDIR "$XDG_STATE_HOME/tmux"
set -q TMUX_PLUGINS; or set -x TMUX_PLUGINS "$TMUX_CONF_DIR/plugins" test -z "$TMUX_CONF_DIR" && set -x TMUX_CONF_DIR "$XDG_CONFIG_HOME/tmux"
set -q TMUX_CONF; or set -x TMUX_CONF "$TMUX_CONF_DIR/tmux.conf" test -z "$TMUX_PLUGINS" && set -x TMUX_PLUGINS "$TMUX_CONF_DIR/plugins"
set -q TMUX_PLUGIN_MANAGER_PATH; or set -x TMUX_PLUGIN_MANAGER_PATH "$TMUX_PLUGINS" test -z "$TMUX_CONF" && set -x TMUX_CONF "$TMUX_CONF_DIR/tmux.conf"
test -z "$TMUX_PLUGIN_MANAGER_PATH" && set -x TMUX_PLUGIN_MANAGER_PATH "$TMUX_PLUGINS"
# Source tmux theme activation script for Fish shell # tms
if test -f "$DOTFILES/config/tmux/theme-activate.fish" # https://github.com/jrmoulton/tmux-sessionizer
source "$DOTFILES/config/tmux/theme-activate.fish" test -z "$TMS_CONFIG_FILE" && set -x TMS_CONFIG_FILE "$XDG_CONFIG_HOME/tms/config.toml"
end
# tms configuration # wakatime
set -q TMS_CONFIG_FILE; or set -x TMS_CONFIG_FILE "$XDG_CONFIG_HOME/tms/config.toml" # https://github.com/wakatime/wakatime-cli
test -z "$WAKATIME_HOME" && set -x WAKATIME_HOME "$XDG_STATE_HOME/wakatime"
# wakatime configuration
set -q WAKATIME_HOME; or set -x WAKATIME_HOME "$XDG_STATE_HOME/wakatime"
x-dc "$WAKATIME_HOME" x-dc "$WAKATIME_HOME"
# Miscellaneous configuration # misc
set -q CHEAT_USE_FZF; or set -x CHEAT_USE_FZF true test -z "$CHEAT_USE_FZF" && set -x CHEAT_USE_FZF "true"
set -q SQLITE_HISTORY; or set -x SQLITE_HISTORY "$XDG_CACHE_HOME/sqlite/sqlite_history" test -z "$SQLITE_HISTORY" && set -x SQLITE_HISTORY "$XDG_CACHE_HOME/sqlite/sqlite_history"
# Source additional configuration files if they exist # Source exports-secret.fish if it exists
if test -f "$DOTFILES/config/fish/exports-secret.fish" if test -f "$DOTFILES/config/fish/exports-secret.fish"
source "$DOTFILES/config/fish/exports-secret.fish" source "$DOTFILES/config/fish/exports-secret.fish"
end end
# Source $DOTFILES/hosts/$HOSTNAME/config/fish/exports.fish if it exists
if test -f "$DOTFILES/hosts/$HOSTNAME/config/fish/exports.fish" if test -f "$DOTFILES/hosts/$HOSTNAME/config/fish/exports.fish"
source "$DOTFILES/hosts/$HOSTNAME/config/fish/exports.fish" source "$DOTFILES/hosts/$HOSTNAME/config/fish/exports.fish"
end end
# Source $DOTFILES/hosts/$HOSTNAME/config/fish/exports-secret.fish if it exists
if test -f "$DOTFILES/hosts/$HOSTNAME/config/fish/exports-secret.fish" if test -f "$DOTFILES/hosts/$HOSTNAME/config/fish/exports-secret.fish"
source "$DOTFILES/hosts/$HOSTNAME/config/fish/exports-secret.fish" source "$DOTFILES/hosts/$HOSTNAME/config/fish/exports-secret.fish"
end end
# Configure tide prompt
set -gx tide_prompt_transient_enabled true
set -gx tide_prompt_add_newline_before true
set -gx tide_prompt_min_cols 34
set -gx tide_prompt_pad_items false
set -gx tide_left_prompt_items context pwd git node python rustc java php pulumi ruby go gcloud kubectl distrobox toolbox terraform aws nix_shell crystal elixir zig newline character
set -gx tide_right_prompt_items status jobs direnv
set -gx tide_context_hostname_parts 1

View File

@@ -1,7 +1,11 @@
jorgebucaran/fisher jorgebucaran/fisher
jorgebucaran/nvm.fish
ilancosman/tide@v6 ilancosman/tide@v6
jethrokuan/z jethrokuan/z
halostatue/fish-macos@v7 halostatue/fish-macos@v7
ehfive/fish-bash2env
jgusta/paths
danhper/fish-ssh-agent danhper/fish-ssh-agent
halostatue/fish-brew@v3 halostatue/fish-brew@v3
plttn/fish-eza
edc/bass edc/bass

View File

@@ -0,0 +1,4 @@
function .c --wraps='cd ~/Code' --description 'alias .c=cd ~/Code'
cd ~/Code $argv
end

View File

@@ -0,0 +1,4 @@
function .d --wraps='cd ~/.dotfiles' --description 'alias .d=cd ~/.dotfiles'
cd ~/.dotfiles $argv
end

View File

@@ -0,0 +1,56 @@
#!/usr/bin/env bash
# Copyright (c) 2022 Huang-Huang Bao
#
# This software is released under the MIT License.
# https://opensource.org/licenses/MIT
# shellcheck disable=SC2076
set -e
disallowd_vars_arr=(
_
fish_kill_signal
fish_killring
fish_pid
history
hostname
PWD
pipestatus
SHLVL
status
status_generation
version
)
disallowd_vars=" ${disallowd_vars_arr[*]} "
fish_escape() {
value="${1//\\/\\\\}"
value="${value//\'/\\\'}"
echo "'${value}'"
}
flag_impure="$__FISH_BASH2ENV_IMPURE"
unset __FISH_BASH2ENV_IMPURE
if [[ -z "$flag_impure" ]]; then
old_env=" $(env -0 | tr '\0' ' ') "
fi
eval_status=
eval "$*" 1>&2 || eval_status=$?
env -0 | while IFS= read -rs -d $'\0' line; do
if [[ -z "$flag_impure" && "${old_env}" =~ " ${line} " ]]; then
continue
fi
name="${line%%=*}"
if [[ "${disallowd_vars}" =~ " ${name} " ]]; then
continue
fi
value="$(fish_escape "${line#*=}")"
echo "set -gx ${name} ${value}"
done
exit $eval_status

View File

@@ -0,0 +1,20 @@
function _nvm_index_update
test ! -d $nvm_data && command mkdir -p $nvm_data
set --local index $nvm_data/.index
if not command curl -q --location --silent $nvm_mirror/index.tab >$index.temp
command rm -f $index.temp
echo "nvm: Can't update index, host unavailable: \"$nvm_mirror\"" >&2
return 1
end
command awk -v OFS=\t '
/v0.9.12/ { exit } # Unsupported
NR > 1 {
print $1 (NR == 2 ? " latest" : $10 != "-" ? " lts/" tolower($10) : "")
}
' $index.temp >$index
command rm -f $index.temp
end

View File

@@ -0,0 +1,14 @@
function _nvm_list
set --local versions $nvm_data/*
set --query versions[1] &&
string match --entire --regex -- (
string replace --all -- $nvm_data/ "" $versions |
string match --regex -- "v\d.+" |
string escape --style=regex |
string join "|"
) <$nvm_data/.index
command --all node |
string match --quiet --invert --regex -- "^$nvm_data" && echo system
end

View File

@@ -0,0 +1,4 @@
function _nvm_version_activate --argument-names ver
set --global --export nvm_current_version $ver
set --prepend PATH $nvm_data/$ver/bin
end

View File

@@ -0,0 +1,5 @@
function _nvm_version_deactivate --argument-names ver
test "$nvm_current_version" = "$ver" && set --erase nvm_current_version
set --local index (contains --index -- $nvm_data/$ver/bin $PATH) &&
set --erase PATH[$index]
end

View File

@@ -0,0 +1,39 @@
# Copyright (c) 2022 Huang-Huang Bao
#
# This software is released under the MIT License.
# https://opensource.org/licenses/MIT
function bash2env -d "Import environment variables modified by given bash command"
argparse --stop-nonopt h/help i/impure -- $argv
or set argv
function _print_usage
echo 'Usage:' \
(set_color $fish_color_command)'bash2env' \
(set_color $fish_color_normal)'[-i/--impure]' \
(set_color $fish_color_param)"<bash command>"
end
if test -n "$_flag_help"
_print_usage
return
end
if test (count $argv) -eq 0
_print_usage
return 22
end
if test -n "$_flag_impure"
set _flag_impure 1
end
set -l DIR (dirname (status -f))
__FISH_BASH2ENV_IMPURE=$_flag_impure command \
bash $DIR/__bash2env.sh $argv | source
for code in $pipestatus
if test $code != 0
return $code
end
end
end

View File

@@ -0,0 +1,7 @@
function eza_git -d "Use exa and its git options if in a git repo"
if git rev-parse --is-inside-work-tree &>/dev/null
eza $EZA_STANDARD_OPTIONS {$EZA_LL_OPTIONS} --git $argv
else
eza $EZA_STANDARD_OPTIONS {$EZA_LL_OPTIONS} $argv
end
end

View File

@@ -0,0 +1,4 @@
function l --wraps='exa $EXA_STANDARD_OPTIONS $EXA_L_OPTIONS' --wraps='eza $EZA_STANDARD_OPTIONS $EZA_L_OPTIONS' --description 'alias l eza $EZA_STANDARD_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function la --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_L_OPTIONS' --description 'alias la eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function laa --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_L_OPTIONS' --description 'alias laa eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function laad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_L_OPTIONS' --description 'alias laad eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function laai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_L_OPTIONS' --description 'alias laai eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function laaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_L_OPTIONS' --description 'alias laaid eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_L_OPTIONS' --description 'alias lad eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_L_OPTIONS' --description 'alias lai eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function laid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_L_OPTIONS' --description 'alias laid eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lc --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LC_OPTIONS' --description 'alias lc eza $EZA_STANDARD_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lca --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LC_OPTIONS' --description 'alias lca eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcaa --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcaa eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcaad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcaad eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcaai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcaai eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcaaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcaaid eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcad eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcai eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcaid eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcd --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcd eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lci --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LC_OPTIONS' --description 'alias lci eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lcid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LC_OPTIONS' --description 'alias lcid eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LC_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LC_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function ld --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_L_OPTIONS' --description 'alias ld eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function le --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LE_OPTIONS' --description 'alias le eza $EZA_STANDARD_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lea --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LE_OPTIONS' --description 'alias lea eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leaa --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LE_OPTIONS' --description 'alias leaa eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leaad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LE_OPTIONS' --description 'alias leaad eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leaai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LE_OPTIONS' --description 'alias leaai eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leaaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LE_OPTIONS' --description 'alias leaaid eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lead --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LE_OPTIONS' --description 'alias lead eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LE_OPTIONS' --description 'alias leai eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LE_OPTIONS' --description 'alias leaid eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function led --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LE_OPTIONS' --description 'alias led eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lei --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LE_OPTIONS' --description 'alias lei eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function leid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LE_OPTIONS' --description 'alias leid eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LE_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LE_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lg --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LG_OPTIONS' --description 'alias lg eza $EZA_STANDARD_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lga --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LG_OPTIONS' --description 'alias lga eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LA_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgaa --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgaa eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAA_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgaad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgaad eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAD_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgaai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgaai eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAI_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgaaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgaaid eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAAID_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgad --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgad eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAD_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgai --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgai eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAI_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgaid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgaid eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LAID_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgd --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgd eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LD_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgi --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgi eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lgid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LG_OPTIONS' --description 'alias lgid eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LG_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_LG_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function li --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_L_OPTIONS' --description 'alias li eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LI_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function lid --wraps='eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_L_OPTIONS' --description 'alias lid eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_L_OPTIONS'
eza $EZA_STANDARD_OPTIONS $EZA_LID_OPTIONS $EZA_L_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function ll --wraps=eza_git --description 'alias ll eza_git'
eza_git $argv
end

View File

@@ -0,0 +1,4 @@
function lla --wraps='eza_git $EZA_LA_OPTIONS' --description 'alias lla eza_git $EZA_LA_OPTIONS'
eza_git $EZA_LA_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llaa --wraps='eza_git $EZA_LAA_OPTIONS' --description 'alias llaa eza_git $EZA_LAA_OPTIONS'
eza_git $EZA_LAA_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llaad --wraps='eza_git $EZA_LAAD_OPTIONS' --description 'alias llaad eza_git $EZA_LAAD_OPTIONS'
eza_git $EZA_LAAD_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llaai --wraps='eza_git $EZA_LAAI_OPTIONS' --description 'alias llaai eza_git $EZA_LAAI_OPTIONS'
eza_git $EZA_LAAI_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llaaid --wraps='eza_git $EZA_LAAID_OPTIONS' --description 'alias llaaid eza_git $EZA_LAAID_OPTIONS'
eza_git $EZA_LAAID_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llad --wraps='eza_git $EZA_LAD_OPTIONS' --description 'alias llad eza_git $EZA_LAD_OPTIONS'
eza_git $EZA_LAD_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llai --wraps='eza_git $EZA_LAI_OPTIONS' --description 'alias llai eza_git $EZA_LAI_OPTIONS'
eza_git $EZA_LAI_OPTIONS $argv
end

View File

@@ -0,0 +1,4 @@
function llaid --wraps='eza_git $EZA_LAID_OPTIONS' --description 'alias llaid eza_git $EZA_LAID_OPTIONS'
eza_git $EZA_LAID_OPTIONS $argv
end

Some files were not shown because too many files have changed in this diff Show More