diff --git a/codium/.config/VSCodium/User/settings.json b/.config/VSCodium/User/settings.json similarity index 100% rename from codium/.config/VSCodium/User/settings.json rename to .config/VSCodium/User/settings.json diff --git a/nvim/.config/nvim/lua/custom/chadrc.lua b/.config/nvim/lua/custom/chadrc.lua similarity index 100% rename from nvim/.config/nvim/lua/custom/chadrc.lua rename to .config/nvim/lua/custom/chadrc.lua diff --git a/nvim/.config/nvim/lua/custom/configs/formatter.lua b/.config/nvim/lua/custom/configs/formatter.lua similarity index 100% rename from nvim/.config/nvim/lua/custom/configs/formatter.lua rename to .config/nvim/lua/custom/configs/formatter.lua diff --git a/nvim/.config/nvim/lua/custom/configs/lspconfig.lua b/.config/nvim/lua/custom/configs/lspconfig.lua similarity index 93% rename from nvim/.config/nvim/lua/custom/configs/lspconfig.lua rename to .config/nvim/lua/custom/configs/lspconfig.lua index 508f828..03d474e 100644 --- a/nvim/.config/nvim/lua/custom/configs/lspconfig.lua +++ b/.config/nvim/lua/custom/configs/lspconfig.lua @@ -34,9 +34,9 @@ lspconfig.pyright.setup({ capabilities = capabilities, filetypes = {"python"}, }) - lspconfig.powershell_es.setup({ - bundle_path = vim.fn.stdpath("data") .. "/mason/packages/powershell-editor-services/" + bundle_path = vim.fn.stdpath("data") .. "/mason/packages/powershell-editor-services/", + settings = { powershell = { codeFormatting = { Preset = 'OTBS' } } } }) lspconfig.bashls.setup({}) diff --git a/nvim/.config/nvim/lua/custom/configs/null-ls.lua b/.config/nvim/lua/custom/configs/null-ls.lua similarity index 100% rename from nvim/.config/nvim/lua/custom/configs/null-ls.lua rename to .config/nvim/lua/custom/configs/null-ls.lua diff --git a/nvim/.config/nvim/lua/custom/configs/rust-tools.lua b/.config/nvim/lua/custom/configs/rust-tools.lua similarity index 100% rename from nvim/.config/nvim/lua/custom/configs/rust-tools.lua rename to .config/nvim/lua/custom/configs/rust-tools.lua diff --git a/.config/nvim/lua/custom/configs/treesitter.lua b/.config/nvim/lua/custom/configs/treesitter.lua new file mode 100644 index 0000000..634da2c --- /dev/null +++ b/.config/nvim/lua/custom/configs/treesitter.lua @@ -0,0 +1,11 @@ +local parser_config = require 'nvim-treesitter.parsers'.get_parser_configs() +--parser_config.powershell_es = { +-- install_info = { +-- url = "/home/user/.local/share/tree-sitter-PowerShell", +-- files = { "src/parser.c" }, +-- generate_requires_npm = false, +-- requires_generate_from_grammar = false, +-- }, +-- filetype = "ps1", +--} +return parser_config diff --git a/nvim/.config/nvim/lua/custom/init.lua b/.config/nvim/lua/custom/init.lua similarity index 100% rename from nvim/.config/nvim/lua/custom/init.lua rename to .config/nvim/lua/custom/init.lua diff --git a/nvim/.config/nvim/lua/custom/mappings.lua b/.config/nvim/lua/custom/mappings.lua similarity index 100% rename from nvim/.config/nvim/lua/custom/mappings.lua rename to .config/nvim/lua/custom/mappings.lua diff --git a/nvim/.config/nvim/lua/custom/plugins.lua b/.config/nvim/lua/custom/plugins.lua similarity index 97% rename from nvim/.config/nvim/lua/custom/plugins.lua rename to .config/nvim/lua/custom/plugins.lua index 3fea245..888c496 100644 --- a/nvim/.config/nvim/lua/custom/plugins.lua +++ b/.config/nvim/lua/custom/plugins.lua @@ -156,6 +156,8 @@ local plugins = { "nvim-treesitter/nvim-treesitter", opts = function() local opts = require "plugins.configs.treesitter" + require "custom.configs.treesitter" + require'nvim-treesitter.install'.prefer_git = true opts.ensure_installed = { "lua", "javascript", diff --git a/powershell/.config/powershell/Microsoft.PowerShell_profile.ps1 b/.config/powershell/Microsoft.PowerShell_profile.ps1 similarity index 98% rename from powershell/.config/powershell/Microsoft.PowerShell_profile.ps1 rename to .config/powershell/Microsoft.PowerShell_profile.ps1 index 69b0c17..62f9793 100644 --- a/powershell/.config/powershell/Microsoft.PowerShell_profile.ps1 +++ b/.config/powershell/Microsoft.PowerShell_profile.ps1 @@ -1,4 +1,3 @@ -clear-host oh-my-posh init pwsh --config ~/.config/powershell/config.json | Invoke-Expression Set-PSReadLineOption -PredictionSource History diff --git a/powershell/.config/powershell/config.json b/.config/powershell/config.json similarity index 100% rename from powershell/.config/powershell/config.json rename to .config/powershell/config.json diff --git a/terminator/.config/terminator/config b/.config/terminator/config similarity index 100% rename from terminator/.config/terminator/config rename to .config/terminator/config diff --git a/.config/tmux/plugins/catppuccin-tmux b/.config/tmux/plugins/catppuccin-tmux new file mode 160000 index 0000000..b4e0715 --- /dev/null +++ b/.config/tmux/plugins/catppuccin-tmux @@ -0,0 +1 @@ +Subproject commit b4e0715356f820fc72ea8e8baf34f0f60e891718 diff --git a/.config/tmux/plugins/tmux-sensible b/.config/tmux/plugins/tmux-sensible new file mode 160000 index 0000000..25cb91f --- /dev/null +++ b/.config/tmux/plugins/tmux-sensible @@ -0,0 +1 @@ +Subproject commit 25cb91f42d020f675bb0a2ce3fbd3a5d96119efa diff --git a/.config/tmux/plugins/tmux-yank b/.config/tmux/plugins/tmux-yank new file mode 160000 index 0000000..acfd36e --- /dev/null +++ b/.config/tmux/plugins/tmux-yank @@ -0,0 +1 @@ +Subproject commit acfd36e4fcba99f8310a7dfb432111c242fe7392 diff --git a/.config/tmux/plugins/tpm b/.config/tmux/plugins/tpm new file mode 160000 index 0000000..99469c4 --- /dev/null +++ b/.config/tmux/plugins/tpm @@ -0,0 +1 @@ +Subproject commit 99469c4a9b1ccf77fade25842dc7bafbc8ce9946 diff --git a/.config/tmux/plugins/vim-tmux-navigator b/.config/tmux/plugins/vim-tmux-navigator new file mode 160000 index 0000000..38b1d04 --- /dev/null +++ b/.config/tmux/plugins/vim-tmux-navigator @@ -0,0 +1 @@ +Subproject commit 38b1d0402c4600543281dc85b3f51884205674b6 diff --git a/.config/tmux/tmux.conf b/.config/tmux/tmux.conf new file mode 100644 index 0000000..560e6a8 --- /dev/null +++ b/.config/tmux/tmux.conf @@ -0,0 +1,54 @@ +set-option -sa terminal-overrides ",xterm*:Tc" +set -g mouse on +set -g set-clipboard on +set -g @yank_selection_mouse 'clipboard' +set -g @yank_selection 'clipboard' +unbind C-b +set -g prefix C-Space +bind C-Space send-prefix + +# Vim style pane selection +bind h select-pane -L +bind j select-pane -D +bind k select-pane -U +bind l select-pane -R + +# Start windows and panes at 1, not 0 +set -g base-index 1 +set -g pane-base-index 1 +set-window-option -g pane-base-index 1 +set-option -g renumber-windows on + +# Use Alt-arrow keys without prefix key to switch panes +bind -n M-Left select-pane -L +bind -n M-Right select-pane -R +bind -n M-Up select-pane -U +bind -n M-Down select-pane -D + +# Shift arrow to switch windows +bind -n S-Left previous-window +bind -n S-Right next-window + +# Shift Alt vim keys to switch windows +bind -n M-H previous-window +bind -n M-L next-window + +set -g @catppuccin_flavour 'mocha' + +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' +set -g @plugin 'christoomey/vim-tmux-navigator' +set -g @plugin 'dreamsofcode-io/catppuccin-tmux' +set -g @plugin 'tmux-plugins/tmux-yank' + +# set vi-mode +set-window-option -g mode-keys vi +# keybindings +bind-key -T copy-mode-vi v send-keys -X begin-selection +bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle +bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel "xsel -i --clipboard" + +bind '"' split-window -v -c "#{pane_current_path}" +bind % split-window -h -c "#{pane_current_path}" + +run '~/.tmux/plugins/tpm/tpm' diff --git a/zsh/.fzf.completion.zsh b/.fzf.completion.zsh similarity index 100% rename from zsh/.fzf.completion.zsh rename to .fzf.completion.zsh diff --git a/zsh/.fzf.key-bindings.zsh b/.fzf.key-bindings.zsh similarity index 100% rename from zsh/.fzf.key-bindings.zsh rename to .fzf.key-bindings.zsh diff --git a/zsh/.p10k.zsh b/.p10k.zsh similarity index 100% rename from zsh/.p10k.zsh rename to .p10k.zsh diff --git a/zsh/.zshrc b/.zshrc similarity index 96% rename from zsh/.zshrc rename to .zshrc index ec0db68..a119371 100644 --- a/zsh/.zshrc +++ b/.zshrc @@ -15,49 +15,9 @@ alias k=kubectl alias ls='ls --color' alias vim='nvim' alias c='clear' +alias pwsh='pwsh -NoLogo' -source ~/.fzf.completion.zsh -source ~/.fzf.key-bindings.zsh - -unlockbw () -{ - export BW_SESSION="$(bw unlock --raw)" - export GITLAB_TOKEN="$(bw get password cli-gitlab)" - export VAULT_UNSEAL="$(bw get password cli-vault-unseal)" - export VAULT_TOKEN="$(bw get password vault.internal.durp.info)" -} -lockbw () -{ - unset BW_SESSION - unset GITLAB_TOKEN - unset VAULT_UNSEAL - unset VAULT_TOKEN -} - -unlockvault() { - local POD_NAME="vault-0" - local NAMESPACE="vault" - local UNSEAL_KEY=$VAULT_UNSEAL - local PASSWORD=$VAULT_TOKEN - local K8S_API_SERVER=$(kubectl exec -it $POD_NAME -n $NAMESPACE -- printenv | grep KUBERNETES_SERVICE_HOST | cut -d "=" -f2) - local JWT=$(kubectl exec -it $POD_NAME -n $NAMESPACE -- cat /var/run/secrets/kubernetes.io/serviceaccount/token) - - kubectl exec -it $POD_NAME -n $NAMESPACE -- /bin/sh << EOF - vault operator unseal $UNSEAL_KEY - vault login $PASSWORD - vault write auth/kubernetes/config \ - token_reviewer_jwt="${JWT}" \ - kubernetes_host="https://${K8S_API_SERVER}:443" \ - kubernetes_ca_cert=@/var/run/secrets/kubernetes.io/serviceaccount/ca.crt -EOF -} - -load-profile () { - ansible-playbook /home/user/.dotfiles/ansible/.config/ansible/local.yml -K -} -#eval "$(bw completion --shell zsh); compdef _bw bw;" # -typeset -g POWERLEVEL9K_INSTANT_PROMPT=quiet ## Initialization code that may require console input (password prompts, [y/n] # confirmations, etc.) must go above this block; everything else may go below. if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then @@ -140,8 +100,49 @@ zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath' zstyle ':fzf-tab:complete:__zoxide_z:*' fzf-preview 'ls --color $realpath' # Shell integrations -#eval "$(fzf --zsh)" +eval "$(fzf --zsh)" eval "$(zoxide init --cmd cd zsh)" +eval "$(bw completion --shell zsh); compdef _bw bw;" + +source ~/.fzf.completion.zsh +source ~/.fzf.key-bindings.zsh + +unlockbw () +{ + export BW_SESSION="$(bw unlock --raw)" + export GITLAB_TOKEN="$(bw get password cli-gitlab)" + export VAULT_UNSEAL="$(bw get password cli-vault-unseal)" + export VAULT_TOKEN="$(bw get password vault.internal.durp.info)" +} +lockbw () +{ + unset BW_SESSION + unset GITLAB_TOKEN + unset VAULT_UNSEAL + unset VAULT_TOKEN +} + +unlockvault() { + local POD_NAME="vault-0" + local NAMESPACE="vault" + local UNSEAL_KEY=$VAULT_UNSEAL + local PASSWORD=$VAULT_TOKEN + local K8S_API_SERVER=$(kubectl exec -it $POD_NAME -n $NAMESPACE -- printenv | grep KUBERNETES_SERVICE_HOST | cut -d "=" -f2) + local JWT=$(kubectl exec -it $POD_NAME -n $NAMESPACE -- cat /var/run/secrets/kubernetes.io/serviceaccount/token) + + kubectl exec -it $POD_NAME -n $NAMESPACE -- /bin/sh << EOF + vault operator unseal $UNSEAL_KEY + vault login $PASSWORD + vault write auth/kubernetes/config \ + token_reviewer_jwt="${JWT}" \ + kubernetes_host="https://${K8S_API_SERVER}:443" \ + kubernetes_ca_cert=@/var/run/secrets/kubernetes.io/serviceaccount/ca.crt +EOF +} + +load-profile () { + ansible-playbook /home/user/.dotfiles/ansible/.config/ansible/local.yml -K +} function omz_urlencode() { emulate -L zsh @@ -231,10 +232,3 @@ function open_command() { ${=open_cmd} "$@" &>/dev/null } - -# take functions - -# mkcd is equivalent to takedir -function mkcd takedir() { - mkdir -p $@ && cd ${@:$#} -}