update nvim to use packer

This commit is contained in:
ksyasuda 2022-10-28 12:36:08 -07:00
parent 227a06e002
commit 851ae5a1a2
9 changed files with 890 additions and 263 deletions

View File

@ -1,138 +1,12 @@
syntax enable
filetype plugin on
set noshowmode "disable default vim insert text at bottom
set laststatus=3
set number
set colorcolumn=80
set textwidth=80
set shiftwidth=4
set tabstop=4
set autoindent
set ignorecase
set smartcase
set incsearch
set smartindent
set hlsearch
set ignorecase
set noerrorbells
set title
set mouse=a
set relativenumber
set splitright
set cursorline
set scrolloff=8
set sidescrolloff=8
set wildmenu " show candidates for vim commands with tab
set wildignore=*.o,*.obj,*.bak,*.exe
set background=dark
set showmatch
set list
set listchars=tab:\ ,trail:
set encoding=UTF-8
set guifont=FiraCode\ Nerd\ Font\ 18
set expandtab
" coc settings
set hidden
set nobackup
set nowritebackup
set cmdheight=1
set updatetime=300
set timeoutlen=400
" Don't pass messages to |ins-completion-menu|.
set shortmess+=c
set pumwidth=35
lua require('settings')
lua require('plugins')
" set nocompatible " no more vi
" set path from current directory and all directories under
" set path=$PWD/**
" Install vim-plug if not found
if empty(glob('~/.vim/autoload/plug.vim'))
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
if has("autocmd")
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
endif
" Run PlugInstall if there are missing plugins
autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
\| PlugInstall --sync | source $MYVIMRC
\| endif
call plug#begin('~/.vim/plugged')
Plug 'ap/vim-css-color'
Plug 'github/copilot.vim'
Plug 'jiangmiao/auto-pairs'
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
Plug 'junegunn/fzf.vim'
Plug 'pechorin/any-jump.vim'
Plug 'tpope/vim-commentary'
Plug 'tpope/vim-surround'
Plug 'voldikss/vim-floaterm'
Plug 'wakatime/vim-wakatime'
" Plug 'christoomey/vim-tmux-navigator'
" Plug 'dense-analysis/ale'
" Plug 'neoclide/coc.nvim', {'branch': 'release'}
let g:mapleader = "\<Space>"
let g:maplocalleader = ','
if has('nvim')
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-lua/popup.nvim'
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
Plug 'akinsho/bufferline.nvim'
Plug 'andweeb/presence.nvim'
Plug 'folke/which-key.nvim'
Plug 'glepnir/dashboard-nvim'
Plug 'kyazdani42/nvim-tree.lua'
Plug 'kyazdani42/nvim-web-devicons'
Plug 'lewis6991/gitsigns.nvim'
Plug 'nvim-lualine/lualine.nvim'
Plug 'nvim-telescope/telescope.nvim', { 'tag': '0.1.0' }
Plug 'ojroques/nvim-lspfuzzy'
Plug 'L3MON4D3/LuaSnip'
Plug 'amrbashir/nvim-docs-view'
Plug 'hrsh7th/cmp-buffer'
Plug 'hrsh7th/cmp-nvim-lsp'
Plug 'hrsh7th/cmp-path'
Plug 'hrsh7th/nvim-cmp'
Plug 'j-hui/fidget.nvim'
Plug 'jose-elias-alvarez/null-ls.nvim'
Plug 'ksyasuda/lsp_lines.nvim'
Plug 'neovim/nvim-lspconfig'
Plug 'onsails/lspkind-nvim'
Plug 'ray-x/lsp_signature.nvim'
Plug 'rmagatti/goto-preview',
Plug 'saadparwaiz1/cmp_luasnip'
Plug 'williamboman/nvim-lsp-installer'
Plug 'Mofiqul/dracula.nvim'
Plug 'NTBBloodbath/doom-one.nvim'
Plug 'olimorris/onedarkpro.nvim'
Plug 'projekt0n/github-nvim-theme'
else
Plug 'ap/vim-buftabline'
Plug 'itchyny/lightline.vim'
Plug 'liuchengxu/vim-which-key', { 'on': ['WhichKey', 'WhichKey!'] }
Plug 'maximbaz/lightline-ale'
Plug 'mhinz/vim-startify'
Plug 'preservim/nerdtree' | Plug 'Xuyuanp/nerdtree-git-plugin'
Plug 'ryanoasis/vim-devicons'
Plug 'sheerun/vim-polyglot'
Plug 'tpope/vim-fugitive'
Plug 'joshdick/onedark.vim'
Plug 'kaicataldo/material.vim', { 'branch': 'main' }
Plug 'morhetz/gruvbox'
Plug 'vv9k/vim-github-dark'
endif
call plug#end()
if has('nvim')
set completeopt=menu,menuone,noselect
let g:fzf_command = 'fzf --height 90% --width=85% --layout=reverse --preview "bat --color=always {}"'
source ~/.config/nvim/keybindings.vim
@ -170,89 +44,16 @@ if has('nvim')
source ~/.vim/plugin-confs/wakatime.vim
source ~/.config/nvim/plugin-confs/doomone.lua
source ~/.config/nvim/plugin-confs/dracula.lua
source ~/.config/nvim/plugin-confs/github-theme.lua
source ~/.config/nvim/plugin-confs/onedarkpro.lua
" source ~/.config/nvim/plugin-confs/dracula.lua
" source ~/.config/nvim/plugin-confs/github-theme.lua
" source ~/.config/nvim/plugin-confs/onedarkpro.lua
source ~/.config/nvim/lua/toggle_lsp_diagnostics.lua
" makes fzf match colorscheme (I think)
augroup fzf_preview
autocmd!
autocmd User fzf_preview#rpc#initialized call s:fzf_preview_settings()
augroup END
function! s:fzf_preview_settings() abort
let g:fzf_preview_command = 'COLORTERM=truecolor ' . g:fzf_preview_command
let g:fzf_preview_grep_preview_cmd = 'COLORTERM=truecolor ' . g:fzf_preview_grep_preview_cmd
endfunction
" make terminal not have line numbers
autocmd TermOpen * setlocal nonumber norelativenumber
else
source ~/.vim/keybindings.vim
source ~/.vim/plugin-confs/nerdtree.vim
source ~/.vim/plugin-confs/whichkey.vim
source ~/.vim/plugin-confs/ale.vim
source ~/.vim/plugin-confs/fzf.vim
source ~/.vim/plugin-confs/vim-closetag.vim
source ~/.vim/plugin-confs/wakatime.vim
source ~/.vim/plugin-confs/prettier.vim
source ~/.vim/plugin-confs/lightline.vim
source ~/.vim/plugin-confs/coc.vim
source ~/.vim/plugin-confs/floaterm.vim
if executable('bash-language-server')
au User lsp_setup call lsp#register_server({
\ 'name': 'bash-language-server',
\ 'cmd': {server_info->[&shell, &shellcmdflag, 'bash-language-server start']},
\ 'allowlist': ['sh'],
\ })
endif
endif
"------------------------------------------------------------------------------
" Enable :Man <man_page>
"------------------------------------------------------------------------------
runtime ftplugin/man.vim
"------------------------------------------------------------------------------
" Force help/man buffers into vertical split
"------------------------------------------------------------------------------
autocmd FileType help wincmd L
autocmd FileType man wincmd L
"------------------------------------------------------------------------------
"jump to remembered position in file if available
"------------------------------------------------------------------------------
if has("autocmd")
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif
endif
"------------------------------------------------------------------------------
"COLORSCHEME
"------------------------------------------------------------------------------
set t_Co=256
if has('nvim')
set termguicolors
colorscheme doom-one
" colorscheme dracula
" colorscheme github_dark
" colorscheme onedark
" colorscheme onedarkpro
else
" let g:onedark_termcolors=256 "enable 256 colors
" colorscheme onedark "set colorsheme as onedark
"material theme
" let g:material_theme_style = 'default' | 'palenight' | 'ocean' | 'lighter' | 'darker' | 'default-community' | 'palenight-community' | 'ocean-community' | 'lighter-community' | 'darker-community'
" let g:material_terminal_italics = 1
" let g:material_theme_style = 'darker'
" colorscheme material
let g:gruvbox_contrast_dark = "medium" "default
" let g:gruvbox_contrast_dark = "soft"
let g:gruvbox_improved_strings = 0
let g:gruvbox_improved_warnings = 1
colorscheme gruvbox
endif
"------------------------------------------------------------------------------
" custom commands
"------------------------------------------------------------------------------
" CUSTOM COMMANDS
command! -bang -nargs=? -complete=dir Files
\ call fzf#vim#files(<q-args>, fzf#vim#with_preview({'options': ['--layout=reverse', '--info=inline', '--preview', '~/.vim/plugged/fzf.vim/bin/preview.sh']}), <bang>0)
@ -271,3 +72,6 @@ command! Env execute ":Dotenv .env"
command! MakeTags !ctags -R .
command! Ovewrite execute ":w !sudo tee %"
command! Aniwrapper execute ":FloatermNew aniwrapper -qtdoomone -D 144"
set termguicolors
colorscheme doom-one

273
nvim/init.vim.bak Normal file
View File

@ -0,0 +1,273 @@
syntax enable
filetype plugin on
set noshowmode "disable default vim insert text at bottom
set laststatus=3
set number
set colorcolumn=80
set textwidth=80
set shiftwidth=4
set tabstop=4
set autoindent
set ignorecase
set smartcase
set incsearch
set smartindent
set hlsearch
set ignorecase
set noerrorbells
set title
set mouse=a
set relativenumber
set splitright
set cursorline
set scrolloff=8
set sidescrolloff=8
set wildmenu " show candidates for vim commands with tab
set wildignore=*.o,*.obj,*.bak,*.exe
set background=dark
set showmatch
set list
set listchars=tab:\ ,trail:
set encoding=UTF-8
set guifont=FiraCode\ Nerd\ Font\ 18
set expandtab
" coc settings
set hidden
set nobackup
set nowritebackup
set cmdheight=1
set updatetime=300
set timeoutlen=400
" Don't pass messages to |ins-completion-menu|.
set shortmess+=c
set pumwidth=35
" set nocompatible " no more vi
" set path from current directory and all directories under
" set path=$PWD/**
" Install vim-plug if not found
if empty(glob('~/.vim/autoload/plug.vim'))
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
endif
" Run PlugInstall if there are missing plugins
autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
\| PlugInstall --sync | source $MYVIMRC
\| endif
call plug#begin('~/.vim/plugged')
Plug 'ap/vim-css-color'
Plug 'github/copilot.vim'
Plug 'jiangmiao/auto-pairs'
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
Plug 'junegunn/fzf.vim'
Plug 'pechorin/any-jump.vim'
Plug 'tpope/vim-commentary'
Plug 'tpope/vim-surround'
Plug 'voldikss/vim-floaterm'
Plug 'wakatime/vim-wakatime'
" Plug 'christoomey/vim-tmux-navigator'
" Plug 'dense-analysis/ale'
" Plug 'neoclide/coc.nvim', {'branch': 'release'}
let g:mapleader = "\<Space>"
let g:maplocalleader = ','
if has('nvim')
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-lua/popup.nvim'
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
Plug 'akinsho/bufferline.nvim'
Plug 'andweeb/presence.nvim'
Plug 'folke/which-key.nvim'
Plug 'glepnir/dashboard-nvim'
Plug 'kyazdani42/nvim-tree.lua'
Plug 'kyazdani42/nvim-web-devicons'
Plug 'lewis6991/gitsigns.nvim'
Plug 'nvim-lualine/lualine.nvim'
Plug 'nvim-telescope/telescope.nvim', { 'tag': '0.1.0' }
Plug 'ojroques/nvim-lspfuzzy'
Plug 'L3MON4D3/LuaSnip'
Plug 'amrbashir/nvim-docs-view'
Plug 'hrsh7th/cmp-buffer'
Plug 'hrsh7th/cmp-nvim-lsp'
Plug 'hrsh7th/cmp-path'
Plug 'hrsh7th/nvim-cmp'
Plug 'j-hui/fidget.nvim'
Plug 'jose-elias-alvarez/null-ls.nvim'
Plug 'ksyasuda/lsp_lines.nvim'
Plug 'neovim/nvim-lspconfig'
Plug 'onsails/lspkind-nvim'
Plug 'ray-x/lsp_signature.nvim'
Plug 'rmagatti/goto-preview',
Plug 'saadparwaiz1/cmp_luasnip'
Plug 'williamboman/nvim-lsp-installer'
Plug 'Mofiqul/dracula.nvim'
Plug 'NTBBloodbath/doom-one.nvim'
Plug 'olimorris/onedarkpro.nvim'
Plug 'projekt0n/github-nvim-theme'
else
Plug 'ap/vim-buftabline'
Plug 'itchyny/lightline.vim'
Plug 'liuchengxu/vim-which-key', { 'on': ['WhichKey', 'WhichKey!'] }
Plug 'maximbaz/lightline-ale'
Plug 'mhinz/vim-startify'
Plug 'preservim/nerdtree' | Plug 'Xuyuanp/nerdtree-git-plugin'
Plug 'ryanoasis/vim-devicons'
Plug 'sheerun/vim-polyglot'
Plug 'tpope/vim-fugitive'
Plug 'joshdick/onedark.vim'
Plug 'kaicataldo/material.vim', { 'branch': 'main' }
Plug 'morhetz/gruvbox'
Plug 'vv9k/vim-github-dark'
endif
call plug#end()
if has('nvim')
set completeopt=menu,menuone,noselect
let g:fzf_command = 'fzf --height 90% --width=85% --layout=reverse --preview "bat --color=always {}"'
source ~/.config/nvim/keybindings.vim
" nvim plugins
source ~/.config/nvim/plugin-confs/bufferline.lua
source ~/.config/nvim/plugin-confs/dashboard-art.vim
source ~/.config/nvim/plugin-confs/dashboard-nvim.lua
source ~/.config/nvim/plugin-confs/gitsigns.lua
source ~/.config/nvim/plugin-confs/lspfuzzy.lua
source ~/.config/nvim/plugin-confs/lualine.lua
source ~/.config/nvim/plugin-confs/nvimtree.lua
source ~/.config/nvim/plugin-confs/presence.lua
source ~/.config/nvim/plugin-confs/treesitter.lua
source ~/.config/nvim/plugin-confs/whichkey.lua
source ~/.config/nvim/plugin-confs/telescope.lua
source ~/.config/nvim/plugin-confs/code_actions.lua
" source ~/.config/nvim/plugin-confs/copilot.lua
source ~/.config/nvim/plugin-confs/goto-preview.lua
source ~/.config/nvim/plugin-confs/lsp-kind.lua
source ~/.config/nvim/plugin-confs/lsp-signature.lua
source ~/.config/nvim/plugin-confs/lspconfig.lua
source ~/.config/nvim/plugin-confs/lsplines.lua
source ~/.config/nvim/plugin-confs/null-ls.lua
source ~/.config/nvim/plugin-confs/nvim-cmp.lua
source ~/.config/nvim/plugin-confs/fidget.lua
source ~/.config/nvim/plugin-confs/symbols-outline.lua
source ~/.config/nvim/plugin-confs/nvim-docs-view.lua
" nvim and vim plugins
source ~/.vim/plugin-confs/floaterm.vim
source ~/.vim/plugin-confs/fzf.vim
source ~/.vim/plugin-confs/vim-closetag.vim
source ~/.vim/plugin-confs/wakatime.vim
source ~/.config/nvim/plugin-confs/doomone.lua
source ~/.config/nvim/plugin-confs/dracula.lua
source ~/.config/nvim/plugin-confs/github-theme.lua
source ~/.config/nvim/plugin-confs/onedarkpro.lua
source ~/.config/nvim/lua/toggle_lsp_diagnostics.lua
" makes fzf match colorscheme (I think)
augroup fzf_preview
autocmd!
autocmd User fzf_preview#rpc#initialized call s:fzf_preview_settings()
augroup END
function! s:fzf_preview_settings() abort
let g:fzf_preview_command = 'COLORTERM=truecolor ' . g:fzf_preview_command
let g:fzf_preview_grep_preview_cmd = 'COLORTERM=truecolor ' . g:fzf_preview_grep_preview_cmd
endfunction
" make terminal not have line numbers
autocmd TermOpen * setlocal nonumber norelativenumber
else
source ~/.vim/keybindings.vim
source ~/.vim/plugin-confs/nerdtree.vim
source ~/.vim/plugin-confs/whichkey.vim
source ~/.vim/plugin-confs/ale.vim
source ~/.vim/plugin-confs/fzf.vim
source ~/.vim/plugin-confs/vim-closetag.vim
source ~/.vim/plugin-confs/wakatime.vim
source ~/.vim/plugin-confs/prettier.vim
source ~/.vim/plugin-confs/lightline.vim
source ~/.vim/plugin-confs/coc.vim
source ~/.vim/plugin-confs/floaterm.vim
if executable('bash-language-server')
au User lsp_setup call lsp#register_server({
\ 'name': 'bash-language-server',
\ 'cmd': {server_info->[&shell, &shellcmdflag, 'bash-language-server start']},
\ 'allowlist': ['sh'],
\ })
endif
endif
"------------------------------------------------------------------------------
" Enable :Man <man_page>
"------------------------------------------------------------------------------
runtime ftplugin/man.vim
"------------------------------------------------------------------------------
" Force help/man buffers into vertical split
"------------------------------------------------------------------------------
autocmd FileType help wincmd L
autocmd FileType man wincmd L
"------------------------------------------------------------------------------
"jump to remembered position in file if available
"------------------------------------------------------------------------------
if has("autocmd")
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif
endif
"------------------------------------------------------------------------------
"COLORSCHEME
"------------------------------------------------------------------------------
set t_Co=256
if has('nvim')
set termguicolors
colorscheme doom-one
" colorscheme dracula
" colorscheme github_dark
" colorscheme onedark
" colorscheme onedarkpro
else
" let g:onedark_termcolors=256 "enable 256 colors
" colorscheme onedark "set colorsheme as onedark
"material theme
" let g:material_theme_style = 'default' | 'palenight' | 'ocean' | 'lighter' | 'darker' | 'default-community' | 'palenight-community' | 'ocean-community' | 'lighter-community' | 'darker-community'
" let g:material_terminal_italics = 1
" let g:material_theme_style = 'darker'
" colorscheme material
let g:gruvbox_contrast_dark = "medium" "default
" let g:gruvbox_contrast_dark = "soft"
let g:gruvbox_improved_strings = 0
let g:gruvbox_improved_warnings = 1
colorscheme gruvbox
endif
"------------------------------------------------------------------------------
" custom commands
"------------------------------------------------------------------------------
command! -bang -nargs=? -complete=dir Files
\ call fzf#vim#files(<q-args>, fzf#vim#with_preview({'options': ['--layout=reverse', '--info=inline', '--preview', '~/.vim/plugged/fzf.vim/bin/preview.sh']}), <bang>0)
command! -bang -nargs=? -complete=dir AllFiles
\ call fzf#run(fzf#wrap('allfiles', fzf#vim#with_preview({'dir': <q-args>, 'sink': 'e', 'source': 'rg --files --hidden --no-ignore', 'options': ['--layout=reverse', '--preview', '~/.vim/plugged/fzf.vim/bin/preview.sh']}), <bang>0))
command! -bang -nargs=? -complete=dir Lines
\ call fzf#vim#lines(<q-args>, ({'options': ['--layout=reverse']}), <bang>0)
command! -bang -nargs=? -complete=dir Buffers
\ call fzf#vim#buffers(<q-args>, fzf#vim#with_preview({'options': ['--layout=reverse', '--info=inline', '--preview', '~/.vim/plugged/fzf.vim/bin/preview.sh']}), <bang>0)
command! Reload execute "source ~/.vimrc"
command! Config execute ":e ~/.vimrc"
command! Env execute ":Dotenv .env"
command! MakeTags !ctags -R .
command! Ovewrite execute ":w !sudo tee %"
command! Aniwrapper execute ":FloatermNew aniwrapper -qtdoomone -D 144"

