Clean
This commit is contained in:
parent
e9bf3e7a17
commit
44ca3a9b5a
|
@ -1,233 +1,11 @@
|
||||||
source ~/.config/nushell/init.nu
|
source ~/.config/nushell/config/init.nu
|
||||||
|
source ~/.config/nushell/config/config.nu
|
||||||
# Change default config
|
source ~/.config/nushell/config/aliases.nu
|
||||||
$env.config.keybindings = (echo $env.config.keybindings | append {
|
source ~/.config/nushell/config/git.nu
|
||||||
name: newline_or_run_command_2
|
source ~/.config/nushell/config/update.nu
|
||||||
modifier: CONTROL
|
source ~/.config/nushell/config/gclone.nu
|
||||||
keycode: char_j
|
source ~/.config/nushell/config/pass.nu
|
||||||
mode: emacs
|
source ~/.config/nushell/config/docker.nu
|
||||||
event: {send: enter}
|
|
||||||
})
|
|
||||||
|
|
||||||
$env.config.show_banner = false
|
|
||||||
$env.config.use_grid_icons = false
|
|
||||||
$env.config.cursor_shape.emacs = block
|
|
||||||
$env.config.history.max_size = 1_000_000_000_000_000
|
|
||||||
$env.config.history.file_format = "sqlite"
|
|
||||||
$env.config.history.isolation = true
|
|
||||||
$env.config.filesize.metric = false
|
|
||||||
$env.config.table.mode = light
|
|
||||||
|
|
||||||
# remove extension shortcut
|
|
||||||
def rm-ext [] {
|
|
||||||
$in | path parse | udpate extension "" | get parent stem | str join "/"
|
|
||||||
}
|
|
||||||
|
|
||||||
# ls aliases
|
|
||||||
alias _ls = ls
|
|
||||||
|
|
||||||
def _ls_format_mode [mode: string] {
|
|
||||||
let chars = $mode | split chars
|
|
||||||
let r1 = if ($chars | get 0) == "r" { [(ansi yellow_bold), "r", (ansi reset)] } else { [(ansi grey), "-"] }
|
|
||||||
let w1 = if ($chars | get 1) == "w" { [(ansi red_bold), "w", (ansi reset)] } else { [(ansi grey), "-"] }
|
|
||||||
let x1 = if ($chars | get 2) == "x" { [(ansi green_bold), "x", (ansi reset)] } else { [(ansi grey), "-"] }
|
|
||||||
let r2 = if ($chars | get 3) == "r" { [(ansi yellow), "r", (ansi reset)] } else { [(ansi grey), "-"] }
|
|
||||||
let w2 = if ($chars | get 4) == "w" { [(ansi red), "w"] } else { [(ansi grey), "-"] }
|
|
||||||
let x2 = if ($chars | get 5) == "x" { [(ansi green), "x"] } else { [(ansi grey), "-"] }
|
|
||||||
let r3 = if ($chars | get 6) == "r" { [(ansi yellow), "r", (ansi reset)] } else { [(ansi grey), "-"] }
|
|
||||||
let w3 = if ($chars | get 7) == "w" { [(ansi red), "w"] } else { [(ansi grey), "-"] }
|
|
||||||
let x3 = if ($chars | get 8) == "x" { [(ansi green), "x"] } else { [(ansi grey), "-"] }
|
|
||||||
[$r1, $w1, $x1, $r2, $w2, $x2, $r3, $w3, $x3] | each { $in | str join } | str join
|
|
||||||
}
|
|
||||||
|
|
||||||
def l [dir?: string] {
|
|
||||||
let output = _ls (if $dir == null { "" } else { $dir }) | sort-by type name -i
|
|
||||||
if ($output | length) == 0 { "" | cat } else { $output | grid -c -s " " | cat }
|
|
||||||
}
|
|
||||||
|
|
||||||
def ls [dir?: string] {
|
|
||||||
let output = _ls (if $dir == null { "" } else { $dir }) | sort-by type name -i
|
|
||||||
if ($output | length) == 0 { "" | cat } else { $output | grid -c -s " " | cat }
|
|
||||||
}
|
|
||||||
|
|
||||||
def la [dir?: string] {
|
|
||||||
_ls -al (if $dir == null { "" } else { $dir })
|
|
||||||
| sort-by type name -i
|
|
||||||
| each { $in | update mode (_ls_format_mode $in.mode) }
|
|
||||||
| select mode name target user size modified
|
|
||||||
}
|
|
||||||
|
|
||||||
def ll [dir?: string] {
|
|
||||||
_ls -l (if $dir == null { "" } else { $dir })
|
|
||||||
| each { $in | update mode (_ls_format_mode $in.mode) }
|
|
||||||
| sort-by type name -i
|
|
||||||
| select mode name target user size modified
|
|
||||||
}
|
|
||||||
|
|
||||||
# cool du (don't display everything)
|
|
||||||
alias _du = du
|
|
||||||
def du [...args] {
|
|
||||||
let parsed_args = if ($args | is-empty) { ["*"] } else { $args }
|
|
||||||
$parsed_args | each { _du -a $in | select path apparent physical } | flatten
|
|
||||||
}
|
|
||||||
|
|
||||||
# cool df
|
|
||||||
def df [] {
|
|
||||||
^df -h
|
|
||||||
| str replace "Sys. de fichiers" "@"
|
|
||||||
| str replace "Monté sur" "@"
|
|
||||||
| detect columns
|
|
||||||
| rename "Sys. de fichiers" "Taille" "Utilisé" "Dispo" "Uti%" "Monté sur"
|
|
||||||
}
|
|
||||||
|
|
||||||
# easy markdown formamtter
|
|
||||||
def to-md [] {
|
|
||||||
let arg = $in
|
|
||||||
$env.config.table.mode = markdown;
|
|
||||||
echo $arg
|
|
||||||
}
|
|
||||||
|
|
||||||
# vim aliases
|
|
||||||
alias v = nvim
|
|
||||||
|
|
||||||
# git aliases
|
|
||||||
alias g = git
|
|
||||||
alias ga = git add
|
|
||||||
alias gaa = git add --all
|
|
||||||
alias gco = git checkout
|
|
||||||
alias gcb = git checkout -b
|
|
||||||
alias gc = git commit --verbose
|
|
||||||
alias gca = git commit --verbose --all
|
|
||||||
alias gd = git diff
|
|
||||||
alias glog = git log --oneline --decorate --graph
|
|
||||||
alias gl = git pull
|
|
||||||
alias gp = git push
|
|
||||||
alias gst = git status
|
|
||||||
alias gs = git status
|
|
||||||
def gpsup [] { git push --set-upstream origin (git rev-parse --abbrev-ref HEAD) }
|
|
||||||
|
|
||||||
# ssh completion
|
|
||||||
def _ssh_hosts [] {
|
|
||||||
open ~/.ssh/config
|
|
||||||
| lines
|
|
||||||
| find -ir "host "
|
|
||||||
| each { $in | split row " " | get 1 }
|
|
||||||
}
|
|
||||||
|
|
||||||
export extern "ssh" [
|
|
||||||
host?: string@_ssh_hosts
|
|
||||||
]
|
|
||||||
|
|
||||||
# update completion
|
|
||||||
def _update_args [] {
|
|
||||||
[
|
|
||||||
system
|
|
||||||
rust
|
|
||||||
wasm
|
|
||||||
npm
|
|
||||||
dotfiles
|
|
||||||
neovim
|
|
||||||
check
|
|
||||||
startup
|
|
||||||
last-update
|
|
||||||
postpone
|
|
||||||
force-unlock
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
def u [arg?: string@_update_args] {
|
|
||||||
if $arg == null {
|
|
||||||
^update
|
|
||||||
} else {
|
|
||||||
^update $arg
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# gclone aliases
|
|
||||||
def _gclone_dirs [] {
|
|
||||||
let slashes = ($env.GCLONE_PATH | split row "/" | length) + 2
|
|
||||||
open ([$env.GCLONE_PATH, .cdgcache] | path join)
|
|
||||||
| lines
|
|
||||||
| where { ($in | split row "/" | length) >= $slashes }
|
|
||||||
| each { $in | split row "/" | last }
|
|
||||||
| sort
|
|
||||||
| uniq
|
|
||||||
}
|
|
||||||
|
|
||||||
def-env cdg [key: string@_gclone_dirs] { cd (CLICOLOR_FORCE=1 pgd $key) }
|
|
||||||
|
|
||||||
# pass aliases / completion
|
|
||||||
def _pass_completion [] {
|
|
||||||
_ls ~/.password-store/**/* | each { |x|
|
|
||||||
if $x.type == "file" {
|
|
||||||
$x.name
|
|
||||||
| path parse
|
|
||||||
| update extension ""
|
|
||||||
| get parent stem
|
|
||||||
| str join "/"
|
|
||||||
} else {
|
|
||||||
$x.name + "/"
|
|
||||||
}
|
|
||||||
| split row '/'
|
|
||||||
| skip 4
|
|
||||||
| str join "/"
|
|
||||||
}
|
|
||||||
| prepend git
|
|
||||||
| prepend insert
|
|
||||||
}
|
|
||||||
|
|
||||||
export extern "pass" [ host?: string@_pass_completion ]
|
|
||||||
def p [ arg: string@_pass_completion ] { pass $arg }
|
|
||||||
def pc [ arg: string@_pass_completion ] { pass --clip $arg }
|
|
||||||
|
|
||||||
# docker aliases
|
|
||||||
alias ld = lazydocker
|
|
||||||
alias dc = docker-compose
|
|
||||||
alias dcb = docker-compose build
|
|
||||||
def dcp [] { docker-compose build; docker-compose push }
|
|
||||||
alias dcu = docker-compose up -d --build --remove-orphans
|
|
||||||
alias dcd = docker-compose down
|
|
||||||
def dcr [] { docker-compose down; docker-compose up -d --build --remove-orphans }
|
|
||||||
|
|
||||||
# kubernetes aliases
|
|
||||||
$env.KUBECONFIG = if ([$env.HOME, .kubes, current-cube] | path join | path exists) {
|
|
||||||
open ([$env.HOME, .kubes, current-cube] | path join)
|
|
||||||
} else {
|
|
||||||
""
|
|
||||||
}
|
|
||||||
|
|
||||||
def _kube_kubes [] {
|
|
||||||
_ls ~/.kubes | where type == dir | get name | path basename
|
|
||||||
}
|
|
||||||
|
|
||||||
def-env kube [name?: string@_kube_kubes] {
|
|
||||||
use assert
|
|
||||||
|
|
||||||
let kubes_path = [$env.HOME, .kubes] | path join
|
|
||||||
|
|
||||||
if $name == null {
|
|
||||||
rm ([$kubes_path, current-cube] | path join)
|
|
||||||
$env.KUBECONFIG = ""
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
let kube_config = [$kubes_path, $name, config] | path join
|
|
||||||
|
|
||||||
if not ($kube_config | path exists) {
|
|
||||||
error make {msg: ($kube_config + " does not exist")}
|
|
||||||
}
|
|
||||||
|
|
||||||
$kube_config | save -f ([$kubes_path, current-cube] | path join)
|
|
||||||
$env.KUBECONFIG = $kube_config
|
|
||||||
}
|
|
||||||
|
|
||||||
alias kns = k9s
|
|
||||||
|
|
||||||
# Useful aliases
|
|
||||||
alias :q = exit
|
|
||||||
alias pdf = evince
|
|
||||||
alias rg = rg -uu
|
|
||||||
def-env mkcd [dir: string] { mkdir $dir; cd $dir }
|
|
||||||
|
|
||||||
# Start tfetch
|
# Start tfetch
|
||||||
tfetch
|
tfetch
|
||||||
|
|
|
@ -0,0 +1,75 @@
|
||||||
|
# remove extension shortcut
|
||||||
|
def rm-ext [] {
|
||||||
|
$in | path parse | udpate extension "" | get parent stem | str join "/"
|
||||||
|
}
|
||||||
|
|
||||||
|
# ls aliases
|
||||||
|
alias _ls = ls
|
||||||
|
|
||||||
|
def _ls_format_mode [mode: string] {
|
||||||
|
let chars = $mode | split chars
|
||||||
|
let r1 = if ($chars | get 0) == "r" { [(ansi yellow_bold), "r", (ansi reset)] } else { [(ansi grey), "-"] }
|
||||||
|
let w1 = if ($chars | get 1) == "w" { [(ansi red_bold), "w", (ansi reset)] } else { [(ansi grey), "-"] }
|
||||||
|
let x1 = if ($chars | get 2) == "x" { [(ansi green_bold), "x", (ansi reset)] } else { [(ansi grey), "-"] }
|
||||||
|
let r2 = if ($chars | get 3) == "r" { [(ansi yellow), "r", (ansi reset)] } else { [(ansi grey), "-"] }
|
||||||
|
let w2 = if ($chars | get 4) == "w" { [(ansi red), "w"] } else { [(ansi grey), "-"] }
|
||||||
|
let x2 = if ($chars | get 5) == "x" { [(ansi green), "x"] } else { [(ansi grey), "-"] }
|
||||||
|
let r3 = if ($chars | get 6) == "r" { [(ansi yellow), "r", (ansi reset)] } else { [(ansi grey), "-"] }
|
||||||
|
let w3 = if ($chars | get 7) == "w" { [(ansi red), "w"] } else { [(ansi grey), "-"] }
|
||||||
|
let x3 = if ($chars | get 8) == "x" { [(ansi green), "x"] } else { [(ansi grey), "-"] }
|
||||||
|
[$r1, $w1, $x1, $r2, $w2, $x2, $r3, $w3, $x3] | each { $in | str join } | str join
|
||||||
|
}
|
||||||
|
|
||||||
|
def l [dir?: string] {
|
||||||
|
let output = _ls (if $dir == null { "" } else { $dir }) | sort-by type name -i
|
||||||
|
if ($output | length) == 0 { "" | cat } else { $output | grid -c -s " " | cat }
|
||||||
|
}
|
||||||
|
|
||||||
|
def ls [dir?: string] {
|
||||||
|
let output = _ls (if $dir == null { "" } else { $dir }) | sort-by type name -i
|
||||||
|
if ($output | length) == 0 { "" | cat } else { $output | grid -c -s " " | cat }
|
||||||
|
}
|
||||||
|
|
||||||
|
def la [dir?: string] {
|
||||||
|
_ls -al (if $dir == null { "" } else { $dir })
|
||||||
|
| sort-by type name -i
|
||||||
|
| each { $in | update mode (_ls_format_mode $in.mode) }
|
||||||
|
| select mode name target user size modified
|
||||||
|
}
|
||||||
|
|
||||||
|
def ll [dir?: string] {
|
||||||
|
_ls -l (if $dir == null { "" } else { $dir })
|
||||||
|
| each { $in | update mode (_ls_format_mode $in.mode) }
|
||||||
|
| sort-by type name -i
|
||||||
|
| select mode name target user size modified
|
||||||
|
}
|
||||||
|
|
||||||
|
# cool du (don't display everything)
|
||||||
|
alias _du = du
|
||||||
|
def du [...args] {
|
||||||
|
let parsed_args = if ($args | is-empty) { ["*"] } else { $args }
|
||||||
|
$parsed_args | each { _du -a $in | select path apparent physical } | flatten
|
||||||
|
}
|
||||||
|
|
||||||
|
# cool df
|
||||||
|
def df [] {
|
||||||
|
^df -h
|
||||||
|
| str replace "Sys. de fichiers" "@"
|
||||||
|
| str replace "Monté sur" "@"
|
||||||
|
| detect columns
|
||||||
|
| rename "Sys. de fichiers" "Taille" "Utilisé" "Dispo" "Uti%" "Monté sur"
|
||||||
|
}
|
||||||
|
|
||||||
|
# easy markdown formamtter
|
||||||
|
def to-md [] {
|
||||||
|
let arg = $in
|
||||||
|
$env.config.table.mode = markdown;
|
||||||
|
echo $arg
|
||||||
|
}
|
||||||
|
|
||||||
|
# Useful aliases
|
||||||
|
alias v = nvim
|
||||||
|
alias :q = exit
|
||||||
|
alias pdf = evince
|
||||||
|
alias rg = rg -uu
|
||||||
|
def-env mkcd [dir: string] { mkdir $dir; cd $dir }
|
|
@ -0,0 +1,17 @@
|
||||||
|
# Change default config
|
||||||
|
$env.config.keybindings = (echo $env.config.keybindings | append {
|
||||||
|
name: newline_or_run_command_2
|
||||||
|
modifier: CONTROL
|
||||||
|
keycode: char_j
|
||||||
|
mode: emacs
|
||||||
|
event: {send: enter}
|
||||||
|
})
|
||||||
|
|
||||||
|
$env.config.show_banner = false
|
||||||
|
$env.config.use_grid_icons = false
|
||||||
|
$env.config.cursor_shape.emacs = block
|
||||||
|
$env.config.history.max_size = 1_000_000_000_000_000
|
||||||
|
$env.config.history.file_format = "sqlite"
|
||||||
|
$env.config.history.isolation = true
|
||||||
|
$env.config.filesize.metric = false
|
||||||
|
$env.config.table.mode = light
|
|
@ -0,0 +1,43 @@
|
||||||
|
# docker aliases
|
||||||
|
alias ld = lazydocker
|
||||||
|
alias dc = docker-compose
|
||||||
|
alias dcb = docker-compose build
|
||||||
|
def dcp [] { docker-compose build; docker-compose push }
|
||||||
|
alias dcu = docker-compose up -d --build --remove-orphans
|
||||||
|
alias dcd = docker-compose down
|
||||||
|
def dcr [] { docker-compose down; docker-compose up -d --build --remove-orphans }
|
||||||
|
|
||||||
|
# kubernetes aliases
|
||||||
|
$env.KUBECONFIG = if ([$env.HOME, .kubes, current-cube] | path join | path exists) {
|
||||||
|
open ([$env.HOME, .kubes, current-cube] | path join)
|
||||||
|
} else {
|
||||||
|
""
|
||||||
|
}
|
||||||
|
|
||||||
|
def _kube_kubes [] {
|
||||||
|
_ls ~/.kubes | where type == dir | get name | path basename
|
||||||
|
}
|
||||||
|
|
||||||
|
def-env kube [name?: string@_kube_kubes] {
|
||||||
|
use assert
|
||||||
|
|
||||||
|
let kubes_path = [$env.HOME, .kubes] | path join
|
||||||
|
|
||||||
|
if $name == null {
|
||||||
|
rm ([$kubes_path, current-cube] | path join)
|
||||||
|
$env.KUBECONFIG = ""
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
let kube_config = [$kubes_path, $name, config] | path join
|
||||||
|
|
||||||
|
if not ($kube_config | path exists) {
|
||||||
|
error make {msg: ($kube_config + " does not exist")}
|
||||||
|
}
|
||||||
|
|
||||||
|
$kube_config | save -f ([$kubes_path, current-cube] | path join)
|
||||||
|
$env.KUBECONFIG = $kube_config
|
||||||
|
}
|
||||||
|
|
||||||
|
alias kns = k9s
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
# gclone aliases
|
||||||
|
def _gclone_dirs [] {
|
||||||
|
let slashes = ($env.GCLONE_PATH | split row "/" | length) + 2
|
||||||
|
open ([$env.GCLONE_PATH, .cdgcache] | path join)
|
||||||
|
| lines
|
||||||
|
| where { ($in | split row "/" | length) >= $slashes }
|
||||||
|
| each { $in | split row "/" | last }
|
||||||
|
| sort
|
||||||
|
| uniq
|
||||||
|
}
|
||||||
|
|
||||||
|
def-env cdg [key: string@_gclone_dirs] { cd (CLICOLOR_FORCE=1 pgd $key) }
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
# git aliases
|
||||||
|
alias g = git
|
||||||
|
alias ga = git add
|
||||||
|
alias gaa = git add --all
|
||||||
|
alias gco = git checkout
|
||||||
|
alias gcb = git checkout -b
|
||||||
|
alias gc = git commit --verbose
|
||||||
|
alias gca = git commit --verbose --all
|
||||||
|
alias gd = git diff
|
||||||
|
alias glog = git log --oneline --decorate --graph
|
||||||
|
alias gl = git pull
|
||||||
|
alias gp = git push
|
||||||
|
alias gst = git status
|
||||||
|
alias gs = git status
|
||||||
|
def gpsup [] { git push --set-upstream origin (git rev-parse --abbrev-ref HEAD) }
|
|
@ -0,0 +1,24 @@
|
||||||
|
# pass aliases / completion
|
||||||
|
def _pass_completion [] {
|
||||||
|
_ls ~/.password-store/**/* | each { |x|
|
||||||
|
if $x.type == "file" {
|
||||||
|
$x.name
|
||||||
|
| path parse
|
||||||
|
| update extension ""
|
||||||
|
| get parent stem
|
||||||
|
| str join "/"
|
||||||
|
} else {
|
||||||
|
$x.name + "/"
|
||||||
|
}
|
||||||
|
| split row '/'
|
||||||
|
| skip 4
|
||||||
|
| str join "/"
|
||||||
|
}
|
||||||
|
| prepend git
|
||||||
|
| prepend insert
|
||||||
|
}
|
||||||
|
|
||||||
|
export extern "pass" [ host?: string@_pass_completion ]
|
||||||
|
def p [ arg: string@_pass_completion ] { pass $arg }
|
||||||
|
def pc [ arg: string@_pass_completion ] { pass --clip $arg }
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
# ssh completion
|
||||||
|
def _ssh_hosts [] {
|
||||||
|
open ~/.ssh/config
|
||||||
|
| lines
|
||||||
|
| find -ir "host "
|
||||||
|
| each { $in | split row " " | get 1 }
|
||||||
|
}
|
||||||
|
|
||||||
|
export extern "ssh" [
|
||||||
|
host?: string@_ssh_hosts
|
||||||
|
]
|
|
@ -0,0 +1,24 @@
|
||||||
|
# update completion
|
||||||
|
def _update_args [] {
|
||||||
|
[
|
||||||
|
system
|
||||||
|
rust
|
||||||
|
wasm
|
||||||
|
npm
|
||||||
|
dotfiles
|
||||||
|
neovim
|
||||||
|
check
|
||||||
|
startup
|
||||||
|
last-update
|
||||||
|
postpone
|
||||||
|
force-unlock
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
def u [arg?: string@_update_args] {
|
||||||
|
if $arg == null {
|
||||||
|
^update
|
||||||
|
} else {
|
||||||
|
^update $arg
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue