mirror of
https://github.com/don-philipe/dotfiles.git
synced 2026-05-13 20:11:46 +02:00
Compare commits
28 Commits
5bdd07c204
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 15240d7e86 | |||
| 97e16f6273 | |||
| 16d1175f21 | |||
| 5ede1b3b47 | |||
| 6033bd016e | |||
| 4f6b390ba6 | |||
| 1b6cad45f5 | |||
| b648f0a936 | |||
| 434df00be3 | |||
| 6a82e1dc6f | |||
| 081a2f5498 | |||
| d6707b3dff | |||
| d3494b9830 | |||
| f6bbc705f8 | |||
| 30d3a8c29a | |||
| a414890f69 | |||
| 2df66474db | |||
| 3e30bb71a0 | |||
| 177716cdbe | |||
| f8cf65bda9 | |||
| bea47efec4 | |||
| 10de9c300b | |||
| 5feff36b73 | |||
| 8f50d2cb75 | |||
| b62f1697a2 | |||
| 4260c7876c | |||
| ff7deb9cee | |||
| f84673ed16 |
+1
-1
@@ -4,7 +4,7 @@ URxvt.foreground: white
|
||||
!URxvt.borderColor: dark grey
|
||||
URxvt.scrollBar: false
|
||||
URxvt.cursorColor: green
|
||||
URxvt.font: xft:monospace:size=9,xft:Noto Color Emoji
|
||||
URxvt.font: xft:Jet Brains Mono Nerd Font:size=9,xft:monospace:size=9,xft:Noto Color Emoji
|
||||
URxvt.perl-ext-common: default,matcher
|
||||
URxvt.url-launcher: /usr/bin/xdg-open
|
||||
URxvt.matcher.button: 1
|
||||
|
||||
@@ -5,6 +5,7 @@ text = "#000000"
|
||||
[env]
|
||||
# set this to have true color when using nvim etc. in remote tmux session
|
||||
TERM = "xterm-256color"
|
||||
WINIT_X11_SCALE_FACTOR = "1.0"
|
||||
|
||||
[font]
|
||||
size = 9
|
||||
|
||||
+12
-1
@@ -1,21 +1,32 @@
|
||||
-- utilities functions
|
||||
--require("utils")
|
||||
|
||||
require("config.remap")
|
||||
require("config.set")
|
||||
require("config.commands")
|
||||
-- env vars used only for neovim
|
||||
require("config.env")
|
||||
-- configurations for various filetypes
|
||||
require("config.filetypes")
|
||||
|
||||
-- plugin manager
|
||||
require("config.lazy")
|
||||
|
||||
-- plugins
|
||||
require("config.cmp")
|
||||
require("config.gen-private")
|
||||
require("config.lsp")
|
||||
require("config.mason")
|
||||
require("config.treesitter")
|
||||
require("config.treesitter-context")
|
||||
require("config.gitsigns")
|
||||
require("config.lualine")
|
||||
require("config.telescope")
|
||||
require("config.indentline")
|
||||
--require("config.redmine")
|
||||
require("config.diffview")
|
||||
require("config.dap")
|
||||
require("config.parrot")
|
||||
--require("config.gitea")
|
||||
|
||||
-- for some reason this must be placed in init.lua file
|
||||
-- it doesn't work in any lua/config/*.lua files
|
||||
|
||||
@@ -25,6 +25,7 @@ cmp.setup({
|
||||
end,
|
||||
},
|
||||
-- switch on rounded borders in floating completion windows
|
||||
-- additionally vim.o.winborder = 'rounded' must be set (set.lua)
|
||||
window = {
|
||||
completion = cmp.config.window.bordered(),
|
||||
documentation = cmp.config.window.bordered(),
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
require("diffview").setup({
|
||||
})
|
||||
@@ -21,3 +21,47 @@ vim.api.nvim_create_autocmd('Filetype', {
|
||||
},
|
||||
command = 'setlocal shiftwidth=2 tabstop=2 expandtab'
|
||||
})
|
||||
if vim.filetype then
|
||||
vim.filetype.add({
|
||||
pattern = {
|
||||
[".*/defaults/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/host_vars/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/group_vars/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/group_vars/.*/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/playbook.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/playbooks/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/roles/.*/tasks/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/roles/.*/handlers/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/tasks/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*/molecule/.*%.ya?ml"] = "yaml.ansible",
|
||||
},
|
||||
})
|
||||
else
|
||||
vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, {
|
||||
pattern = {
|
||||
"*/defaults/*.yml",
|
||||
"*/defaults/*.yaml",
|
||||
"*/host_vars/*.yml",
|
||||
"*/host_vars/*.yaml",
|
||||
"*/group_vars/*.yml",
|
||||
"*/group_vars/*.yaml",
|
||||
"*/group_vars/*/*.yml",
|
||||
"*/group_vars/*/*.yaml",
|
||||
"*/playbook*.yml",
|
||||
"*/playbook*.yaml",
|
||||
"*/playbooks/*.yml",
|
||||
"*/playbooks/*.yaml",
|
||||
"*/roles/*/tasks/*.yml",
|
||||
"*/roles/*/tasks/*.yaml",
|
||||
"*/roles/*/handlers/*.yml",
|
||||
"*/roles/*/handlers/*.yaml",
|
||||
"*/tasks/*.yml",
|
||||
"*/tasks/*.yaml",
|
||||
"*/molecule/*.yml",
|
||||
"*/molecule/*.yaml",
|
||||
},
|
||||
callback = function()
|
||||
vim.bo.filetype = "yaml.ansible"
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
-- return {
|
||||
-- model = "llama3.2",
|
||||
-- host = "jupiter",
|
||||
-- port = "11434",
|
||||
-- }
|
||||
return {
|
||||
model = "llama3.2",
|
||||
host = "foo",
|
||||
port = "11343",
|
||||
model = "llama3.3",
|
||||
host = "owu-zegv-api.med.tu-dresden.de",
|
||||
port = "443",
|
||||
https = true,
|
||||
}
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
require('gitsigns').setup()
|
||||
local gitsigns = require('gitsigns')
|
||||
vim.keymap.set('n', '<leader>gm', gitsigns.blame_line, { desc = 'Show git message for current line' })
|
||||
vim.keymap.set('n', '<leader>gd', ':Gitsigns diffthis<CR>:wincmd w<CR>', { desc = 'Show diff for current line' })
|
||||
vim.keymap.set('n', '<leader>gd', ':Gitsigns diffthis ~ vertical=true<CR>:wincmd w<CR>', { desc = 'Show diff for current line' })
|
||||
vim.keymap.set('n', '<leader>gs', gitsigns.stage_hunk, { desc = 'Stage current hunk' })
|
||||
vim.keymap.set('n', '<leader>gS', gitsigns.stage_buffer, { desc = 'Stage current buffer' })
|
||||
vim.keymap.set('n', '<leader>gr', gitsigns.reset_hunk, { desc = 'Reset current hunk' })
|
||||
vim.keymap.set('n', '<leader>gR', gitsigns.reset_buffer, { desc = 'Reset current buffer' })
|
||||
vim.keymap.set('n', '<leader>h', gitsigns.next_hunk, { desc = 'Move to next hunk' })
|
||||
vim.keymap.set('n', '<leader>H', gitsigns.prev_hunk, { desc = 'Move to previous hunk' })
|
||||
vim.keymap.set('n', '<leader>ph', gitsigns.preview_hunk, { desc = 'Preview hunk in popup' })
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
require'indentmini'.setup()
|
||||
vim.cmd.highlight('IndentLine guifg=#444444')
|
||||
vim.cmd.highlight('IndentLineCurrent guifg=#557755')
|
||||
@@ -33,6 +33,7 @@ require("lazy").setup({
|
||||
install = { colorscheme = { "habamax" } },
|
||||
-- automatically check for plugin updates
|
||||
checker = { enabled = true },
|
||||
change_detection = { enabled = false }, -- active change detection seems to eat up memory over time https://github.com/folke/lazy.nvim/issues/1008
|
||||
ui = {
|
||||
border = "rounded",
|
||||
},
|
||||
|
||||
@@ -11,6 +11,8 @@ lspconfig_defaults.capabilities = vim.tbl_deep_extend(
|
||||
require('cmp_nvim_lsp').default_capabilities()
|
||||
)
|
||||
|
||||
require'lspconfig'.ts_ls.setup{}
|
||||
|
||||
-- This is where you enable features that only work
|
||||
-- if there is a language server active in the file
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
@@ -30,3 +32,10 @@ vim.api.nvim_create_autocmd('LspAttach', {
|
||||
vim.keymap.set('n', '<F4>', '<cmd>lua vim.lsp.buf.code_action()<cr>', opts)
|
||||
end,
|
||||
})
|
||||
|
||||
-- helper plugin configuration
|
||||
require'py_lsp'.setup{
|
||||
host_python = '/usr/bin/python3',
|
||||
default_venv_name = "venv",
|
||||
language_server = "pylsp",
|
||||
}
|
||||
|
||||
@@ -10,3 +10,13 @@ vim.opt.scrolloff = 8
|
||||
vim.opt.incsearch = true
|
||||
|
||||
vim.opt.signcolumn = "yes"
|
||||
|
||||
vim.o.termguicolors = true
|
||||
|
||||
vim.diagnostic.config({
|
||||
virtual_text = true,
|
||||
})
|
||||
|
||||
vim.opt.undofile = true
|
||||
|
||||
vim.o.winborder = 'rounded'
|
||||
|
||||
@@ -17,11 +17,16 @@ table.insert(vimgrep_arguments, "--glob")
|
||||
table.insert(vimgrep_arguments, "!**/.git/*")
|
||||
|
||||
require('telescope').setup({
|
||||
defaults = {
|
||||
vimgrep_arguments = vimgrep_arguments,
|
||||
layout_strategy = 'vertical',
|
||||
layout_config = {
|
||||
vertical = { width = 0.95 }
|
||||
defaults = {
|
||||
vimgrep_arguments = vimgrep_arguments,
|
||||
layout_strategy = 'vertical',
|
||||
layout_config = {
|
||||
vertical = { width = 0.95 }
|
||||
},
|
||||
},
|
||||
pickers = {
|
||||
find_files = {
|
||||
find_command = { "rg", "--files", "--hidden", "--glob", "!**/.git/*" },
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
require'treesitter-context'.setup{
|
||||
enable = true,
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
require'nvim-treesitter.configs'.setup {
|
||||
-- A list of parser names, or "all" (the listed parsers MUST always be installed)
|
||||
ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "markdown", "markdown_inline", "python", "javascript", "css", "html", "yaml", "java", "bash", "csv", "dockerfile", "htmldjango", "json", "nginx" },
|
||||
ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "markdown", "markdown_inline", "python", "javascript", "css", "html", "yaml", "java", "bash", "csv", "dockerfile", "htmldjango", "json", "nginx", "latex" },
|
||||
|
||||
-- Install parsers synchronously (only applied to `ensure_installed`)
|
||||
sync_install = false,
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
return {
|
||||
'cameron-wags/rainbow_csv.nvim',
|
||||
config = true,
|
||||
ft = {
|
||||
'csv',
|
||||
'tsv',
|
||||
'csv_semicolon',
|
||||
'csv_whitespace',
|
||||
'csv_pipe',
|
||||
'rfc_csv',
|
||||
'rfc_semicolon'
|
||||
},
|
||||
cmd = {
|
||||
'RainbowDelim',
|
||||
'RainbowDelimSimple',
|
||||
'RainbowDelimQuoted',
|
||||
'RainbowMultiDelim'
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
return {
|
||||
"sindrets/diffview.nvim"
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
local ok, vars = pcall(require, 'config.gen-private')
|
||||
if not ok then
|
||||
print("Missing gen-private configuration file.")
|
||||
end
|
||||
|
||||
return {
|
||||
{ "David-Kunz/gen.nvim",
|
||||
opts = {
|
||||
model = vars["model"],
|
||||
host = vars["host"],
|
||||
port = vars["port"],
|
||||
https = vars["https"],
|
||||
show_prompt = true,
|
||||
debug = false,
|
||||
|
||||
-- https://github.com/David-Kunz/gen.nvim/issues/116
|
||||
command = function(options)
|
||||
local body = { model = options.model, stream = true }
|
||||
local schema = "http"
|
||||
if options.https then
|
||||
schema = "https"
|
||||
end
|
||||
return "curl --silent --no-buffer -X POST " .. schema .. "://" .. options.host .. ":" .. options.port .. "/api/chat -d $body"
|
||||
end,
|
||||
}},
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
return {
|
||||
"nvimdev/indentmini.nvim",
|
||||
}
|
||||
@@ -2,4 +2,6 @@ return {
|
||||
{'neovim/nvim-lspconfig', tag = 'v1.7.0'}, -- pin to a version thats compatible with nvim < 0.10
|
||||
{'hrsh7th/cmp-nvim-lsp'},
|
||||
{'hrsh7th/nvim-cmp'},
|
||||
-- helper plugins
|
||||
{'HallerPatrick/py_lsp.nvim'},
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
return {
|
||||
"frankroeder/parrot.nvim",
|
||||
dependencies = { "ibhagwan/fzf-lua", "nvim-lua/plenary.nvim" },
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
"sgross-emlix/angerona.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
return {
|
||||
{'nvim-treesitter/nvim-treesitter-context',
|
||||
},
|
||||
}
|
||||
@@ -87,6 +87,12 @@ handle_extension() {
|
||||
pandoc -s -t markdown -- "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
|
||||
## DOCX
|
||||
docx)
|
||||
## Uses: https://github.com/bgreenwell/doxx
|
||||
doxx "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
|
||||
## XLSX
|
||||
xlsx)
|
||||
## Preview as csv conversion
|
||||
|
||||
+3
-1
@@ -3,9 +3,11 @@ set -g default-shell /usr/bin/zsh
|
||||
set-window-option -g window-active-style bg=terminal
|
||||
# grayed background for inactive panes
|
||||
set-window-option -g window-style bg="#32302f"
|
||||
# ensure "autoread" works in nvim (auto reload files when changed)
|
||||
set-option -g focus-events on
|
||||
# https://gist.github.com/andersevenrud/015e61af2fd264371032763d4ed965b6
|
||||
set -g default-terminal "tmux-256color"
|
||||
set -ag terminal-overrides ",$TERM:RGB"
|
||||
set -ag terminal-overrides ",xterm-256color:RGB"
|
||||
|
||||
# List of plugins
|
||||
|
||||
|
||||
@@ -21,6 +21,10 @@ checkcert()
|
||||
{
|
||||
openssl s_client -connect "$1":443 2>/dev/null
|
||||
}
|
||||
pem2crt()
|
||||
{
|
||||
openssl x509 -inform PEM -in "$1" -out "${1%.*}.crt"
|
||||
}
|
||||
|
||||
# works only without tex-ending
|
||||
tex2pdf()
|
||||
@@ -59,6 +63,42 @@ m4a2mp3()
|
||||
done
|
||||
}
|
||||
|
||||
# Show all blob objects in repo sorted from smalles to largest
|
||||
# https://stackoverflow.com/a/42544963
|
||||
git-blobs()
|
||||
{
|
||||
git rev-list --objects --all --missing=print |
|
||||
git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' |
|
||||
sed -n 's/^blob //p' |
|
||||
sort --numeric-sort --key=2 |
|
||||
cut -c 1-12,41- |
|
||||
$(command -v gnumfmt || echo numfmt) --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest
|
||||
}
|
||||
|
||||
# Do a short code review via several git commands
|
||||
# https://piechowski.io/post/git-commands-before-reading-code/
|
||||
git-review()
|
||||
{
|
||||
echo "### What Changes the Most (1y ago) ###"
|
||||
git log --format=format: --name-only --since="1 year ago" | sort | uniq -c | sort -nr | head -20
|
||||
echo "\n### Who Built This ###"
|
||||
git --no-pager shortlog -sn --no-merges
|
||||
echo "\n### Where Do Bugs Cluster ###"
|
||||
git log -i -E --grep="fix|bug|broken" --name-only --format='' | sort | uniq -c | sort -nr | head -20
|
||||
echo "\n### Is This Project Accelerating or Dying (commit count per m) ###"
|
||||
git log --format='%ad' --date=format:'%Y-%m' | sort | uniq -c
|
||||
echo "\n### How Often Is the Team Firefighting ###"
|
||||
git log --oneline --since="1 year ago" | grep -iE 'revert|hotfix|emergency|rollback'
|
||||
}
|
||||
|
||||
sshs()
|
||||
{
|
||||
tmprc=$(ssh $1 "mktemp --directory")
|
||||
scp -q $HOME/.zshrc $1:$tmprc
|
||||
ssh -t $1 "export ZDOTDIR=${tmprc}; trap 'rm -rf ${tmprc}' EXIT INT TERM; exec zsh"
|
||||
#ssh $1 "rm -rf ${tmprc}"
|
||||
}
|
||||
|
||||
# show the current mode:
|
||||
#PR_VIMODE="#"
|
||||
#function zle-keymap-select
|
||||
|
||||
@@ -106,7 +106,7 @@ autoload -U promptinit
|
||||
promptinit
|
||||
|
||||
export XDG_CONFIG_HOME=$HOME/.config/
|
||||
export EDITOR=vim
|
||||
export EDITOR=nvim
|
||||
|
||||
alias ls='ls --color=always'
|
||||
alias grep='grep --color=always'
|
||||
@@ -114,6 +114,7 @@ alias less='less -R'
|
||||
alias dd='dd status=progress oflag=direct'
|
||||
alias dotfiles='git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
|
||||
alias hibernate='sudo systemctl hibernate'
|
||||
alias ssh="TERM=linux ssh" # for not complaining urxvt about terminals without TERM set
|
||||
#alias ssh="TERM=linux ssh" # for not complaining urxvt about terminals without TERM set
|
||||
alias cpup="cp -T $0 ../$0"
|
||||
alias pythonweb="python -m SimpleHTTPServer 8090"
|
||||
alias sayhi="echo hi"
|
||||
|
||||
Reference in New Issue
Block a user