Compare commits

...

19 Commits

Author SHA1 Message Date
Valeriy Filippov
1b953e2c9e tmux: fix typo 2026-05-05 10:06:28 +03:00
Valeriy Filippov
db2dab6ee2 tmux: add config 2026-05-04 16:07:25 +03:00
Valeriy Filippov
d21e83c921 nvim: upd mason config 2026-04-17 11:04:26 +03:00
Valeriy Filippov
eec510c9fb nvim: remove ansible ftype plugin 2026-04-17 11:04:07 +03:00
Valeriy Filippov
36e44c4ea8 mise: fix mise env decryption problem #2
mise use rops under the hood, so variable SOPS_AGE_KEY_FILE not working
properly when you open new terminal pane in directory under mise config.
Change it to sops.age_key_file setting fixes the problem.
2026-04-17 11:03:41 +03:00
Valeriy Filippov
b4f025c019 mise: fix mise env decryption problem
mise use rops under the hood, so variable SOPS_AGE_KEY_FILE not working
properly when you open new terminal pane in directory under mise config.
Change it to sops.age_key_file setting fixes the problem.
2026-04-06 17:43:39 +03:00
Valeriy Filippov
cef0c0bdf7 mason: bump terraformls version 2026-04-03 15:43:05 +03:00
Valeriy Filippov
23fb9d2593 Update READMEs 2026-04-03 15:42:43 +03:00
Valeriy Filippov
4717c01483 nvim: update README for tree-sitter dependencie 2026-04-03 15:34:03 +03:00
Valeriy Filippov
e82f6e5356 nvim: fix treesitter config for 0.12 nvim version 2026-04-03 15:31:40 +03:00
Valeriy Filippov
5f7db64250 nvim: zsh interactive mode causes problems with fzf installed 2026-04-03 15:31:15 +03:00
Valeriy Filippov
05b5c17a56 starship: remove k8s ctx and command duration 2026-04-03 15:30:32 +03:00
Valeriy Filippov
ab111b9fb9 nvim: fix commentstring error 2026-04-02 18:15:32 +03:00
Valeriy Filippov
905e22a712 nvim: todo coments in hidden folders 2026-04-02 18:14:54 +03:00
Valeriy Filippov
1930f98e22 nvim: update yamlls with reference tag 2026-04-02 18:14:32 +03:00
Valeriy Filippov
4fa8591142 nvim: update used shell 2026-04-02 18:14:08 +03:00
Valeriy Filippov
5549cae9d4 update shell complition, functions and aliases 2026-04-02 18:13:43 +03:00
Valeriy Filippov
b76a0787bf gitlab nvim update 2026-03-18 10:08:05 +03:00
Valeriy Filippov
364765c556 Update nvim-tree to show relative line numbers for better vim motions 2026-03-17 12:39:50 +03:00
17 changed files with 222 additions and 158 deletions

2
.gitignore vendored
View File

