diff options
Diffstat (limited to 'config/essentials')
32 files changed, 840 insertions, 0 deletions
diff --git a/config/essentials/git/config b/config/essentials/git/config new file mode 100644 index 0000000..92bd6e5 --- /dev/null +++ b/config/essentials/git/config @@ -0,0 +1,5 @@ +[init] +	defaultBranch = main +[user] +	email = raymaekers.luca@gmail.com +	name = Raymaekers Luca diff --git a/config/essentials/gnupg/gpg-agent.conf b/config/essentials/gnupg/gpg-agent.conf new file mode 100644 index 0000000..5ac350f --- /dev/null +++ b/config/essentials/gnupg/gpg-agent.conf @@ -0,0 +1,2 @@ +max-cache-ttl 60480000 +default-cache-ttl 60480000 diff --git a/config/essentials/nvim/after/plugin/colorizer.lua b/config/essentials/nvim/after/plugin/colorizer.lua new file mode 100644 index 0000000..6ca374f --- /dev/null +++ b/config/essentials/nvim/after/plugin/colorizer.lua @@ -0,0 +1,6 @@ +require 'colorizer'.setup { +	'*'; +	html = { +		mode = 'foreground'; +	} +} diff --git a/config/essentials/nvim/after/plugin/colors.lua b/config/essentials/nvim/after/plugin/colors.lua new file mode 100644 index 0000000..516f097 --- /dev/null +++ b/config/essentials/nvim/after/plugin/colors.lua @@ -0,0 +1,16 @@ +function ColorMyPencils(color) +	color = color or "nord" +	vim.cmd.colorscheme(color) +	vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) +	vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) +	vim.cmd.highlight("SignColumn guibg=none") + +	vim.g.nord_uniform_diff_background = true +	vim.g.nord_contrast = true +	vim.g.nord_borders = true +	local highlights = require("nord").bufferline.highlights({ +		italic = true, +		bold = true, +	}) +end +ColorMyPencils() diff --git a/config/essentials/nvim/after/plugin/fugitive.lua b/config/essentials/nvim/after/plugin/fugitive.lua new file mode 100644 index 0000000..80c9070 --- /dev/null +++ b/config/essentials/nvim/after/plugin/fugitive.lua @@ -0,0 +1 @@ +vim.keymap.set("n", "<leader>gs", vim.cmd.Git) diff --git a/config/essentials/nvim/after/plugin/harpoon.lua b/config/essentials/nvim/after/plugin/harpoon.lua new file mode 100644 index 0000000..6f9c8ba --- /dev/null +++ b/config/essentials/nvim/after/plugin/harpoon.lua @@ -0,0 +1,10 @@ +local mark = require("harpoon.mark") +local ui = require("harpoon.ui") + +vim.keymap.set("n", "<leader>ha", mark.add_file) +vim.keymap.set("n", "<C-e>", ui.toggle_quick_menu) + +vim.keymap.set("n", "<leader>h1", function() ui.nav_file(1) end) +vim.keymap.set("n", "<leader>h2", function() ui.nav_file(2) end) +vim.keymap.set("n", "<leader>h3", function() ui.nav_file(3) end) +vim.keymap.set("n", "<leader>h4", function() ui.nav_file(4) end) diff --git a/config/essentials/nvim/after/plugin/telescope.lua b/config/essentials/nvim/after/plugin/telescope.lua new file mode 100644 index 0000000..7ea6db8 --- /dev/null +++ b/config/essentials/nvim/after/plugin/telescope.lua @@ -0,0 +1,8 @@ +local builtin = require('telescope.builtin') +vim.keymap.set('n', '<leader>pf', builtin.find_files, {}) +vim.keymap.set('n', '<leader>ps', builtin.live_grep, {}) +vim.keymap.set('n', '<C-p>', builtin.git_files, {}) +-- symbols +vim.keymap.set("n", "<leader>tse", "<cmd>lua require'telescope.builtin'.symbols{ sources = {'emoji', 'gitmoji'} }<CR>") +vim.keymap.set("n", "<leader>tsn", "<cmd>lua require'telescope.builtin'.symbols{ sources = {'nerd'} }<CR>") +vim.keymap.set("n", "<leader>tsj", "<cmd>lua require'telescope.builtin'.symbols{ sources = {'julia'} }<CR>") diff --git a/config/essentials/nvim/after/plugin/treesitter.lua b/config/essentials/nvim/after/plugin/treesitter.lua new file mode 100644 index 0000000..f7f726f --- /dev/null +++ b/config/essentials/nvim/after/plugin/treesitter.lua @@ -0,0 +1,16 @@ +require'nvim-treesitter.configs'.setup { +  ensure_installed = { "c", "lua", "vim", "help", "diff"}, + +  sync_install = false, +  auto_install = true, + +  highlight = { +    enable = true, + +    additional_vim_regex_highlighting = false, + +	autotag = { +		enable = true, +	} +  } +} diff --git a/config/essentials/nvim/after/plugin/undotree.lua b/config/essentials/nvim/after/plugin/undotree.lua new file mode 100644 index 0000000..b6b9276 --- /dev/null +++ b/config/essentials/nvim/after/plugin/undotree.lua @@ -0,0 +1 @@ +vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle) diff --git a/config/essentials/nvim/after/plugin/zk.lua b/config/essentials/nvim/after/plugin/zk.lua new file mode 100644 index 0000000..a11f6df --- /dev/null +++ b/config/essentials/nvim/after/plugin/zk.lua @@ -0,0 +1,6 @@ +vim.cmd("hi tklink ctermfg=72 guifg=#81a1c1 cterm=bold,underline gui=bold,underline") +vim.cmd("hi tkBrackets ctermfg=gray guifg=gray") +vim.cmd("hi tkHighlight ctermbg=yellow ctermfg=red cterm=bold guibg=#ebcb8b guifg=black gui=bold") +vim.cmd("hi link CalNavi CalRuler") +vim.cmd("hi tkTagSep ctermfg=gray guifg=gray") +vim.cmd("hi tkTag ctermfg=175 guifg=#d3869B") diff --git a/config/essentials/nvim/init.lua b/config/essentials/nvim/init.lua new file mode 100644 index 0000000..7772f90 --- /dev/null +++ b/config/essentials/nvim/init.lua @@ -0,0 +1 @@ +require("tlast") diff --git a/config/essentials/nvim/lua/tlast/aucommands.vim b/config/essentials/nvim/lua/tlast/aucommands.vim new file mode 100644 index 0000000..732985f --- /dev/null +++ b/config/essentials/nvim/lua/tlast/aucommands.vim @@ -0,0 +1,21 @@ +" Absolute numbers if window isn't focused +augroup numbertoggle +  autocmd! +  autocmd BufEnter,FocusGained,WinEnter * if &nu | set rnu   | endif +  autocmd BufLeave,FocusLost,WinLeave   * if &nu | set nornu | endif +augroup END + +" terminal specific layout +augroup neovim_terminal autocmd!  +	autocmd TermOpen * startinsert  +	autocmd TermOpen * :GitGutterBufferDisable +	autocmd TermOpen * :set nonumber norelativenumber signcolumn=no +	autocmd TermOpen * nnoremap <buffer> <C-c> i<C-c>  +augroup END + +" Return to last edit position +autocmd BufReadPost * +  \ if line("'\"") > 1 && line("'\"") <= line("$") | +  \   exe "normal! g`\"" | +  \ endif + diff --git a/config/essentials/nvim/lua/tlast/cmp/arduino.lua b/config/essentials/nvim/lua/tlast/cmp/arduino.lua new file mode 100755 index 0000000..777df8d --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/arduino.lua @@ -0,0 +1,3 @@ +require'lspconfig'.arduino_language_server.setup{ +	cmd = {"arduino-language-server", "-cli-config", "~/.arduinoIDE/arduino-cli.yaml"} +} diff --git a/config/essentials/nvim/lua/tlast/cmp/clangd.lua b/config/essentials/nvim/lua/tlast/cmp/clangd.lua new file mode 100644 index 0000000..810aa42 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/clangd.lua @@ -0,0 +1,2 @@ +-- c cpp +require'lspconfig'.clangd.setup{} diff --git a/config/essentials/nvim/lua/tlast/cmp/css.lua b/config/essentials/nvim/lua/tlast/cmp/css.lua new file mode 100644 index 0000000..07cb8bc --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/css.lua @@ -0,0 +1 @@ +require'lspconfig'.cssls.setup{} diff --git a/config/essentials/nvim/lua/tlast/cmp/emmet.lua b/config/essentials/nvim/lua/tlast/cmp/emmet.lua new file mode 100644 index 0000000..3193727 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/emmet.lua @@ -0,0 +1 @@ +require'lspconfig'.emmet_ls.setup{} diff --git a/config/essentials/nvim/lua/tlast/cmp/html.lua b/config/essentials/nvim/lua/tlast/cmp/html.lua new file mode 100644 index 0000000..69ed29d --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/html.lua @@ -0,0 +1,7 @@ +-- html +local capabilities = vim.lsp.protocol.make_client_capabilities() +capabilities.textDocument.completion.completionItem.snippetSupport = true + +require'lspconfig'.html.setup { +  capabilities = capabilities, +} diff --git a/config/essentials/nvim/lua/tlast/cmp/init.lua b/config/essentials/nvim/lua/tlast/cmp/init.lua new file mode 100644 index 0000000..90e6024 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/init.lua @@ -0,0 +1,10 @@ +require("tlast.cmp.setup") + +require("tlast.cmp.arduino") +require("tlast.cmp.clangd") +require("tlast.cmp.html") +require("tlast.cmp.css") +require("tlast.cmp.js") +require("tlast.cmp.emmet") +require("tlast.cmp.lua") +require("tlast.cmp.python") diff --git a/config/essentials/nvim/lua/tlast/cmp/js.lua b/config/essentials/nvim/lua/tlast/cmp/js.lua new file mode 100644 index 0000000..7188a22 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/js.lua @@ -0,0 +1 @@ +require'lspconfig'.tsserver.setup{} diff --git a/config/essentials/nvim/lua/tlast/cmp/lua.lua b/config/essentials/nvim/lua/tlast/cmp/lua.lua new file mode 100644 index 0000000..e594870 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/lua.lua @@ -0,0 +1,20 @@ +-- lua +require'lspconfig'.lua_ls.setup { +  settings = { +    Lua = { +      runtime = { +        version = 'LuaJIT', +      }, +      diagnostics = { +        globals = {'vim'}, +      }, +      workspace = { +        library = vim.api.nvim_get_runtime_file("", true), +		checkThirdParty = false, -- no prompt for luassert :) +      }, +      telemetry = { +        enable = false, +      }, +    }, +  }, +} diff --git a/config/essentials/nvim/lua/tlast/cmp/python.lua b/config/essentials/nvim/lua/tlast/cmp/python.lua new file mode 100644 index 0000000..aec86bd --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/python.lua @@ -0,0 +1 @@ +require'lspconfig'.jedi_language_server.setup{} diff --git a/config/essentials/nvim/lua/tlast/cmp/setup.lua b/config/essentials/nvim/lua/tlast/cmp/setup.lua new file mode 100644 index 0000000..67baf9e --- /dev/null +++ b/config/essentials/nvim/lua/tlast/cmp/setup.lua @@ -0,0 +1,47 @@ +local cmp = require'cmp' +cmp.setup({ +	snippet = { +		expand = function(args) +			require('luasnip').lsp_expand(args.body) +		end, +	}, +	window = { +		-- completion = cmp.config.window.bordered(), +		-- documentation = cmp.config.window.bordered(), +	}, +	mapping = cmp.mapping.preset.insert({ +		['<C-b>'] = cmp.mapping.scroll_docs(-4), +		['<C-f>'] = cmp.mapping.scroll_docs(4), +		['<C-Space>'] = cmp.mapping.complete(), +		['<C-c>'] = cmp.mapping.abort(), +		['<C-y>'] = cmp.mapping.confirm({ select = true }), +	}), +	sources = cmp.config.sources({ +		{ name = 'nvim_lua' }, +		{ name = 'nvim_lsp' }, +		{ name = 'path' }, +		{ name = 'luasnip' }, +		{ name = 'buffer'}, +	}), +}) + +cmp.setup.filetype('gitcommit', { +	sources = cmp.config.sources({ +		{ name = 'cmp_git' }, +		{ name = 'buffer' }, +	}) +}) + +cmp.setup.cmdline({ '/', '?' }, { +	mapping = cmp.mapping.preset.cmdline(), +	sources = { +		{ name = 'buffer' } +	}, +}) +cmp.setup.cmdline(':', { +	mapping = cmp.mapping.preset.cmdline(), +	sources = cmp.config.sources({ +		{ name = 'path' }, +		{ name = 'cmdline', keyword_length = 3 } +	}), +}) diff --git a/config/essentials/nvim/lua/tlast/init.lua b/config/essentials/nvim/lua/tlast/init.lua new file mode 100644 index 0000000..9a9f387 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/init.lua @@ -0,0 +1,6 @@ +require("tlast.packer") +require("tlast.remap") +require("tlast.set") +require("tlast.cmp") +require("tlast.zk") +vim.cmd.source(vim.fn.stdpath("config") .. "/lua/tlast/aucommands.vim") diff --git a/config/essentials/nvim/lua/tlast/packer.lua b/config/essentials/nvim/lua/tlast/packer.lua new file mode 100644 index 0000000..8bc9e3b --- /dev/null +++ b/config/essentials/nvim/lua/tlast/packer.lua @@ -0,0 +1,68 @@ +return require('packer').startup(function(use) +	use('wbthomason/packer.nvim') + +	-- files +	use { +		'nvim-telescope/telescope.nvim', tag = '0.1.0', +		requires = { {'nvim-lua/plenary.nvim'} } +	} +	use('nvim-telescope/telescope-symbols.nvim') +	use('theprimeagen/harpoon') + +	-- colors +	use('shaunsingh/nord.nvim') +	use('folke/tokyonight.nvim') +	use { +		'glepnir/dashboard-nvim', +		event = 'VimEnter', +		config = { +			theme = 'hyper', +		}, +		requires = {'nvim-tree/nvim-web-devicons'} +	} +	use('norcalli/nvim-colorizer.lua') + +	use('airblade/vim-gitgutter') + +	use('nvim-treesitter/nvim-treesitter', {run = ':TSUpdate'}) +	use('nvim-treesitter/playground') + +	use('mbbill/undotree') + +	use('tpope/vim-capslock') +	use('tpope/vim-commentary') +	use('tpope/vim-endwise') +	use('tpope/vim-fugitive') +	use('tpope/vim-repeat') +	use('tpope/vim-surround') +	use('tpope/vim-vinegar') + +	-- utils +	use('godlygeek/tabular') +	use('renerocksai/calendar-vim') +	use('LordTlasT/live-server') +	use('ojroques/vim-oscyank', {branch = "main"}) + +	-- objects +	use('michaeljsmith/vim-indent-object') + +	-- completion +	use('neovim/nvim-lspconfig') +	use('hrsh7th/nvim-cmp') +	use('hrsh7th/cmp-nvim-lua') +	use('hrsh7th/cmp-nvim-lsp') +	use('hrsh7th/cmp-buffer') +	use('hrsh7th/cmp-path') +	use('hrsh7th/cmp-cmdline') + +	-- snippets +	use('L3MON4D3/LuaSnip') +	use('saadparwaiz1/cmp_luasnip') + +	-- notes +	use('renerocksai/telekasten.nvim') +	use({ +		"iamcco/markdown-preview.nvim", +		run = function() vim.fn["mkdp#util#install"]() end, +	}) +end) diff --git a/config/essentials/nvim/lua/tlast/remap.lua b/config/essentials/nvim/lua/tlast/remap.lua new file mode 100644 index 0000000..d87c9d0 --- /dev/null +++ b/config/essentials/nvim/lua/tlast/remap.lua @@ -0,0 +1,62 @@ +vim.g.mapleader = " " + +vim.keymap.set("n", "-", vim.cmd.Ex) + +-- moving +vim.keymap.set("i", "<C-a>", "<C-o>I") +vim.keymap.set("i", "<C-e>", "<C-o>A") + +-- add closing +vim.keymap.set("i", "\"", "\"\"<Left>") +vim.keymap.set("i", "'", "''<Left>") +vim.keymap.set("i", "(", "()<Left>") +vim.keymap.set("i", "[", "[]<Left>") +vim.keymap.set("i", "{", "{}<Left>") +vim.keymap.set("i", "{<CR>", "{<CR>}<C-o>O") +vim.keymap.set("i", "{;<CR>", "{<CR>};<C-o>O") + +-- buffers +vim.keymap.set("n", "gb", "<cmd>buffers<CR>:buffer<Space>") +vim.keymap.set("n", "<leader>q", "<cmd>q!<CR>") +vim.keymap.set("n", "<leader>Q", "<cmd>qa!<CR>") + +-- Windows +vim.keymap.set({"n", "i", "v", "c", "o", "s", "x"}, "<A-h>", "<C-W>h") +vim.keymap.set({"n", "i", "v", "c", "o", "s", "x"}, "<A-j>", "<C-W>j") +vim.keymap.set({"n", "i", "v", "c", "o", "s", "x"}, "<A-k>", "<C-W>k") +vim.keymap.set({"n", "i", "v", "c", "o", "s", "x"}, "<A-l>", "<C-W>l") +vim.keymap.set({"n", "i", "v", "c", "o", "s", "x"}, "<A-o>", "<C-W>o") + +-- move visual selection up/down wards +vim.keymap.set("v", "J",  "<cmd>m '>+1<CR>gv=gv") +vim.keymap.set("v", "K", "<cmd>m '<-2<CR>gv=gv") + +-- Don't move! +vim.keymap.set("n", "J", "mzJ`z") + +-- clipboard +vim.keymap.set("n", "<leader>y", "\"+y") +vim.keymap.set("n", "<leader>o", "<Plug>OSCYank") + +-- scripts +vim.keymap.set("n", "<leader>x", "<cmd>!chmod +x %<CR>", { silent = true}) + +-- replace +vim.keymap.set("n", "<leader>s", [[:%s/\<<C-r><C-w>\>/<C-r><C-w><C-w>/gI<Left><Left><Left>]]) + +-- templates +vim.keymap.set("n", "<leader>rt", ":r " .. vim.fn.stdpath("config") .. "/templates/") + +-- hide all +local s = {hidden_all = 0} +vim.keymap.set("n", "<C-h>", function () +	s.hidden_all = 1 - s.hidden_all +	local opt = s.hidden_all == 0 +	vim.opt.showmode = opt +	vim.opt.ruler = opt +	vim.opt.nu = opt +	vim.opt.rnu = opt +	vim.opt.showcmd = opt +	vim.opt.laststatus = opt and 2 or 0 +	vim.opt.signcolumn = opt and "yes" or "no" +end) diff --git a/config/essentials/nvim/lua/tlast/set.lua b/config/essentials/nvim/lua/tlast/set.lua new file mode 100644 index 0000000..ab582bb --- /dev/null +++ b/config/essentials/nvim/lua/tlast/set.lua @@ -0,0 +1,36 @@ +vim.opt.clipboard = "unnamed" + +vim.opt.termguicolors = true + +vim.opt.number = true +vim.opt.relativenumber = true +vim.opt.showmatch = true +vim.opt.matchtime = 0 +vim.opt.showcmd = true +vim.opt.cursorline = true +vim.opt.ruler = true + +vim.opt.wildmenu = true +vim.opt.incsearch = true + +vim.opt.mouse = "" + +vim.opt.tabstop = 4 +vim.opt.shiftwidth = 4 +vim.opt.backspace = "indent,eol,start" + +vim.opt.signcolumn = "yes" +vim.opt.updatetime = 100 +vim.opt.laststatus = 2 +vim.opt.history = 200 +vim.opt.encoding = "utf-8" + +vim.opt.smartindent = true +vim.opt.scrolloff = 8 +vim.opt.textwidth = 74 + +vim.opt.ignorecase = true +vim.opt.smartcase = true + +vim.opt.swapfile = false +vim.opt.backup = false diff --git a/config/essentials/nvim/lua/tlast/zk.lua b/config/essentials/nvim/lua/tlast/zk.lua new file mode 100644 index 0000000..104c51c --- /dev/null +++ b/config/essentials/nvim/lua/tlast/zk.lua @@ -0,0 +1,75 @@ +local home = vim.fn.expand("~/docs/zk") +require('telekasten').setup({ +	home         = home, +	take_over_my_home = true, +	auto_set_filetype = true, +	auto_set_syntax = true, +	dailies      = home .. '/' .. 'daily', +	weeklies     = home .. '/' .. 'weekly', +	templates    = home .. '/' .. 'templates', +	image_subdir = "img", +	extension    = ".md", +	new_note_filename = "title", +	uuid_type = "%Y%m%d%H%M", +	uuid_sep = "-", +	filename_space_subst = nil, +	follow_creates_nonexisting = true, +	dailies_create_nonexisting = true, +	weeklies_create_nonexisting = true, +	journal_auto_open = false, +	template_new_note = home .. '/' .. 'templates/new_note.md', +	template_new_daily = home .. '/' .. 'templates/daily.md', +	template_new_weekly= home .. '/' .. 'templates/weekly.md', +	image_link_style = "markdown", +	sort = "filename", +	plug_into_calendar = true, +	calendar_opts = { +		weeknm = 4, +		calendar_monday = 1, +		calendar_mark = 'left-fit', +	}, +	close_after_yanking = false, +	insert_after_inserting = true, +	tag_notation = "#tag", +	command_palette_theme = "dropdown", +	show_tags_theme = "ivy", +	subdirs_in_links = true, +	template_handling = "smart", +	new_note_location = "smart", +	rename_update_links = true, +	vaults = { +		cs = { +			home = home .. '/' .. 'cs', +			template_new_note = home .. '/' .. 'templates/new_note.md', +		}, +	}, +	media_previewer = "telescope-media-files", +	follow_url_fallback = nil, +}) + +vim.keymap.set("n", "<leader>z", require('telekasten').panel) +vim.keymap.set("n", "<leader>zC", "<cmd>CalendarT") +vim.keymap.set("n", "<leader>zF", require('telekasten').find_friends) +vim.keymap.set("n", "<leader>zI", "<cmd>lua require('telekasten').insert_img_link({ i=true })<cr>") +vim.keymap.set("n", "<leader>zN", require('telekasten').new_templated_note) +vim.keymap.set("n", "<leader>zT", require('telekasten').goto_today) +vim.keymap.set("n", "<leader>zW", require('telekasten').goto_thisweek) +vim.keymap.set("n", "<leader>za", require('telekasten').show_tags) +vim.keymap.set("n", "<leader>zb", require('telekasten').show_backlinks) +vim.keymap.set("n", "<leader>zc", require('telekasten').show_calendar) +vim.keymap.set("n", "<leader>zd", require('telekasten').find_daily_notes) +vim.keymap.set("n", "<leader>zf", require('telekasten').find_notes) +vim.keymap.set("n", "<leader>zg", require('telekasten').search_notes) +vim.keymap.set("n", "<leader>zi", require('telekasten').paste_img_and_link) +vim.keymap.set("n", "<leader>zm", require('telekasten').browse_media) +vim.keymap.set("n", "<leader>zn", require('telekasten').new_note) +vim.keymap.set("n", "<leader>zp", require('telekasten').preview_img) +vim.keymap.set("n", "<leader>zr", require('telekasten').rename_note) +vim.keymap.set("n", "<leader>zs", require('telekasten').switch_vault) +vim.keymap.set("n", "<leader>zt", require('telekasten').toggle_todo) +vim.keymap.set("n", "<leader>zt","<cmd>lua require('telekasten').toggle_todo({ i=true })<cr>") +vim.keymap.set("n", "<leader>zw", require('telekasten').find_weekly_notes) +vim.keymap.set("n", "<leader>zy", require('telekasten').yank_notelink) +vim.keymap.set("n", "<leader>zz", require('telekasten').follow_link) +vim.keymap.set("n", "<leader>#", require('telekasten').show_tags) +vim.keymap.set("n", "<leader>[", "<cmd>lua require('telekasten').insert_link({ i=true })<cr>") diff --git a/config/essentials/nvim/templates/cpp.make b/config/essentials/nvim/templates/cpp.make new file mode 100644 index 0000000..474cd78 --- /dev/null +++ b/config/essentials/nvim/templates/cpp.make @@ -0,0 +1,4 @@ +FILE =  + +$(FILE): $(FILE).cpp +	c++ -Wall -Werror -ggdb $(FILE).cpp -o $(FILE) diff --git a/config/essentials/nvim/templates/main.cpp b/config/essentials/nvim/templates/main.cpp new file mode 100644 index 0000000..3d4f0fb --- /dev/null +++ b/config/essentials/nvim/templates/main.cpp @@ -0,0 +1,6 @@ +#include <iostream> +using namespace std; + +int main() { +	return 0; +} diff --git a/config/essentials/zsh/aliases.zsh b/config/essentials/zsh/aliases.zsh new file mode 100644 index 0000000..1904c78 --- /dev/null +++ b/config/essentials/zsh/aliases.zsh @@ -0,0 +1,291 @@ +#!/bin/zsh +# s/alias \([^-]\)/alias -g \1 + +if [ -x /usr/bin/dircolors ]; then +    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" +    # alias ls='ls -h --color --group-directories-first' +    #alias dir='dir --color=auto' +    #alias vdir='vdir --color=auto' + +    alias grep='grep --color=auto' +    alias fgrep='fgrep --color=auto' +    alias egrep='egrep --color=auto' +    alias ip='ip -color=auto' +fi + +alias -g l='ls -l' +alias -g ll='ls -la' +alias -g la='ls -aF' +alias -g lst='ls --tree' +alias -g lst1='ls --tree -L1' +alias -g lst2='ls --tree -L2' +alias -g lst3='ls --tree -L3' +alias ls.='ls -dl .*' +alias ls='exa --icons --sort extension --group-directories-first' + +alias nv='nvim' +alias -g vimp="vim -c 'PlugInstall'" +alias yay='pikaur' +alias dopac='doas pacman' +alias orpac='pacman -Qtdq | dopac -Rns - 2> /dev/null || echo "No orphans."' +alias pacup='dopac -Syu' +alias pacsi='pacman -Si' +alias pacss='pacman -Ss' +alias pacqs='pacman -Qs' +alias pacql='pacman -Ql' +alias dopacs='dopac -S' +#  +#  +# ----------------------------------------------------------- + +alias grub-update='doas grub-mkconfig -o /boot/grub/grub.cfg' +  +alias -g xclipp='xclip -selection clipboard -r' +alias -g xclipo='xclip -o -selection clipboard -r' +alias -g xclippc='xclip -o -selection primary | xclip -selection clipboard -r' +alias -g xclipcp='xclip -o -selection clipboard | xclip' +  +alias -g xrandr-rpgmaker='xrandr --auto --output VGA-1 --mode 1024x768 --left-of HDMI-1 && ~/.fehbg' +alias -g xrandr-default='xrandr --auto --output VGA-1 --mode 1920x1080 --left-of HDMI-1 --output HDMI-1 --mode 1920x1080 && ~/.fehbg' +  +alias mv='mv -i' +alias df='df -h' +alias -g dud='du -d 1 -h | sort -h' +alias -g d='du --max-depth=0 -h' +alias df='df -h' +alias shred='shred -uz' +alias lsblk='lsblk -o name,type,fsused,size,fstype,label,mountpoint' +alias -g floc='doas find / -type "f" 2> /dev/null | grep' +alias -g dloc='doas find / -type "d" 2> /dev/null | grep' +alias lsblk='lsblk -o name,type,fsused,size,fstype,label,mountpoint' +alias -g fif='find . -type "f" | grep' +alias -g fid='find . -type "d" | grep' +alias scr='nv "${vimf:=/tmp/$(uuidgen)}" ; rm -f "$vimf"' +alias vidlen='ffprobe -show_entries format=duration -v quiet -of csv="p=0" -i' +alias whatsmyip='curl "ifconfig.me"' +alias icognito='unset HISTFILE' +alias penv='python -m venv' +alias ytclipo='yt-dlp "$(xclip -sel c -o)"' + +alias -g '...'='../..' +alias -g '....'='../../..' +alias -g bg='&; disown' +alias -g cx='chmod +x' +alias -g ch='chown ${USER}:${USER} -R' +alias -g hl='--help |& less -r' +alias -g pi='ping archlinux.org -c4' +alias -g sba='source bin/activate' +alias -g smc='systemctl' +alias -g smcu='systemctl --user' +alias -g sr='source ~/.zshrc && rehash' +alias -g wf='doas wipefs -a' + +# quick config +alias -g ez='$EDITOR ~/.zshrc' +alias -g eza='$EDITOR ~/.config/zsh/aliases.zsh' +alias -g eto='$EDITOR ~/sync/TODO' + +alias -g ff='`fzffile`' +alias -g fd='`fzfdir`' +alias -g fdf='`fzfdirfile`' + +alias -s conf="$EDITOR" +alias -s txt="$EDITOR" +alias -s c="$EDITOR" +alias -s z80="$EDITOR" +alias -s zip='unzip -l' +alias -s tar='tar tf' + +# oh-my-zsh git aliases +alias g='git' + +alias ga='git add' +alias gaa='git add --all' +alias gapa='git add --patch' +alias gau='git add --update' +alias gav='git add --verbose' +alias gap='git apply' +alias gapt='git apply --3way' + +alias gb='git branch' +alias gba='git branch --all' +alias gbd='git branch --delete' +alias gbda='git branch --no-color --merged | command grep -vE "^([+*]|\s*($(git_main_branch)|$(git_develop_branch))\s*$)" | command xargs git branch --delete 2>/dev/null' +alias gbD='git branch --delete --force' +alias gbl='git blame -b -w' +alias gbnm='git branch --no-merged' +alias gbr='git branch --remote' +alias gbs='git bisect' +alias gbsb='git bisect bad' +alias gbsg='git bisect good' +alias gbsr='git bisect reset' +alias gbss='git bisect start' + +alias gc='git commit --verbose' +alias gc!='git commit --verbose --amend' +alias gcn!='git commit --verbose --no-edit --amend' +alias gca='git commit --verbose --all' +alias gca!='git commit --verbose --all --amend' +alias gcan!='git commit --verbose --all --no-edit --amend' +alias gcans!='git commit --verbose --all --signoff --no-edit --amend' +alias gcam='git commit --all --message' +alias gcsm='git commit --signoff --message' +alias gcas='git commit --all --signoff' +alias gcasm='git commit --all --signoff --message' +alias gcb='git checkout -b' +alias gcf='git config --list' + +alias gcl='git clone --recurse-submodules' +alias gclean='git clean --interactive -d' +alias gpristine='git reset --hard && git clean --force -dx' +alias gcm='git checkout $(git_main_branch)' +alias gcd='git checkout $(git_develop_branch)' +alias gcmsg='git commit --message' +alias gco='git checkout' +alias gcor='git checkout --recurse-submodules' +alias gcount='git shortlog --summary --numbered' +alias gcp='git cherry-pick' +alias gcpa='git cherry-pick --abort' +alias gcpc='git cherry-pick --continue' +alias gcs='git commit --gpg-sign' +alias gcss='git commit --gpg-sign --signoff' +alias gcssm='git commit --gpg-sign --signoff --message' + +alias gd='git diff' +alias gdca='git diff --cached' +alias gdcw='git diff --cached --word-diff' +alias gdct='git describe --tags $(git rev-list --tags --max-count=1)' +alias gds='git diff --staged' +alias gdt='git diff-tree --no-commit-id --name-only -r' +alias gdup='git diff @{upstream}' +alias gdw='git diff --word-diff' + +alias ggpur='ggu' +alias ggpull='git pull origin "$(git_current_branch)"' +alias ggpush='git push origin "$(git_current_branch)"' + +alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)' +alias gpsup='git push --set-upstream origin $(git_current_branch)' + +alias ghh='git help' + +alias gignore='git update-index --assume-unchanged' +alias gignored='git ls-files -v | grep "^[[:lower:]]"' +alias git-svn-dcommit-push='git svn dcommit && git push github $(git_main_branch):svntrunk' + +alias gk='\gitk --all --branches &!' +alias gke='\gitk --all $(git log --walk-reflogs --pretty=%h) &!' + +alias gl='git pull' +alias glg='git log --stat' +alias glgp='git log --stat --patch' +alias glgg='git log --graph' +alias glgga='git log --graph --decorate --all' +alias glgm='git log --graph --max-count=10' +alias glo='git log --oneline --decorate' +alias glol="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset'" +alias glols="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --stat" +alias glod="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset'" +alias glods="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short" +alias glola="git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ar) %C(bold blue)<%an>%Creset' --all" +alias glog='git log --oneline --decorate --graph' +alias gloga='git log --oneline --decorate --graph --all' +alias glp="_git_log_prettily" + +alias gm='git merge' +alias gmom='git merge origin/$(git_main_branch)' +alias gmtl='git mergetool --no-prompt' +alias gmtlvim='git mergetool --no-prompt --tool=vimdiff' +alias gmum='git merge upstream/$(git_main_branch)' +alias gma='git merge --abort' + +alias gp='git push' +alias gpd='git push --dry-run' +alias gpf='git push --force-with-lease' +alias gpf!='git push --force' +alias gpoat='git push origin --all && git push origin --tags' +alias gpr='git pull --rebase' +alias gpu='git push upstream' +alias gpv='git push --verbose' + +alias gr='git remote' +alias gra='git remote add' +alias grb='git rebase' +alias grba='git rebase --abort' +alias grbc='git rebase --continue' +alias grbd='git rebase $(git_develop_branch)' +alias grbi='git rebase --interactive' +alias grbm='git rebase $(git_main_branch)' +alias grbom='git rebase origin/$(git_main_branch)' +alias grbo='git rebase --onto' +alias grbs='git rebase --skip' +alias grev='git revert' +alias grh='git reset' +alias grhh='git reset --hard' +alias groh='git reset origin/$(git_current_branch) --hard' +alias grm='git rm' +alias grmc='git rm --cached' +alias grmv='git remote rename' +alias grrm='git remote remove' +alias grs='git restore' +alias grset='git remote set-url' +alias grss='git restore --source' +alias grst='git restore --staged' +alias grt='cd "$(git rev-parse --show-toplevel || echo .)"' +alias gru='git reset --' +alias grup='git remote update' +alias grv='git remote --verbose' + +alias gsb='git status --short --branch' +alias gsd='git svn dcommit' +alias gsh='git show' +alias gsi='git submodule init' +alias gsps='git show --pretty=short --show-signature' +alias gsr='git svn rebase' +alias gss='git status --short' +alias gst='git status' + +alias gsta='git stash push' +alias gstaa='git stash apply' +alias gstc='git stash clear' +alias gstd='git stash drop' +alias gstl='git stash list' +alias gstp='git stash pop' +alias gsts='git stash show --text' +alias gstu='gsta --include-untracked' +alias gstall='git stash --all' +alias gsu='git submodule update' +alias gsw='git switch' +alias gswc='git switch --create' +alias gswm='git switch $(git_main_branch)' +alias gswd='git switch $(git_develop_branch)' + +alias gts='git tag --sign' +alias gtv='git tag | sort -V' +alias gtl='gtl(){ git tag --sort=-v:refname -n --list "${1}*" }; noglob gtl' + +alias gunignore='git update-index --no-assume-unchanged' +alias gunwip='git log --max-count=1 | grep -q -c "\--wip--" && git reset HEAD~1' +alias gup='git pull --rebase' +alias gupv='git pull --rebase --verbose' +alias gupa='git pull --rebase --autostash' +alias gupav='git pull --rebase --autostash --verbose' +alias gupom='git pull --rebase origin $(git_main_branch)' +alias gupomi='git pull --rebase=interactive origin $(git_main_branch)' +alias glum='git pull upstream $(git_main_branch)' +alias gluc='git pull upstream $(git_current_branch)' + +alias gwch='git whatchanged -p --abbrev-commit --pretty=medium' +alias gwip='git add -A; git rm $(git ls-files --deleted) 2> /dev/null; git commit --no-verify --no-gpg-sign --message "--wip-- [skip ci]"' + +alias gwt='git worktree' +alias gwta='git worktree add' +alias gwtls='git worktree list' +alias gwtmv='git worktree move' +alias gwtrm='git worktree remove' + +alias gam='git am' +alias gamc='git am --continue' +alias gams='git am --skip' +alias gama='git am --abort' +alias gamscp='git am --show-current-patch' diff --git a/config/essentials/zsh/functions.zsh b/config/essentials/zsh/functions.zsh new file mode 100644 index 0000000..a73ea15 --- /dev/null +++ b/config/essentials/zsh/functions.zsh @@ -0,0 +1,79 @@ +#!/bin/zsh + +vmp() { +    col -b | \ +    vim -MR \ +    -c 'set ft=man nolist nonu nornu' +} +vimh() { vim -c "help $1" -c 'call feedkeys("\<c-w>o")' } + +nnn() { test -z "$NNNLVL" && /usr/bin/nnn "$@" || exit } +ranger() { test -z "$RANGER_LEVEL" && /usr/bin/ranger "$@" || exit } + +# googoo +o () +{ +	f="$(fzffile $1)" +	test "$#" -gt 0 && shift +	test -n "$f" && $EDITOR $@ "$f" +} +go () +{ +	d="$(fzfdir $1)" +	test -d "$d" && cd "$d" +} +ogo () +{ +	d="$(fzfdirfile $1)" +	test -d "$d" && cd "$d" +} + +ipc ()  +{ +   if [[ "$(ip link show eno1 | awk -F, 'NR=1 {print $3}')" == "UP" ]] +   then +        doas ip link set eno1 down +    else +        doas ip link set eno1 up  +   fi +} + +calc () { echo "$@" | bc -l } + +unique () { +	f="/tmp/$(uuidgen)" +	awk '!x[$0]++' "$1" > "$f" +	mv "$f" "$1" +} + +clip () { echo -n "$@" | xclip -selection clipboard -rmlastnl } + +fzh () { +    choice="$(tac $HOME/.config/zsh/histfile | fzf)" +    test -z "${choice}" && return +    echo "${choice}" >> "${HOME}/.config/zsh/histfile" +    eval "${choice}" +} + +unzipp () { +    file=$1 +    shift +    unzip $file $@ || exit 1 +    rm $file +} + +# fix long waiting time +__git_files () {  +    _wanted files expl 'local files' _files      +} + +# allows changing to parent dir of file +function cd () { +    if (( ${#argv} == 1 )) && [[ -f ${1} ]]; then +        [[ ! -e ${1:h} ]] && return 1 +        print "Correcting ${1} to ${1:h}" +        builtin cd ${1:h} +    else +        builtin cd "$@" +    fi +} diff --git a/config/essentials/zsh/variables.zsh b/config/essentials/zsh/variables.zsh new file mode 100644 index 0000000..fd8099a --- /dev/null +++ b/config/essentials/zsh/variables.zsh @@ -0,0 +1,27 @@ +#!/bin/zsh +# VARIABLES +export ZOT="${HOME}/zot" + +export EDITOR="nvim" +export VISUAL="nvim" + +# colored GCC warnings and errors +export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# Prevent ranger from loading config twice +export RANGER_LOAD_DEFAULT_RC=FALSE + +# Color of zsh-suggestion +export ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=10' +export STARSHIP_CONFIG="${HOME}/.config/starship/starship.toml" +export FUNCNEST=10000 +export fpath=($HOME/.config/zsh/completion/ $fpath) + +# Config files from .config +export XINITRC="$HOME/.config/x11/xinitrc" +export GNUPGHOME="$HOME/.config/gnupg" +export GTK2_RC_FILES="$HOME/.config/gtk-2.0/gtkrc-2.0" +# export VIMINIT="source ~/.config/vim/vimrc" + +export PASSWORD_STORE_CLIP_TIME=5 +export DISPLAY=:0  | 