119
nvim/lua/plugins.lua Normal file
View File

@ -0,0 +1,119 @@
return require('packer').startup(function(use)
use 'wbthomason/packer.nvim'
use 'nvim-lua/plenary.nvim'
use {
'nvim-treesitter/nvim-treesitter',
run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
}
use {
'nvim-lualine/lualine.nvim',
requires = {'kyazdani42/nvim-web-devicons', opt = true}
}
use {
"zbirenbaum/copilot.lua",
after = "lualine.nvim",
config = function ()
vim.defer_fn(function()
require('copilot').setup({
panel = {
enabled = true,
auto_refresh = false,
keymap = {
jump_prev = "[[",
jump_next = "]]",
accept = "<CR>",
refresh = "gr",
open = "<M-CR>"
},
},
suggestion = {
enabled = true,
auto_trigger = true,
debounce = 75,
keymap = {
accept = "<Tab>",
next = "<M-]>",
prev = "<M-[>",
dismiss = "<C-]>",
},
},
filetypes = {
yaml = false,
markdown = false,
help = false,
gitcommit = false,
gitrebase = false,
hgcommit = false,
svn = false,
cvs = false,
["."] = false,
},
copilot_node_command = 'node', -- Node version must be < 18
plugin_manager_path = vim.fn.stdpath("data") .. "/site/pack/packer",
server_opts_overrides = {},
})
end, 100)
end,
}
use {
"zbirenbaum/copilot-cmp",
after = { "copilot.lua" },
config = function ()
require("copilot_cmp").setup({
-- method = "getCompletionsCycling",
formatters = {
insert_text = require("copilot_cmp.format").remove_existing
}
})
end
}
use {
'junegunn/fzf',
run = function() vim.fn['fzf#install']() end
}
use 'ap/vim-css-color'
use 'jiangmiao/auto-pairs'
use 'junegunn/fzf.vim'
use 'pechorin/any-jump.vim'
use 'tpope/vim-commentary'
use 'tpope/vim-surround'
use 'voldikss/vim-floaterm'
use 'wakatime/vim-wakatime'
use 'akinsho/nvim-bufferline.lua'
use 'andweeb/presence.nvim'
use 'folke/which-key.nvim'
use 'glepnir/dashboard-nvim'
use 'kyazdani42/nvim-tree.lua'
use 'kyazdani42/nvim-web-devicons'
use 'lewis6991/gitsigns.nvim'
use 'nvim-telescope/telescope.nvim'
use 'ojroques/nvim-lspfuzzy'
use 'L3MON4D3/LuaSnip'
use 'amrbashir/nvim-docs-view'
use 'hrsh7th/cmp-buffer'
use 'hrsh7th/cmp-nvim-lsp'
use 'hrsh7th/cmp-nvim-lua'
use 'hrsh7th/cmp-path'
use 'hrsh7th/nvim-cmp'
use 'j-hui/fidget.nvim'
use 'jose-elias-alvarez/null-ls.nvim'
use 'ksyasuda/lsp_lines.nvim'
use 'neovim/nvim-lspconfig'
use 'onsails/lspkind-nvim'
use 'ray-x/lsp_signature.nvim'
use 'rmagatti/goto-preview'
use 'saadparwaiz1/cmp_luasnip'
use 'williamboman/nvim-lsp-installer'
use 'Mofiqul/dracula.nvim'
use 'NTBBloodbath/doom-one.nvim'
use 'olimorris/onedarkpro.nvim'
use 'projekt0n/github-nvim-theme'
end)