@@ -15,6 +15,8 @@ mise/*
nvim/lazy-lock.json
nvim/lazyvim.json
!tmux/
!yazi/
yazi/flavours/
yazi/plugins/

View File

@@ -67,7 +67,7 @@ plugins=(
)
```
###
### Fabric
https://github.com/Mu-L/fabric-ai/tree/main
```shell
@@ -134,6 +134,13 @@ https://mise.jdx.dev/
brew install mise
```
### OpenCode
https://github.com/anomalyco/opencode
```shell
brew install opencode
```
### Pwgen
https://github.com/aronhoyer/pwgen

View File

@@ -11,7 +11,7 @@ categories:
source:
# renovate:datasource=github-releases
id: pkg:generic/hashicorp/terraform-ls@v0.38.4
id: pkg:generic/hashicorp/terraform-ls@v0.38.6
download:
- target: darwin_arm64
files:

View File

@@ -1,11 +1,21 @@
[settings]
experimental = true
env_shell_expand = true
sops.age_key_file = "$HOME/.config/sops/.age"
[env]
_.file = ".secrets.yaml"
SOPS_AGE_KEY_FILE = "$HOME/.config/sops/.age"
TFENV_REMOTE = "https://hashicorp-releases.yandexcloud.net"
K9S_FEATURE_GATE_NODE_SHELL = true
[shell_alias]
nvimc = "nvim ~/.config"
nvimm = "nvim ~/.config/mise/config.toml"
nvimn = "nvim ~/.config/nvim"
nvimz = "nvim ~/.config/zsh/.zshrc"
gh = "cd ~ && clear"
gw = "cd ~/work && clear"
gp = "cd ~/personal && clear"
ytr = "fabric-ai -p rate_content -g ru -s -y"

View File

@@ -14,10 +14,10 @@ brew install go
brew install lazygit
# https://github.com/getsops/sops
brew onstall sops
brew install sops
# https://tree-sitter.github.io/
brew install tree-sitter
brew install tree-sitter-cli
# https://github.com/ryanoasis/nerd-fonts
brew install --cask font-jetbrains-mono-nerd-font

View File

@@ -4,7 +4,7 @@ return {
filetypes = {
"yaml",
"yaml.docker-compose",
-- "yaml.gitlab",
"yaml.gitlab",
"yaml.helm-values",
},
root_markers = {
@@ -21,6 +21,9 @@ return {
format = {
enable = true,
},
customTags = {
"!reference sequence",
},
},
},
}

View File

@@ -43,3 +43,6 @@ opt.splitbelow = true -- split horizontal window to the bottom
-- turn off swapfile
opt.swapfile = false
-- set shell to zsh
opt.shell = "/bin/zsh"

View File

@@ -1,8 +0,0 @@
-- https://github.com/mfussenegger/nvim-ansible/tree/main
return {
"mfussenegger/nvim-ansible",
ft = "yaml.ansible",
opts = {
-- leave empty or see below
},
}

View File

@@ -2,19 +2,19 @@
return {
"numToStr/Comment.nvim",
event = { "BufReadPre", "BufNewFile" },
dependencies = {
"JoosepAlviste/nvim-ts-context-commentstring",
},
config = function()
-- import comment plugin safely
local comment = require("Comment")
local ts_context_commentstring = require("ts_context_commentstring.integrations.comment_nvim")
-- enable comment
comment.setup({
-- for commenting tsx, jsx, svelte, html files
pre_hook = ts_context_commentstring.create_pre_hook(),
})
end,
-- dependencies = {
-- "JoosepAlviste/nvim-ts-context-commentstring",
-- },
-- config = function()
-- -- import comment plugin safely
-- local comment = require("Comment")
--
-- local ts_context_commentstring = require("ts_context_commentstring.integrations.comment_nvim")
--
-- -- enable comment
-- comment.setup({
-- -- for commenting tsx, jsx, svelte, html files
-- pre_hook = ts_context_commentstring.create_pre_hook(),
-- })
-- end,
}

View File

@@ -5,12 +5,9 @@ return {
"MunifTanjim/nui.nvim",
"nvim-lua/plenary.nvim",
"sindrets/diffview.nvim",
"stevearc/dressing.nvim", -- Recommended but not required. Better UI for pickers.
"nvim-tree/nvim-web-devicons", -- Recommended but not required. Icons in discussion tree.
},
build = function()
require("gitlab.server").build(true)
end, -- Builds the Go binary
config = function()
require("gitlab").setup()
end,
build = function() require("gitlab.server").build(true) end, -- Builds the Go binary
config = function() require("gitlab").setup() end,
}

View File

@@ -1,4 +1,5 @@
-- https://github.com/mason-org/mason.nvim
-- https://github.com/mason-org/mason-registry
-- https://github.com/WhoIsSethDaniel/mason-tool-installer.nvim
return {
{

View File

@@ -12,7 +12,7 @@ return {
nvimtree.setup({
view = {
width = 40,
relativenumber = false,
relativenumber = true,
},
-- change folder arrow icons
renderer = {
@@ -45,5 +45,5 @@ return {
ignore = false,
},
})
end
end,
}

View File

@@ -7,5 +7,20 @@ return {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}
search = {
command = "rg",
args = {
"--color=never",
"--no-heading",
"--with-filename",
"--line-number",
"--column",
"--hidden",
},
-- regex that will be used to match keywords.
-- don't replace the (KEYWORDS) placeholder
pattern = [[\b(KEYWORDS):]], -- ripgrep regex
-- pattern = [[\b(KEYWORDS)\b]], -- match without the extra colon. You'll likely get false positives
},
},
}

View File

@@ -1,29 +1,16 @@
-- https://github.com/nvim-treesitter/nvim-treesitter
return {
"nvim-treesitter/nvim-treesitter",
event = { "BufReadPre", "BufNewFile" },
lazy = false,
build = ":TSUpdate",
dependencies = {
"windwp/nvim-ts-autotag",
},
config = function()
-- import nvim-treesitter plugin
local treesitter = require("nvim-treesitter.configs")
local treesitter = require("nvim-treesitter")
-- configure treesitter
treesitter.setup({
-- enable syntax highlighting
highlight = {
enable = true,
},
-- enable indentation
indent = { enable = true },
-- enable autotagging (w/ nvim-ts-autotag plugin)
autotag = {
enable = true,
},
-- ensure these language parsers are installed
ensure_installed = {
treesitter.setup({})
-- install parsers
treesitter.install({
"bash",
"dockerfile",
"gitignore",
@@ -41,20 +28,6 @@ return {
"vim",
"vimdoc",
"yaml",
},
modules = {},
sync_install = false,
ignore_install = {},
auto_install = false,
incremental_selection = {
enable = true,
keymaps = {
init_selection = "<C-space>",
node_incremental = "<C-space>",
scope_incremental = false,
node_decremental = "<bs>",
},
},
})
end,
}

View File

@@ -4,8 +4,6 @@ $directory\
$git_branch\
$git_state\
$git_status\
$kubernetes\
$cmd_duration\
$line_break\
$character"""

51
tmux/tmux.conf Normal file
View File

@@ -0,0 +1,51 @@
set -g default-terminal "tmux-256color"
set -g terminal-overrides ",*:RGB"
# Index options
set -g base-index 1 # set base index for windows
set-window-option -g pane-base-index 1 # ser base index for panes
set-option -g renumber-windows on # renumber all windows when any window is closed
# Base configuration
set -g history-limit 1000000 # increase history size (from 2,000)
set -g mouse on # Enable mouse
set -g set-clipboard on # use system clipboard
# Vim-like copy/paste
set-window-option -g mode-keys vi # set vi mode for windows
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
unbind -T copy-mode-vi MouseDragEnd1Pane # disable copy with mouse
# Style
gray_dark="#3B4252"
gray_light="#D8DEE9"
gray_medium="#ABB2BF"
green_soft="#A3BE8C"
cyan_soft="#88C0D0"
blue_muted="#81A1C1"
magenta="#C099FF"
set -g status-position top # macOS / darwin style
set -g status-left-length 100 # more room for session name
set -g status-style "fg=${gray_light},bg=default"
set -g status-left " #{?client_prefix,#[fg=${magenta}],#[fg=${green_soft}]}#[bold] #S#[fg=${gray_light},nobold] | "
set -g status-right ""
set -g window-status-current-format "#[fg=${cyan_soft},bold] #[underscore]#I:#W"
set -g window-status-format "#I:#W"
set -g message-style "fg=${gray_light},bg=default"
set -g mode-style "fg=${gray_dark},bg=${blue_muted}"
set -g pane-border-style "fg=${gray_dark}"
set -g pane-active-border-style "fg=${gray_medium}"
# Keybins
bind r source-file $HOME/.config/tmux/tmux.conf \; display-message "Configuration reload..."
# Popups
# new session
bind C-n display-popup -w 50% -h 5% -E 'bash -i -c "read -p \"Session name: \" name; tmux new-session -d -s \$name && tmux switch-client -t \$name"'
# jump to session
bind C-j display-popup -E "tmux list-sessions | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | xargs tmux switch-client -t"
# terminal
bind C-t display-popup -d "#{pane_current_path}" -w 75% -h 75% -E "zsh"

View File

@@ -69,30 +69,44 @@ source $ZSH/oh-my-zsh.sh
export EDITOR='nvim'
fi
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
# YandexCloud CLI completion
# NOTE: Versions checked from utility version output
source "$HOMEBREW_PREFIX/Caskroom/yandex-cloud-cli/$(yc --version | egrep -o "([0-9]{1,}\.)+[0-9]{1,}")/yandex-cloud-cli/completion.zsh.inc"
#compdef opencode
###-begin-opencode-completions-###
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
alias vi="nvim"
alias vim="nvim"
alias vimdiff="nvim -d"
alias ovim="/usr/bin/vim"
# yargs command completion script
#
# Installation: opencode completion >> ~/.zshrc
# or opencode completion >> ~/.zprofile on OSX.
#
_opencode_yargs_completions()
{
local reply
local si=$IFS
IFS=$'
' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" opencode --get-yargs-completions "${words[@]}"))
IFS=$si
if [[ ${#reply} -gt 0 ]]; then
_describe 'values' reply
else
_default
fi
}
if [[ "'${zsh_eval_context[-1]}" == "loadautofunc" ]]; then
_opencode_yargs_completions "$@"
else
compdef _opencode_yargs_completions opencode
fi
###-end-opencode-completions-###
alias vimz="nvim ~/.config/zsh/.zshrc"
alias vimn="nvim ~/.config/nvim"
alias gh="cd ~ && clear"
alias gw="cd ~/work && clear"
alias gp="cd ~/personal && clear"
# Functions
# Add Docker Desktop for Mac (docker)
export PATH="$PATH:/Applications/Docker.app/Contents/Resources/bin/"
## Functions
#Generate strong password
pwg() {
function pwg() {
pwgen -cny -r \[\]\{\}\(\)\"\'\-\|\:\;\`\,\<\>\$\= 32 1
}
@@ -106,9 +120,7 @@ function y() {
rm -f -- "$tmp"
}
# YandexCloud CLI completion
# NOTE: Versions checked from utility version output
source "$HOMEBREW_PREFIX/Caskroom/yandex-cloud-cli/$(yc --version | egrep -o "([0-9]{1,}\.)+[0-9]{1,}")/yandex-cloud-cli/completion.zsh.inc"
# Add Docker Desktop for Mac (docker)
export PATH="$PATH:/Applications/Docker.app/Contents/Resources/bin/"
#DuckDuckGo Search with w3m
function ddgs(){
w3m https://lite.duckduckgo.com/html/\?q\="$@"
}