Compare commits

23 Commits
work ... main

Author SHA1 Message Date
d522dcd5ab Add lldb debug config 2025-07-25 11:15:01 +02:00
c3bf8c8e49 Add copilot keymaps 2025-07-25 09:52:19 +02:00
5876cf4564 Add nvim copilot chat 2025-07-24 21:52:28 +02:00
af49129b2a Add nvim render markdown 2025-07-24 19:50:58 +02:00
2021268b73 Nvim 2025-07-24 19:11:41 +02:00
b432d26028 Add relative line numbers 2025-07-22 20:32:50 +02:00
5e4e0050dd Merge work 2025-07-22 20:06:22 +02:00
206ca73ee5 Add luasnip instead of vsnip 2025-07-20 18:29:36 +02:00
1824ed760d Configure conform 2025-07-16 20:15:34 +02:00
c52452dbf4 Merge work 2025-07-16 19:08:18 +02:00
4321d6bba5 Add lsp keymaps 2025-07-16 19:05:30 +02:00
db7bba461a Fix lsp 2025-07-12 19:33:38 +02:00
966a3cea5c Sync changes from work 2025-07-11 14:42:26 +02:00
4d7caf0abe Sync config for all systems 2025-07-10 20:03:17 +02:00
2517fd0269 Configure nvim obsidian 2025-07-09 21:21:25 +02:00
1e9873bae4 Refactor filetypes 2025-06-30 22:29:01 +02:00
ff4743a0db Minor things 2025-06-26 19:27:56 +02:00
3e3941a9f3 Add cli tools 2025-06-24 20:59:47 +02:00
dd7709d9e4 Configure nvim debugging 2025-06-23 21:39:25 +02:00
c494611b05 Take steps to a more IDE experience with neovim 2025-06-22 19:58:50 +02:00
4e69d65a8a Update flake 2025-06-18 21:54:29 +02:00
35af981c83 Merge changes from work 2025-06-18 21:53:08 +02:00
85450dd973 Add rust zsh config 2025-06-18 21:47:19 +02:00
9 changed files with 85 additions and 119 deletions

18
nix/flake.lock generated
View File

@ -7,11 +7,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1764034279, "lastModified": 1750275572,
"narHash": "sha256-hZH6EHQYFifVg0bmSBYT8Art5BWhXBXE307uPLnexY0=", "narHash": "sha256-upC/GIlsIgtdtWRGd1obzdXWYQptNkfzZeyAFWgsgf0=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "381f4f8a3a5f773cb80d2b7eb8f8d733b8861434", "rev": "0f355844e54e4c70906b1ef5cc35a0047d666c04",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -27,11 +27,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763505477, "lastModified": 1749873626,
"narHash": "sha256-nJRd4LY2kT3OELfHqdgWjvToNZ4w+zKCMzS2R6z4sXE=", "narHash": "sha256-1Mc/D/1RwwmDKY59f4IpDBgcQttxffm+4o0m67lQ8hc=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "3bda9f6b14161becbd07b3c56411f1670e19b9b5", "rev": "2f140d6ac8840c6089163fb43ba95220c230f22b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -42,11 +42,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1763835633, "lastModified": 1750134718,
"narHash": "sha256-HzxeGVID5MChuCPESuC0dlQL1/scDKu+MmzoVBJxulM=", "narHash": "sha256-v263g4GbxXv87hMXMCpjkIxd/viIF7p3JpJrwgKdNiI=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "050e09e091117c3d7328c7b2b7b577492c43c134", "rev": "9e83b64f727c88a7711a2c463a7b16eedb69a84c",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -13,8 +13,7 @@
outputs = { self, nix-darwin, nixpkgs, home-manager, ... }: outputs = { self, nix-darwin, nixpkgs, home-manager, ... }:
let let
#system = "x86_64-darwin"; system = "x86_64-darwin";
system = "x86_64-linux";
pkgs = nixpkgs.legacyPackages.${system}; pkgs = nixpkgs.legacyPackages.${system};
configuration = { pkgs, ... }: { configuration = { pkgs, ... }: {
@ -61,7 +60,6 @@
./user/task_home.nix ./user/task_home.nix
]; ];
}; };
"martin" = home-manager.lib.homeManagerConfiguration { "martin" = home-manager.lib.homeManagerConfiguration {
inherit pkgs; inherit pkgs;
@ -71,7 +69,6 @@
./user/task_home.nix ./user/task_home.nix
]; ];
}; };
"pan" = home-manager.lib.homeManagerConfiguration { "pan" = home-manager.lib.homeManagerConfiguration {
inherit pkgs; inherit pkgs;
@ -79,9 +76,6 @@
./user/profiles/work.nix ./user/profiles/work.nix
./common.nix ./common.nix
./user/task.nix ./user/task.nix
{
nixpkgs.config.allowUnfree = true;
}
]; ];
}; };
}; };

View File

@ -9,6 +9,5 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
visidata visidata
claude-code
]; ];
} }

View File

