From 1710a9f77925f145447fbdfd0999eb60f0956d1e Mon Sep 17 00:00:00 2001 From: primardj Date: Sat, 20 Jul 2024 22:26:19 +0200 Subject: [PATCH] add nvim packages --- dotconfig/nvim/init.lua | 74 ++++++++++ dotconfig/nvim/lua/plugins.lua | 45 +++++++ dotconfig/nvim/plugin/packer_compiled.lua | 156 ++++++++++++++++++++++ 3 files changed, 275 insertions(+) create mode 100644 dotconfig/nvim/init.lua create mode 100644 dotconfig/nvim/lua/plugins.lua create mode 100644 dotconfig/nvim/plugin/packer_compiled.lua diff --git a/dotconfig/nvim/init.lua b/dotconfig/nvim/init.lua new file mode 100644 index 0000000..8e07a75 --- /dev/null +++ b/dotconfig/nvim/init.lua @@ -0,0 +1,74 @@ + +-- define default variables + +vim.opt.clipboard = { "unnamed", "unnamedplus" } +vim.opt.number = true +vim.opt.relativenumber = true +vim.opt.scrolloff = 5 +vim.opt.autoindent = true +vim.opt.smartindent = true + +-- def tab + +vim.opt.expandtab = true +vim.opt.smarttab = true +vim.opt.shiftwidth = 4 +vim.opt.tabstop = 4 + +-- define colorscheme + +vim.cmd 'colorscheme vim' + +-- redefine controls +-- + +-- ctrl windows + +vim.keymap.set('n', '', 'j') +vim.keymap.set('n', '', 'k') +vim.keymap.set('n', '', 'h') +vim.keymap.set('n', '', 'l') + +-- ctrl nerdtree + +vim.keymap.set('n', '', ':NERDTreeToggle') + +require('plugins') + +require('lualine').setup { + options = { theme = 'codedark'} +} + +-- default config: +require('peek').setup({ + auto_load = true, -- whether to automatically load preview when + -- entering another markdown buffer + close_on_bdelete = true, -- close preview window on buffer delete + + syntax = true, -- enable syntax highlighting, affects performance + + theme = 'dark', -- 'dark' or 'light' + + update_on_change = true, + + app = 'webview', -- 'webview', 'browser', string or a table of strings + -- explained below + + filetype = { 'markdown' },-- list of filetypes to recognize as markdown + + -- relevant if update_on_change is true + throttle_at = 200000, -- start throttling when file exceeds this + -- amount of bytes in size + throttle_time = 'auto', -- minimum amount of time in milliseconds + -- that has to pass before starting new render +}) + +vim.api.nvim_create_user_command('PeekOpen', require('peek').open, {}) +vim.api.nvim_create_user_command('PeekClose', require('peek').close, {}) + + + + + + + diff --git a/dotconfig/nvim/lua/plugins.lua b/dotconfig/nvim/lua/plugins.lua new file mode 100644 index 0000000..d46cdcc --- /dev/null +++ b/dotconfig/nvim/lua/plugins.lua @@ -0,0 +1,45 @@ + +return require('packer').startup(function(use) + -- packer can manage itself + + use 'wbthomason/packer.nvim' + --use 'nvim-lua/plenary.nvim' + --use { 'nvim-telescope/telescope.nvim', tag = '0.1.3', + -- requires = { {'nvim-lua/plenary.nvim'} } + -- } + use { + 'nvim-lualine/lualine.nvim', + requires = { + 'nvim-tree/nvim-web-devicons', opt = true + } + } + use 'preservim/nerdtree' + use { + 'lervag/vimtex', + opt = true, + config = function () + vim.g.vimtex_view_method = 'zathura' + --vim.g.vimtex_view_general_viewer = 'zathura' + --vim.g.vimtex_view_general_options = [[--unique file:@pdf\#src:@line@tex]] + vim.g.vimtex_compiler_latexmk_engines = { + _ = '-xelatex' + } + vim.g.tex_comment_nospell = 1 + vim.g.vimtex_compiler_progname = 'nvr' + --vim.g.vimtex_view_general_options_latexmk = '--unique' + end, + ft = 'tex' + } + + use 'elkowar/yuck.vim' + + + use({ 'toppair/peek.nvim', run = 'deno task --quiet build:fast' }) + + use 'alexghergh/nvim-tmux-navigation' + + + +end) + + diff --git a/dotconfig/nvim/plugin/packer_compiled.lua b/dotconfig/nvim/plugin/packer_compiled.lua new file mode 100644 index 0000000..10f03b5 --- /dev/null +++ b/dotconfig/nvim/plugin/packer_compiled.lua @@ -0,0 +1,156 @@ +-- Automatically generated packer.nvim plugin loader code + +if vim.api.nvim_call_function('has', {'nvim-0.5'}) ~= 1 then + vim.api.nvim_command('echohl WarningMsg | echom "Invalid Neovim version for packer.nvim! | echohl None"') + return +end + +vim.api.nvim_command('packadd packer.nvim') + +local no_errors, error_msg = pcall(function() + +_G._packer = _G._packer or {} +_G._packer.inside_compile = true + +local time +local profile_info +local should_profile = false +if should_profile then + local hrtime = vim.loop.hrtime + profile_info = {} + time = function(chunk, start) + if start then + profile_info[chunk] = hrtime() + else + profile_info[chunk] = (hrtime() - profile_info[chunk]) / 1e6 + end + end +else + time = function(chunk, start) end +end + +local function save_profiles(threshold) + local sorted_times = {} + for chunk_name, time_taken in pairs(profile_info) do + sorted_times[#sorted_times + 1] = {chunk_name, time_taken} + end + table.sort(sorted_times, function(a, b) return a[2] > b[2] end) + local results = {} + for i, elem in ipairs(sorted_times) do + if not threshold or threshold and elem[2] > threshold then + results[i] = elem[1] .. ' took ' .. elem[2] .. 'ms' + end + end + if threshold then + table.insert(results, '(Only showing plugins that took longer than ' .. threshold .. ' ms ' .. 'to load)') + end + + _G._packer.profile_output = results +end + +time([[Luarocks path setup]], true) +local package_path_str = "/home/primardj/.cache/nvim/packer_hererocks/2.1.1713773202/share/lua/5.1/?.lua;/home/primardj/.cache/nvim/packer_hererocks/2.1.1713773202/share/lua/5.1/?/init.lua;/home/primardj/.cache/nvim/packer_hererocks/2.1.1713773202/lib/luarocks/rocks-5.1/?.lua;/home/primardj/.cache/nvim/packer_hererocks/2.1.1713773202/lib/luarocks/rocks-5.1/?/init.lua" +local install_cpath_pattern = "/home/primardj/.cache/nvim/packer_hererocks/2.1.1713773202/lib/lua/5.1/?.so" +if not string.find(package.path, package_path_str, 1, true) then + package.path = package.path .. ';' .. package_path_str +end + +if not string.find(package.cpath, install_cpath_pattern, 1, true) then + package.cpath = package.cpath .. ';' .. install_cpath_pattern +end + +time([[Luarocks path setup]], false) +time([[try_loadstring definition]], true) +local function try_loadstring(s, component, name) + local success, result = pcall(loadstring(s), name, _G.packer_plugins[name]) + if not success then + vim.schedule(function() + vim.api.nvim_notify('packer.nvim: Error running ' .. component .. ' for ' .. name .. ': ' .. result, vim.log.levels.ERROR, {}) + end) + end + return result +end + +time([[try_loadstring definition]], false) +time([[Defining packer_plugins]], true) +_G.packer_plugins = { + ["lualine.nvim"] = { + loaded = true, + path = "/home/primardj/.local/share/nvim/site/pack/packer/start/lualine.nvim", + url = "https://github.com/nvim-lualine/lualine.nvim" + }, + nerdtree = { + loaded = true, + path = "/home/primardj/.local/share/nvim/site/pack/packer/start/nerdtree", + url = "https://github.com/preservim/nerdtree" + }, + ["nvim-tmux-navigation"] = { + loaded = true, + path = "/home/primardj/.local/share/nvim/site/pack/packer/start/nvim-tmux-navigation", + url = "https://github.com/alexghergh/nvim-tmux-navigation" + }, + ["nvim-web-devicons"] = { + loaded = false, + needs_bufread = false, + path = "/home/primardj/.local/share/nvim/site/pack/packer/opt/nvim-web-devicons", + url = "https://github.com/nvim-tree/nvim-web-devicons" + }, + ["packer.nvim"] = { + loaded = true, + path = "/home/primardj/.local/share/nvim/site/pack/packer/start/packer.nvim", + url = "https://github.com/wbthomason/packer.nvim" + }, + ["peek.nvim"] = { + loaded = true, + path = "/home/primardj/.local/share/nvim/site/pack/packer/start/peek.nvim", + url = "https://github.com/toppair/peek.nvim" + }, + vimtex = { + config = { "\27LJ\2\nĖ\1\0\0\2\0\t\0\0176\0\0\0009\0\1\0'\1\3\0=\1\2\0006\0\0\0009\0\1\0005\1\5\0=\1\4\0006\0\0\0009\0\1\0)\1\1\0=\1\6\0006\0\0\0009\0\1\0'\1\b\0=\1\a\0K\0\1\0\bnvr\29vimtex_compiler_progname\24tex_comment_nospell\1\0\1\6_\r-xelatex$vimtex_compiler_latexmk_engines\fzathura\23vimtex_view_method\6g\bvim\0" }, + loaded = false, + needs_bufread = true, + only_cond = false, + path = "/home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex", + url = "https://github.com/lervag/vimtex" + }, + ["yuck.vim"] = { + loaded = true, + path = "/home/primardj/.local/share/nvim/site/pack/packer/start/yuck.vim", + url = "https://github.com/elkowar/yuck.vim" + } +} + +time([[Defining packer_plugins]], false) +vim.cmd [[augroup packer_load_aucmds]] +vim.cmd [[au!]] + -- Filetype lazy-loads +time([[Defining lazy-load filetype autocommands]], true) +vim.cmd [[au FileType tex ++once lua require("packer.load")({'vimtex'}, { ft = "tex" }, _G.packer_plugins)]] +time([[Defining lazy-load filetype autocommands]], false) +vim.cmd("augroup END") +vim.cmd [[augroup filetypedetect]] +time([[Sourcing ftdetect script at: /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/cls.vim]], true) +vim.cmd [[source /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/cls.vim]] +time([[Sourcing ftdetect script at: /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/cls.vim]], false) +time([[Sourcing ftdetect script at: /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/tex.vim]], true) +vim.cmd [[source /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/tex.vim]] +time([[Sourcing ftdetect script at: /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/tex.vim]], false) +time([[Sourcing ftdetect script at: /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/tikz.vim]], true) +vim.cmd [[source /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/tikz.vim]] +time([[Sourcing ftdetect script at: /home/primardj/.local/share/nvim/site/pack/packer/opt/vimtex/ftdetect/tikz.vim]], false) +vim.cmd("augroup END") + +_G._packer.inside_compile = false +if _G._packer.needs_bufread == true then + vim.cmd("doautocmd BufRead") +end +_G._packer.needs_bufread = false + +if should_profile then save_profiles() end + +end) + +if not no_errors then + error_msg = error_msg:gsub('"', '\\"') + vim.api.nvim_command('echohl ErrorMsg | echom "Error in packer_compiled: '..error_msg..'" | echom "Please check your config for correctness" | echohl None') +end