40
nvim/lua/settings.lua Normal file
View File

@ -0,0 +1,40 @@
local g = vim.g
local o = vim.o
local A = vim.api
g.mapleader = "<Space>"
g.maplocalleader = ','
o.termguicolors = true
o.background = 'dark'
o.mouse = 'a'
o.syntax = 'on'
o.laststatus = 3
o.number = true
o.relativenumber = true
o.colorcolumn = '80'
o.textwidth = 80
o.shiftwidth = 4
o.tabstop = 4
o.autoindent = true
o.ignorecase = true
o.smartcase = true
o.incsearch = true
o.hlsearch = true
o.title = true
o.splitright = true
o.cursorline = true
o.scrolloff = 8
o.sidescrolloff = 8
o.wildmenu = true
o.wildignore= '.git,.hg,.svn,CVS,.DS_Store,.idea,.vscode,.vscode-test,node_modules'
o.showmatch = true
o.list = true
o.listchars = 'tab:»·,trail:·,nbsp:·,extends:>,precedes:<'
o.encoding = 'utf-8'
o.guifont = 'JetBrainsMono Nerd Font 14'
o.expandtab = true
o.hidden = true
o.cmdheight = 1
o.updatetime = 300
o.timeoutlen = 500
o.pumwidth=35

View File