@ -3,20 +3,23 @@
{ {
programs.git = { programs.git = {
enable = true; enable = true;
settings = {
alias = {
st = "status";
ci = "commit";
co = "checkout";
br = "branch";
pl = "pull";
ps = "push";
sw = "switch";
mno =" merge --no-ff";
lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%C(bold blue)<%an>%Creset' --abbrev-commit";
cleanup = "!git fetch --prune && git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D";
};
aliases = {
st = "status";
ci = "commit";
co = "checkout";
br = "branch";
pl = "pull";
ps = "push";
sw = "switch";
mno =" merge --no-ff";
lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%C(bold blue)<%an>%Creset' --abbrev-commit";
cleanup = "!git fetch --prune && git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D";
};
difftastic.enable = true;
extraConfig = {
column.ui = "auto"; column.ui = "auto";
branch.sort = "-committerdate"; branch.sort = "-committerdate";
tag.sort = "version:refname"; tag.sort = "version:refname";
@ -59,11 +62,6 @@
]; ];
}; };
programs.difftastic = {
enable = true;
git.enable = true;
};
programs.lazygit = { programs.lazygit = {
enable = true; enable = true;
settings = { settings = {

View File

@ -6,15 +6,15 @@
home.stateVersion = "23.11"; # Please read the comment before changing. home.stateVersion = "23.11"; # Please read the comment before changing.
programs.git.settings.user = { programs.git = {
name = "Martin Pander"; userName = "Martin Pander";
email = "martin.pander@knowtion.de"; userEmail = "martin.pander@knowtion.de";
}; };
home.packages = with pkgs; [ home.packages = with pkgs; [
yaml-language-server yaml-language-server
marksman marksman
dockerfile-language-server dockerfile-language-server-nodejs
]; ];
programs.zsh.profileExtra = '' programs.zsh.profileExtra = ''

View File

@ -89,7 +89,7 @@
home.packages = with pkgs; [ home.packages = with pkgs; [
fd fd
dust du-dust
glow glow
ripgrep-all ripgrep-all
viddy viddy

View File

@ -28,8 +28,8 @@
bind C-s display-popup -E "zsh ~/bin/tmuxp_selector.sh" bind C-s display-popup -E "zsh ~/bin/tmuxp_selector.sh"
bind C-g display-popup -E -d "#{pane_current_path}" -xC -yC -w 95% -h 95% "lazygit" bind C-g display-popup -E -d "#{pane_current_path}" -xC -yC -w 95% -h 95% "lazygit"
bind C-t display-popup -E -xC -yC -w 95% -h 95% "tasksquire" bind C-t display-popup -E -xC -yC -w 95% -h 95% "tasksquire"
bind C-n display-popup -E -xC -yC -w 95% -h 95% -d "/mnt/c/Users/marti/Documents/notes/Work/" "vim quick_notes.md" bind C-n display-popup -E -xC -yC -w 95% -h 95% "vim /mnt/c/Users/marti/Documents/notes/Work/quick_notes.md"
bind C-p display-popup -E -xC -yC -w 95% -h 95% -d "/mnt/c/Users/marti/Documents/notes/Work/development/" "vim mbpr.md" bind C-m display-popup -E -xC -yC -w 95% -h 95% "vim /mnt/c/Users/marti/Documents/notes/Work/mbpr.md"
####################################### #######################################
# status line # status line

View File

@ -1,4 +1,5 @@
local capabilities = require('cmp_nvim_lsp').default_capabilities() local capabilities = require('cmp_nvim_lsp').default_capabilities()
local lspconfig = require("lspconfig")
vim.api.nvim_create_augroup('FileTypeConfigs', { clear = true }) vim.api.nvim_create_augroup('FileTypeConfigs', { clear = true })
@ -21,37 +22,26 @@ vim.api.nvim_create_autocmd('FileType', {
-- require('dap-python').setup() -- require('dap-python').setup()
-- require('dap-go').setup() -- require('dap-go').setup()
vim.lsp.enable('ruff') lspconfig.ruff.setup({ capabilities = capabilities })
vim.lsp.enable('gopls') lspconfig.gopls.setup({ capabilities = capabilities })
vim.lsp.enable('marksman') lspconfig.marksman.setup({ capabilities = capabilities })
vim.lsp.enable('rust_analyzer') lspconfig.rust_analyzer.setup({
vim.lsp.enable('dockerls') capabilities = capabilities,
vim.lsp.enable('docker_compose_language_service') settings = {
vim.lsp.enable('clangd') ["rust-analyzer"] = {
vim.lsp.enable('sqls') checkOnSave = {
vim.lsp.enable('zls') command = "clippy",
vim.lsp.enable('omnisharp') },
vim.lsp.enable('yamlls') },
},
-- lspconfig.gopls.setup({ capabilities = capabilities }) })
-- lspconfig.marksman.setup({ capabilities = capabilities }) lspconfig.dockerls.setup({ capabilities = capabilities })
-- lspconfig.rust_analyzer.setup({ lspconfig.docker_compose_language_service.setup({ capabilities = capabilities })
-- capabilities = capabilities, lspconfig.clangd.setup({ capabilities = capabilities })
-- settings = { lspconfig.sqls.setup({ capabilities = capabilities })
-- ["rust-analyzer"] = { lspconfig.zls.setup({ capabilities = capabilities })
-- checkOnSave = { lspconfig.omnisharp.setup({ capabilities = capabilities })
-- command = "clippy", lspconfig.yamlls.setup({ capabilities = capabilities })
-- },
-- },
-- },
-- })
-- lspconfig.dockerls.setup({ capabilities = capabilities })
-- lspconfig.docker_compose_language_service.setup({ capabilities = capabilities })
-- lspconfig.clangd.setup({ capabilities = capabilities })
-- lspconfig.sqls.setup({ capabilities = capabilities })
-- lspconfig.zls.setup({ capabilities = capabilities })
-- lspconfig.omnisharp.setup({ capabilities = capabilities })
-- lspconfig.yamlls.setup({ capabilities = capabilities })
require("conform").setup({ require("conform").setup({
go = {"gofmt"}, go = {"gofmt"},

View File

@ -138,6 +138,10 @@ cmp.setup.cmdline(':', {
}) })
local capabilities = require('cmp_nvim_lsp').default_capabilities() local capabilities = require('cmp_nvim_lsp').default_capabilities()
local lspconfig = require("lspconfig")
-- lspconfig.svelte.setup({ capabilities = capabilities })
-- lspconfig.flow.setup({ capabilities = capabilities })
-- lspconfig.nil_ls.setup({ capabilities = capabilities })
capabilities.textDocument.foldingRange = { capabilities.textDocument.foldingRange = {
dynamicRegistration = false, dynamicRegistration = false,
@ -146,12 +150,10 @@ capabilities.textDocument.foldingRange = {
local language_servers = vim.lsp.get_clients() -- or list servers manually like {'gopls', 'clangd'} local language_servers = vim.lsp.get_clients() -- or list servers manually like {'gopls', 'clangd'}
for _, ls in ipairs(language_servers) do for _, ls in ipairs(language_servers) do
if ls ~= nil then require('lspconfig')[ls].setup({
vim.lsp.config(ls).setup({ capabilities = capabilities
capabilities = capabilities -- you can add other fields for setting up lsp server in this table
-- you can add other fields for setting up lsp server in this table
}) })
end
end end
require('ufo').setup() require('ufo').setup()
@ -421,34 +423,38 @@ require("obsidian").setup({
date_format = "%Y-%m-%d %a", date_format = "%Y-%m-%d %a",
time_format = "%H:%M", time_format = "%H:%M",
}, },
checkbox = { ui = {
order = { " ", ">", "x", "!", "~" }, checkboxes = {
[" "] = { char = "󰄱", hl_group = "ObsidianTodo" },
[">"] = { char = "", hl_group = "ObsidianRightArrow" },
["x"] = { char = "", hl_group = "ObsidianDone" },
["~"] = { char = "󰰱", hl_group = "ObsidianTilde" },
["!"] = { char = "", hl_group = "ObsidianImportant" },
["?"] = { char = "?", hl_group = "ObsidianImportant" }
},
}, },
frontmatter = { disable_frontmatter = false,
enabled = true, note_frontmatter_func = function(note)
func = function(note) -- Add the title of the note as an alias.
-- Add the title of the note as an alias. if note.title then
if note.title then note:add_alias(note.title)
note:add_alias(note.title) end
local out = { id = note.id, tags = note.tags }
if note.metadata ~= nil and not vim.tbl_isempty(note.metadata) then
for k, v in pairs(note.metadata) do
out[k] = v
end end
end
local out = { id = note.id, tags = note.tags } return out
end,
if note.metadata ~= nil and not vim.tbl_isempty(note.metadata) then
for k, v in pairs(note.metadata) do
out[k] = v
end
end
return out
end,
},
note_path_func = function(spec) note_path_func = function(spec)
local path = spec.dir / spec.title local path = spec.dir / spec.title
return path:with_suffix(".md") return path:with_suffix(".md")
end, end,
daily_notes = daily_notes, daily_notes = daily_notes,
legacy_commands = false,
}) })
require('render-markdown').setup({ require('render-markdown').setup({
@ -456,25 +462,4 @@ require('render-markdown').setup({
file_types = { 'markdown'}, file_types = { 'markdown'},
completions = { lsp = { enabled = true } }, completions = { lsp = { enabled = true } },
render_modes = { 'n', 'c', 't' }, render_modes = { 'n', 'c', 't' },
checkbox = {
enabled = true,
render_modes = false,
bullet = false,
right_pad = 1,
unchecked = {
icon = '󰄱 ',
highlight = 'RenderMarkdownUnchecked',
scope_highlight = nil,
},
checked = {
icon = '󰱒 ',
highlight = 'RenderMarkdownChecked',
scope_highlight = nil,
},
custom = {
next = { raw = '[!]', rendered = '', highlight = 'RenderMarkdownNext', scope_highlight = nil },
ongoing = { raw = '[>]', rendered = '', highlight = 'RenderMarkdownOngoing', scope_highlight = nil },
waiting = { raw = '[~]', rendered = '󰥔 ', highlight = 'RenderMarkdownWaiting', scope_highlight = nil },
},
},
}) })