From 0a8ded6db3e615f296784b3eec7beeaadedc5fae Mon Sep 17 00:00:00 2001 From: Ethan Simmons Date: Sat, 8 Jun 2024 14:14:26 -0500 Subject: [PATCH] Move nvim config to shared --- .../dotfiles/nvim/lua/config/plugins/init.lua | 11 +-- .../dotfiles/nvim/lua/config/settings.lua | 2 - hosts/alpheratz/home.nix | 3 +- .../dotfiles/nvim/lua/config/plugins/init.lua | 17 ++--- .../dotfiles/nvim/lua/config/settings.lua | 1 - hosts/ankaa/home.nix | 2 +- hosts/shared/dotfiles/nvim/init.lua | 9 +++ .../dotfiles/nvim/lua/config/keymaps.lua | 17 +++++ .../dotfiles/nvim/lua/config/plugins/init.lua | 53 ++++++++++++++ .../nvim/lua/config/plugins/lspconfig.lua | 67 ++++++++++++++++++ .../nvim/lua/config/plugins/lualine.lua | 36 ++++++++++ .../dotfiles/nvim/lua/config/settings.lua | 38 ++++++++++ .../nvim/lua/config/vimscript/init.vim | 9 +++ ...%eesim%.config%nvim%lua%config%keymaps.lua | Bin 0 -> 6925 bytes ...nfig%nvim%lua%config%plugins%lspconfig.lua | Bin 0 -> 17906 bytes hosts/shared/dotfiles/tmux/.tmux.conf | 20 ++++++ main.log | 11 +++ overlays/llama-cpp.nix | 6 ++ 18 files changed, 278 insertions(+), 24 deletions(-) create mode 100644 hosts/shared/dotfiles/nvim/init.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/keymaps.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/plugins/init.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/plugins/lspconfig.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/plugins/lualine.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/settings.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/vimscript/init.vim create mode 100644 hosts/shared/dotfiles/nvim/lua/config/~/.vimdid/%home%eesim%.config%nvim%lua%config%keymaps.lua create mode 100644 hosts/shared/dotfiles/nvim/lua/config/~/.vimdid/%home%eesim%.config%nvim%lua%config%plugins%lspconfig.lua create mode 100644 hosts/shared/dotfiles/tmux/.tmux.conf create mode 100644 main.log create mode 100644 overlays/llama-cpp.nix diff --git a/hosts/alpheratz/dotfiles/nvim/lua/config/plugins/init.lua b/hosts/alpheratz/dotfiles/nvim/lua/config/plugins/init.lua index 0e86f8c..1730f64 100644 --- a/hosts/alpheratz/dotfiles/nvim/lua/config/plugins/init.lua +++ b/hosts/alpheratz/dotfiles/nvim/lua/config/plugins/init.lua @@ -6,12 +6,7 @@ local plugins = { 'kylechui/nvim-surround', - { 'ibhagwan/fzf-lua', - config = function() - require('fzf-lua').setup({'skim'}) - end - }, 'neovim/nvim-lspconfig', 'hrsh7th/nvim-cmp', @@ -21,9 +16,9 @@ local plugins = { 'rust-lang/rust.vim', { - 'windwp/nvim-autopairs', - event = 'InsertEnter', - opts={}, + 'windwp/nvim-autopairs', + event = 'InsertEnter', + opts={}, }, { diff --git a/hosts/alpheratz/dotfiles/nvim/lua/config/settings.lua b/hosts/alpheratz/dotfiles/nvim/lua/config/settings.lua index b3e9269..8efff64 100644 --- a/hosts/alpheratz/dotfiles/nvim/lua/config/settings.lua +++ b/hosts/alpheratz/dotfiles/nvim/lua/config/settings.lua @@ -35,6 +35,4 @@ vim.opt.completeopt=menuone,noselect vim.opt.undofile=true - vim.g['loaded_perl_provider']=0 -vim.g['python3_host_prog']='/usr/bin/python' diff --git a/hosts/alpheratz/home.nix b/hosts/alpheratz/home.nix index c0714fe..0217500 100644 --- a/hosts/alpheratz/home.nix +++ b/hosts/alpheratz/home.nix @@ -14,7 +14,8 @@ homeDirectory = "/home/eesim"; }; - home.file.".config/nvim".source = ./dotfiles/nvim; + home.file.".config/nvim".source = ../shared/dotfiles/nvim; + home.file.".tmux.conf".source = ../shared/dotfiles/tmux; home.file.".config/waybar".source = ./dotfiles/waybar; home.file.".config/fish/config.fish".source = ./dotfiles/fish/config.fish; diff --git a/hosts/ankaa/dotfiles/nvim/lua/config/plugins/init.lua b/hosts/ankaa/dotfiles/nvim/lua/config/plugins/init.lua index 36d2690..f82d17d 100644 --- a/hosts/ankaa/dotfiles/nvim/lua/config/plugins/init.lua +++ b/hosts/ankaa/dotfiles/nvim/lua/config/plugins/init.lua @@ -6,12 +6,7 @@ local plugins = { 'kylechui/nvim-surround', - { 'ibhagwan/fzf-lua', - config = function() - require('fzf-lua').setup({'skim'}) - end - }, 'neovim/nvim-lspconfig', 'hrsh7th/nvim-cmp', @@ -20,15 +15,15 @@ local plugins = { 'L3MON4D3/LuaSnip', { - 'windwp/nvim-autopairs', - event = 'InsertEnter', - opts = {}, + 'windwp/nvim-autopairs', + event = 'InsertEnter', + opts = {}, }, { - 'kaarmu/typst.vim', - ft = 'typst', - lazy = false, + 'kaarmu/typst.vim', + ft = 'typst', + lazy = false, }, 'jalvesaq/Nvim-R', diff --git a/hosts/ankaa/dotfiles/nvim/lua/config/settings.lua b/hosts/ankaa/dotfiles/nvim/lua/config/settings.lua index 2a5871c..8efff64 100644 --- a/hosts/ankaa/dotfiles/nvim/lua/config/settings.lua +++ b/hosts/ankaa/dotfiles/nvim/lua/config/settings.lua @@ -36,4 +36,3 @@ vim.opt.completeopt=menuone,noselect vim.opt.undofile=true vim.g['loaded_perl_provider']=0 -vim.g['python3_host_prog']='/usr/bin/python3' diff --git a/hosts/ankaa/home.nix b/hosts/ankaa/home.nix index d407528..9c9832b 100644 --- a/hosts/ankaa/home.nix +++ b/hosts/ankaa/home.nix @@ -15,7 +15,7 @@ homeDirectory = "/home/eesim"; }; - home.file.".config/nvim".source = ./dotfiles/nvim; + home.file.".config/nvim".source = ../shared/dotfiles/nvim; home.file.".config/waybar".source = ./dotfiles/waybar; home.file.".config/fish/config.fish".source = ./dotfiles/fish/config.fish; home.file.".config/alacritty/alacritty.toml".source = ./dotfiles/alacritty/alacritty.toml; diff --git a/hosts/shared/dotfiles/nvim/init.lua b/hosts/shared/dotfiles/nvim/init.lua new file mode 100644 index 0000000..c6978cf --- /dev/null +++ b/hosts/shared/dotfiles/nvim/init.lua @@ -0,0 +1,9 @@ +require('config/keymaps') +require('config/settings') +require('config/plugins') +require('config/plugins/lualine') +require('config/plugins/lspconfig') + +local vimscriptpath = vim.fn.stdpath("config") .. "/lua/config/vimscript/" + +vim.cmd('source' .. vimscriptpath .. 'init.vim') diff --git a/hosts/shared/dotfiles/nvim/lua/config/keymaps.lua b/hosts/shared/dotfiles/nvim/lua/config/keymaps.lua new file mode 100644 index 0000000..5b7437e --- /dev/null +++ b/hosts/shared/dotfiles/nvim/lua/config/keymaps.lua @@ -0,0 +1,17 @@ +vim.g.mapleader=',' +vim.g.maplocalleader=',' + +vim.keymap.set('n', '', 'h') +vim.keymap.set('n', '', 'j') +vim.keymap.set('n', '', 'k') +vim.keymap.set('n', '', 'l') + +vim.keymap.set('n', 'ff', ':FzfLua files') +vim.keymap.set('n', 'fb', ':FzfLua buffers') +vim.keymap.set('n', 'rg', ':FzfLua grep_project') + + + +vim.keymap.set('i', '', '') + +vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts) diff --git a/hosts/shared/dotfiles/nvim/lua/config/plugins/init.lua b/hosts/shared/dotfiles/nvim/lua/config/plugins/init.lua new file mode 100644 index 0000000..f82d17d --- /dev/null +++ b/hosts/shared/dotfiles/nvim/lua/config/plugins/init.lua @@ -0,0 +1,53 @@ +local plugins = { + 'rebelot/kanagawa.nvim', + + 'nvim-lualine/lualine.nvim', + 'kyazdani42/nvim-web-devicons', + + 'kylechui/nvim-surround', + + 'ibhagwan/fzf-lua', + + 'neovim/nvim-lspconfig', + 'hrsh7th/nvim-cmp', + 'hrsh7th/cmp-nvim-lsp', + 'hrsh7th/cmp-path', + 'L3MON4D3/LuaSnip', + + { + 'windwp/nvim-autopairs', + event = 'InsertEnter', + opts = {}, + }, + + { + 'kaarmu/typst.vim', + ft = 'typst', + lazy = false, + }, + + 'jalvesaq/Nvim-R', + + { + 'RaafatTurki/hex.nvim', + config = function() + require('hex').setup() + end + }, + +} + +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not vim.loop.fs_stat(lazypath) then + vim.fn.system({ + "git", + "clone", + "--filter=blob:none", + "https://github.com/folke/lazy.nvim.git", + "--branch=stable", -- latest stable release + lazypath, + }) +end +vim.opt.rtp:prepend(lazypath) + +require("lazy").setup(plugins, opts) diff --git a/hosts/shared/dotfiles/nvim/lua/config/plugins/lspconfig.lua b/hosts/shared/dotfiles/nvim/lua/config/plugins/lspconfig.lua new file mode 100644 index 0000000..8c40e0d --- /dev/null +++ b/hosts/shared/dotfiles/nvim/lua/config/plugins/lspconfig.lua @@ -0,0 +1,67 @@ +local capabilities = require('cmp_nvim_lsp').default_capabilities() +capabilities.textDocument.completion.completionItem.snippetSupport = false; + +local lspconfig = require('lspconfig') + +lspconfig.rust_analyzer.setup { + capabilities = capabilities, + settings = { + ["rust-analyzer"] = { + cargo = { + allFeatures = true, + }, + imports = { + group = { + enable = false, + }, + }, + completion = { + postfix = { + enable = false, + }, + }, + }, + }, +} + +lspconfig.omnisharp.setup { + cmd = { "dotnet", "/usr/lib/omnisharp-roslyn/OmniSharp.dll"} +} + +local default_servers = {'pylsp', 'ccls', 'typst_lsp', 'r_language_server', 'lua_ls', 'nil_ls'} + +for _, lsp in ipairs(default_servers) do + lspconfig[lsp].setup { + capabilities = capabilities + } +end + +local luasnip = require 'luasnip' +local cmp = require 'cmp' + + +cmp.setup { + preselect = cmp.PreselectMode.None, + mapping = cmp.mapping.preset.insert({ + [''] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + else + fallback() + end + end, { 'i', 's' }), + [''] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + else + fallback() + end + end, { 'i', 's' }), + }), + sources = { + { name = 'nvim_lsp' }, + { name = 'path' }, + }, +} + + diff --git a/hosts/shared/dotfiles/nvim/lua/config/plugins/lualine.lua b/hosts/shared/dotfiles/nvim/lua/config/plugins/lualine.lua new file mode 100644 index 0000000..9ae6243 --- /dev/null +++ b/hosts/shared/dotfiles/nvim/lua/config/plugins/lualine.lua @@ -0,0 +1,36 @@ +require('lualine').setup { + options = { + icons_enabled = true, + theme = 'wombat', + component_separators = { left = '', right = ''}, + section_separators = { left = '', right = ''}, + disabled_filetypes = {}, + always_divide_middle = true, + globalstatus = true, + }, + sections = { + lualine_a = {'mode'}, + lualine_b = {'branch', 'diff', 'diagnostics'}, + lualine_c = {'filename'}, + lualine_x = {'encoding', 'fileformat', 'filetype'}, + lualine_y = {'progress'}, + lualine_z = {'location'} + }, + inactive_sections = { + lualine_a = {}, + lualine_b = {}, + lualine_c = {'filename'}, + lualine_x = {'location'}, + lualine_y = {}, + lualine_z = {} + }, + tabline = { + lualine_a = {'buffers'}, + lualine_b = {'branch'}, + lualine_c = {'filename'}, + lualine_x = {}, + lualine_y = {}, + lualine_z = {'tabs'} + }, + extensions = {} +} diff --git a/hosts/shared/dotfiles/nvim/lua/config/settings.lua b/hosts/shared/dotfiles/nvim/lua/config/settings.lua new file mode 100644 index 0000000..8efff64 --- /dev/null +++ b/hosts/shared/dotfiles/nvim/lua/config/settings.lua @@ -0,0 +1,38 @@ +vim.opt.cursorline=true +vim.opt.relativenumber=true +vim.opt.number=true + +vim.opt.scrolloff=10 + +vim.opt.autoindent=true +vim.opt.expandtab=true +vim.opt.softtabstop=4 +vim.opt.shiftwidth=4 +vim.opt.shiftround=true + +vim.opt.backspace={'indent','eol','start'} +vim.opt.hidden=true +vim.opt.laststatus=2 +vim.opt.display='lastline' + +vim.opt.showmode=true +vim.opt.showcmd=true + +vim.opt.incsearch=true +vim.opt.ignorecase=true +vim.opt.smartcase=true + +vim.opt.ttyfast=true +vim.opt.updatetime=300 + +vim.opt.splitright=true + +vim.opt.wrapscan=true +vim.opt.report=0 + +vim.opt.list=true +vim.opt.completeopt=menuone,noselect + +vim.opt.undofile=true + +vim.g['loaded_perl_provider']=0 diff --git a/hosts/shared/dotfiles/nvim/lua/config/vimscript/init.vim b/hosts/shared/dotfiles/nvim/lua/config/vimscript/init.vim new file mode 100644 index 0000000..2426d07 --- /dev/null +++ b/hosts/shared/dotfiles/nvim/lua/config/vimscript/init.vim @@ -0,0 +1,9 @@ +filetype plugin indent on +syntax on +colorscheme kanagawa + +if has('multi_byte') && &encoding ==# 'utf-8' + let &listchars = 'tab:▸ ,extends:❯,precedes:❮,nbsp:±' +else + let &listchars = 'tab:> ,extends:>,precedes:<,nbsp:.' +endif diff --git a/hosts/shared/dotfiles/nvim/lua/config/~/.vimdid/%home%eesim%.config%nvim%lua%config%keymaps.lua b/hosts/shared/dotfiles/nvim/lua/config/~/.vimdid/%home%eesim%.config%nvim%lua%config%keymaps.lua new file mode 100644 index 0000000000000000000000000000000000000000..9fc01db2562fe6378d92adc32552c927692007c0 GIT binary patch literal 6925 zcmeI0&1w`u5P*B#_!BiTB*w(3D0qk=x+u6gc@eyM6Z9$`A_TLEUcoS4S zuc^#R1A*4NXuscCm-VR81<1--ph-8IuwUv>9PUs`B9y0~<1`J1br z-T3|d_Wd(IzaG7_{P5}O;-|scp)U_^&izuH4u!fhZ}Fi9(qoiG0|uQ#NA&7wts4YSGPhWr&b`q2w`$=nfQM1D8xv0X(oN z2{u6}Rl30*$-j0So3Xe(BQreEzAVNK-fhMO^ju~HTbkQMp-d6nvqf`zG{QYSodfPE zneoB;RRmnsFuwt;>pPyn2lyyT0!|dl6ajvs2>4hGd?`=dV=@C|ioaIG!5*#X5Z+;2 zpbzoA*b;G~P^NSvKK?K9<41C{+=DVhgzuYT<}e;KF7Su>IJU%`D3mF}yjC>JC)zQO z)^?A|43eFCBciTv<(nS``+|pl9H71pUe<;^>PV^w;4Y@Lbo^pjKlqr%cCyR1r zvTd%M&uV#Jeb2qHO`p9C@ga0$|^dAz>#9Wr|=wRfK)21NLZd@U+Z0f&9K0 zJfQWQ3r~_DfhQ7u5dnX?2>ij0;G+#f(OcSz-r9Jou+)Rv9#fG92|WSoi*!SOpfmd1 z3tFpoXvN_Ls>)Xq;E|0 Qk70$-mjY}^z4?9pFD{z^HUIzs literal 0 HcmV?d00001 diff --git a/hosts/shared/dotfiles/nvim/lua/config/~/.vimdid/%home%eesim%.config%nvim%lua%config%plugins%lspconfig.lua b/hosts/shared/dotfiles/nvim/lua/config/~/.vimdid/%home%eesim%.config%nvim%lua%config%plugins%lspconfig.lua new file mode 100644 index 0000000000000000000000000000000000000000..8b13c258f11d5f85e0dc20368f0a048efd2c0c7f GIT binary patch literal 17906 zcmeI3%ZnUE9LG1=P0Z6o^L}lbF|rBfW#XFnNFw+E1rZ++A(3U=%&r5InPFxUOu~wb z7avzWis0jtKfsd^@Zd!duO2*VylXB7qQ6gd{knf$n;qC--RcLm-CbS3s@nQ|`&U&x zGjBF8etEY2T<747Y;Imz6}4N1!+Ws-7?{eO>fcjd^`FLJ<^=Lh$fTleYpzhbT`%}B@pc?1N< zxWh3ra%;QP&CsuwbVL#;#$a5zb69dmCg)vVNs3G{T(E!gL-BWoKP$b)ihKFVS~=Xg zOCDL1^G+&MK5B{}8`QXgyd)JyA*P8`YQvRjREaz?$HJir7%jZpwwIuKe(ll#Z4bZ zF4yL)U>s#?5u+lMuqF`9!l1HrFE^Xfh?uI4__x-#W%DSL2Qa+U({^f;zp#0Dc}XK- z?KIg`PGhdB6u=mgm?n}wWF^h8qsT`kL2MOb#Z-tEv)p$^SW?VBt60By%wS!q_v8q2 zFq2Z`Vi2O5U_Lwy^O_uTmYsXsf_8LF#{j)Kc#wlB3b4gmRnCDL z!$7YqK-X#&)H*|H@7Bx7mH;(*n17~0s}Y}UT_^A0BB5p!Vw#{nHVpNS5_RuVe{iVY zuD7mSZS<<#9W2vL=Hq<z@iILn zl1~KagXoT%jTB%f?U9twGYC;l&`*Zwc}Z|g65#d>L!a+PpoI&D%W8GWcO(Gjwyyui z_4c`15JW^w<@N+OrvW)))J)#~Ku)xdm0O0TdubiiLmSv;Ne6seHjjHgYT19BY-CKr zHA$C2h-xC;6IQy4SYW1!0r7g}gLT zF$ytFke>{ZgX1wtfZK96KC~0{M`)RZ^Nc8HA`Nl6iKRWGZuA^J2Ht8`w{m0PaYcPBIUC6hPOx!9xeK{j>l9 z0DYUJ1f4;MY6AWF5IP7>NCMn8yTB=-=L;tLz*4w6ffP}N`ZVrrU!=a`Gbd!^*vk>4 zUh+N;WJKFo8F7~GrFBq`#w$L1|HQXt^C;sb%m2eyE7XuLGR8GYmO+SWBH0(MWL1SH zrB%RHB!=8(d!0*Nv$4a$u`=BxDt#45EQnNKe$coe0kEex&t_2KoeK7sLhK-ULK5JL zH_sYj6nh@4>^wv9gbZPyr*m?naM#R^_= zJV~RvKvz*|M^tk+^~B#mZdfh|>!p(%ch$@0k?#e80PGtv#6eZA@+1fuiKr%mc-0Dm zhaDtONdk9u`K1b>l+u?|XO#XUP>5dU3b9^#$9ma3s`Ls$5%z@_YANQ-q!30brinsc zw+hjap$b_vY|ts@us@Zn@1@Rb9xpiU9uL&ub;S~1KWNbog7>Xqcq>bw>CVM&t1)PH z+GgpCAe5_C;(@I!QY+l^wJ)f2 z-llwYqHqBpVNgUP#V%d%a;#QaEPU~C3Xmg4)vO$rt9r;3)7ht7do10nm_(#LU7b+N zsBg>W(WVzJLbY2xM9dtOge!v(-$c0QY`{_>o|2{)2p6SwJN>~-^F0%>iZEk(3-djJ z$n?^K2eb`zhyd_z85xyoDSrOQ9tY5an%r+V#GHrk6ZWV#s8s38`wjV_WHJL9{0R_k*f`oNSW7; zHA!j0We}p8$hYp~yDW#VFOT@O9croN;;Q~_wCnG*8WOr@>aBi5w_mtAYNo?f@gskX z>7^F{z^z6R144J2O!3PMT$EE0zy%w>bmOA}SQw6!HzhT2XxCtSHV7^OZ}{4;M#7%O zOM0~;gAm_@_l)JO8y@9dT`?qMEP* z^s=dgnW!dfwzFop-t6`Fdzl@`E_8J2z|k=?-9-++DR-Z*67kD_8&W8dNn)#*mj5yc l@lEjm