@ -15,7 +15,7 @@ require('bufferline').setup {
-- NOTE: this plugin is designed with this icon in mind,
-- and so changing this is NOT recommended, this is intended
-- as an escape hatch for people who cannot bear it for whatever reason
indicator_icon = '',
indicator_style = '',
buffer_close_icon = '',
modified_icon = '',
close_icon = '',

View File

@ -0,0 +1,38 @@
require('copilot').setup({
panel = {
enabled = true,
auto_refresh = false,
keymap = {
jump_prev = "[[",
jump_next = "]]",
accept = "<CR>",
refresh = "gr",
open = "<S-CR>"
},
},
suggestion = {
enabled = true,
auto_trigger = false,
debounce = 75,
keymap = {
accept = "<M-l>",
next = "<M-]>",
prev = "<M-[>",
dismiss = "<C-]>",
},
},
filetypes = {
yaml = false,
markdown = false,
help = false,
gitcommit = false,
gitrebase = false,
hgcommit = false,
svn = false,
cvs = false,
["."] = false,
},
copilot_node_command = 'node', -- Node version must be < 18
plugin_manager_path = vim.fn.stdpath("data") .. "/site/pack/packer",
server_opts_overrides = {},
})

View File

@ -0,0 +1,8 @@
-- lspkind.lua
local lspkind = require("lspkind")
lspkind.init({
symbol_map = {
Copilot = ""
},
})
vim.api.nvim_set_hl(0, "CmpItemKindCopilot", {fg ="#6CC644"})

View File

@ -8,6 +8,12 @@ capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities)
-- luasnip setup
local luasnip = require 'luasnip'
local has_words_before = function()
if vim.api.nvim_buf_get_option(0, "buftype") == "prompt" then return false end
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
return col ~= 0 and vim.api.nvim_buf_get_text(0, line-1, 0, line-1, col, {})[1]:match("^%s*$") == nil
end
cmp.setup({
snippet = {
expand = function(args)
@ -38,26 +44,22 @@ cmp.setup({
['<C-e>'] = cmp.mapping.close(),
['<CR>'] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Replace,
select = true,
select = false,
},
-- ['<Tab>'] = function(fallback)
-- if cmp.visible() then
-- cmp.select_next_item()
-- elseif luasnip.expand_or_jumpable() then
-- luasnip.expand_or_jump()
-- else
-- fallback()
-- end
-- end,
-- ['<S-Tab>'] = function(fallback)
-- if cmp.visible() then
-- cmp.select_prev_item()
-- elseif luasnip.jumpable(-1) then
-- luasnip.jump(-1)
-- else
-- fallback()
-- end
-- end,
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif has_words_before() then
cmp.complete()
else
fallback() -- The fallback function sends a already mapped key. In this case, it's probably `<Tab>`.
end
end, { "i", "s" }),
['<S-Tab>'] = cmp.mapping(function()
if cmp.visible() then
cmp.select_prev_item()
end
end, { "i", "s"}),
},
formatting = {
format = lspkind.cmp_format({
@ -101,3 +103,11 @@ for _, lsp in ipairs(servers) do
capabilities = capabilities,
}
end
cmp.event:on("menu_opened", function()
vim.b.copilot_suggestion_hidden = true
end)
cmp.event:on("menu_closed", function()
vim.b.copilot_suggestion_hidden = false
end)

View File

@ -0,0 +1,335 @@
-- 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/sudacode/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?.lua;/home/sudacode/.cache/nvim/packer_hererocks/2.1.0-beta3/share/lua/5.1/?/init.lua;/home/sudacode/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?.lua;/home/sudacode/.cache/nvim/packer_hererocks/2.1.0-beta3/lib/luarocks/rocks-5.1/?/init.lua"
local install_cpath_pattern = "/home/sudacode/.cache/nvim/packer_hererocks/2.1.0-beta3/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 = {
LuaSnip = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/LuaSnip",
url = "https://github.com/L3MON4D3/LuaSnip"
},
["any-jump.vim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/any-jump.vim",
url = "https://github.com/pechorin/any-jump.vim"
},
["auto-pairs"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/auto-pairs",
url = "https://github.com/jiangmiao/auto-pairs"
},
["cmp-buffer"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/cmp-buffer",
url = "https://github.com/hrsh7th/cmp-buffer"
},
["cmp-nvim-lsp"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
},
["cmp-nvim-lua"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/cmp-nvim-lua",
url = "https://github.com/hrsh7th/cmp-nvim-lua"
},
["cmp-path"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/cmp-path",
url = "https://github.com/hrsh7th/cmp-path"
},
cmp_luasnip = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/cmp_luasnip",
url = "https://github.com/saadparwaiz1/cmp_luasnip"
},
["copilot-cmp"] = {
config = { "\27LJ\2\n9\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\16copilot_cmp\frequire\0" },
load_after = {},
loaded = true,
needs_bufread = false,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/opt/copilot-cmp",
url = "https://github.com/zbirenbaum/copilot-cmp"
},
["copilot.lua"] = {
after = { "copilot-cmp" },
config = { "\27LJ\2\n\4\0\0\6\0\20\0\0276\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\6\0005\3\3\0005\4\4\0=\4\5\3=\3\a\0025\3\b\0005\4\t\0=\4\5\3=\3\n\0025\3\v\0=\3\f\0026\3\r\0009\3\14\0039\3\15\3'\5\16\0B\3\2\2'\4\17\0&\3\4\3=\3\18\0024\3\0\0=\3\19\2B\0\2\1K\0\1\0\26server_opts_overrides\24plugin_manager_path\22/site/pack/packer\tdata\fstdpath\afn\bvim\14filetypes\1\0\t\bsvn\1\rhgcommit\1\14gitrebase\1\14gitcommit\1\thelp\1\rmarkdown\1\tyaml\1\6.\1\bcvs\1\15suggestion\1\0\4\tnext\n<M-]>\fdismiss\n<C-]>\tprev\n<M-[>\vaccept\n<M-l>\1\0\3\rdebounce\3K\fenabled\2\17auto_trigger\2\npanel\1\0\1\25copilot_node_command\tnode\vkeymap\1\0\5\14jump_prev\a[[\frefresh\agr\vaccept\t<CR>\topen\v<M-CR>\14jump_next\a]]\1\0\2\17auto_refresh\1\fenabled\2\nsetup\fcopilot\frequire-\1\0\4\0\3\0\0066\0\0\0009\0\1\0003\2\2\0)\3d\0B\0\3\1K\0\1\0\0\rdefer_fn\bvim\0" },
load_after = {},
loaded = true,
needs_bufread = false,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/opt/copilot.lua",
url = "https://github.com/zbirenbaum/copilot.lua"
},
["dashboard-nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/dashboard-nvim",
url = "https://github.com/glepnir/dashboard-nvim"
},
["doom-one.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/doom-one.nvim",
url = "https://github.com/NTBBloodbath/doom-one.nvim"
},
["dracula.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/dracula.nvim",
url = "https://github.com/Mofiqul/dracula.nvim"
},
["fidget.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/fidget.nvim",
url = "https://github.com/j-hui/fidget.nvim"
},
fzf = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/fzf",
url = "https://github.com/junegunn/fzf"
},
["fzf.vim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/fzf.vim",
url = "https://github.com/junegunn/fzf.vim"
},
["github-nvim-theme"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/github-nvim-theme",
url = "https://github.com/projekt0n/github-nvim-theme"
},
["gitsigns.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
url = "https://github.com/lewis6991/gitsigns.nvim"
},
["goto-preview"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/goto-preview",
url = "https://github.com/rmagatti/goto-preview"
},
["lsp_lines.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/lsp_lines.nvim",
url = "https://github.com/ksyasuda/lsp_lines.nvim"
},
["lsp_signature.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/lsp_signature.nvim",
url = "https://github.com/ray-x/lsp_signature.nvim"
},
["lspkind-nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/lspkind-nvim",
url = "https://github.com/onsails/lspkind-nvim"
},
["lualine.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/lualine.nvim",
url = "https://github.com/nvim-lualine/lualine.nvim"
},
["null-ls.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/null-ls.nvim",
url = "https://github.com/jose-elias-alvarez/null-ls.nvim"
},
["nvim-bufferline.lua"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-bufferline.lua",
url = "https://github.com/akinsho/nvim-bufferline.lua"
},
["nvim-cmp"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-cmp",
url = "https://github.com/hrsh7th/nvim-cmp"
},
["nvim-docs-view"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-docs-view",
url = "https://github.com/amrbashir/nvim-docs-view"
},
["nvim-lsp-installer"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-lsp-installer",
url = "https://github.com/williamboman/nvim-lsp-installer"
},
["nvim-lspconfig"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
url = "https://github.com/neovim/nvim-lspconfig"
},
["nvim-lspfuzzy"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-lspfuzzy",
url = "https://github.com/ojroques/nvim-lspfuzzy"
},
["nvim-tree.lua"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-tree.lua",
url = "https://github.com/kyazdani42/nvim-tree.lua"
},
["nvim-treesitter"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
url = "https://github.com/nvim-treesitter/nvim-treesitter"
},
["nvim-web-devicons"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
url = "https://github.com/kyazdani42/nvim-web-devicons"
},
["onedarkpro.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/onedarkpro.nvim",
url = "https://github.com/olimorris/onedarkpro.nvim"
},
["packer.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/packer.nvim",
url = "https://github.com/wbthomason/packer.nvim"
},
["plenary.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/plenary.nvim",
url = "https://github.com/nvim-lua/plenary.nvim"
},
["presence.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/presence.nvim",
url = "https://github.com/andweeb/presence.nvim"
},
["telescope.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/telescope.nvim",
url = "https://github.com/nvim-telescope/telescope.nvim"
},
["vim-commentary"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/vim-commentary",
url = "https://github.com/tpope/vim-commentary"
},
["vim-css-color"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/vim-css-color",
url = "https://github.com/ap/vim-css-color"
},
["vim-floaterm"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/vim-floaterm",
url = "https://github.com/voldikss/vim-floaterm"
},
["vim-surround"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/vim-surround",
url = "https://github.com/tpope/vim-surround"
},
["vim-wakatime"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/vim-wakatime",
url = "https://github.com/wakatime/vim-wakatime"
},
["which-key.nvim"] = {
loaded = true,
path = "/home/sudacode/.local/share/nvim/site/pack/packer/start/which-key.nvim",
url = "https://github.com/folke/which-key.nvim"
}
}
time([[Defining packer_plugins]], false)
-- Load plugins in order defined by `after`
time([[Sequenced loading]], true)
vim.cmd [[ packadd lualine.nvim ]]
vim.cmd [[ packadd copilot.lua ]]
-- Config for: copilot.lua
try_loadstring("\27LJ\2\n\4\0\0\6\0\20\0\0276\0\0\0'\2\1\0B\0\2\0029\0\2\0005\2\6\0005\3\3\0005\4\4\0=\4\5\3=\3\a\0025\3\b\0005\4\t\0=\4\5\3=\3\n\0025\3\v\0=\3\f\0026\3\r\0009\3\14\0039\3\15\3'\5\16\0B\3\2\2'\4\17\0&\3\4\3=\3\18\0024\3\0\0=\3\19\2B\0\2\1K\0\1\0\26server_opts_overrides\24plugin_manager_path\22/site/pack/packer\tdata\fstdpath\afn\bvim\14filetypes\1\0\t\bsvn\1\rhgcommit\1\14gitrebase\1\14gitcommit\1\thelp\1\rmarkdown\1\tyaml\1\6.\1\bcvs\1\15suggestion\1\0\4\tnext\n<M-]>\fdismiss\n<C-]>\tprev\n<M-[>\vaccept\n<M-l>\1\0\3\rdebounce\3K\fenabled\2\17auto_trigger\2\npanel\1\0\1\25copilot_node_command\tnode\vkeymap\1\0\5\14jump_prev\a[[\frefresh\agr\vaccept\t<CR>\topen\v<M-CR>\14jump_next\a]]\1\0\2\17auto_refresh\1\fenabled\2\nsetup\fcopilot\frequire-\1\0\4\0\3\0\0066\0\0\0009\0\1\0003\2\2\0)\3d\0B\0\3\1K\0\1\0\0\rdefer_fn\bvim\0", "config", "copilot.lua")
vim.cmd [[ packadd copilot-cmp ]]
-- Config for: copilot-cmp
try_loadstring("\27LJ\2\n9\0\0\3\0\3\0\0066\0\0\0'\2\1\0B\0\2\0029\0\2\0B\0\1\1K\0\1\0\nsetup\16copilot_cmp\frequire\0", "config", "copilot-cmp")
time([[Sequenced loading]], false)
_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