Nvim: move config to lua, first step
This commit is contained in:
@@ -1,9 +1,13 @@
|
|||||||
lua << EOF
|
lua << EOF
|
||||||
vim.g.loaded = 1
|
require('core.config')
|
||||||
vim.g.loaded_netrwPlugin = 1
|
require('core.mappings')
|
||||||
|
--require('core.plugins')
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
let plug_install = 0
|
|
||||||
|
"let mapleader = "\\"
|
||||||
|
nmap <space> <leader>
|
||||||
|
|
||||||
let autoload_plug_path = stdpath('config') . '/autoload/plug.vim'
|
let autoload_plug_path = stdpath('config') . '/autoload/plug.vim'
|
||||||
|
|
||||||
if !filereadable(autoload_plug_path)
|
if !filereadable(autoload_plug_path)
|
||||||
@@ -43,10 +47,11 @@ Plug 'ftilde/vim-ugdb'
|
|||||||
" Completion {{{
|
" Completion {{{
|
||||||
Plug 'hrsh7th/cmp-buffer'
|
Plug 'hrsh7th/cmp-buffer'
|
||||||
Plug 'hrsh7th/cmp-cmdline'
|
Plug 'hrsh7th/cmp-cmdline'
|
||||||
Plug 'petertriho/cmp-git'
|
|
||||||
Plug 'hrsh7th/cmp-nvim-lsp'
|
Plug 'hrsh7th/cmp-nvim-lsp'
|
||||||
Plug 'hrsh7th/cmp-path'
|
Plug 'hrsh7th/cmp-path'
|
||||||
Plug 'hrsh7th/nvim-cmp'
|
Plug 'hrsh7th/nvim-cmp'
|
||||||
|
Plug 'mstanciu552/cmp-matlab'
|
||||||
|
Plug 'petertriho/cmp-git'
|
||||||
" }}}
|
" }}}
|
||||||
|
|
||||||
" Snippets {{{
|
" Snippets {{{
|
||||||
@@ -141,31 +146,6 @@ Plug 'debugloop/telescope-undo.nvim'
|
|||||||
|
|
||||||
call plug#end()
|
call plug#end()
|
||||||
|
|
||||||
set termguicolors
|
|
||||||
set shell=/bin/bash
|
|
||||||
|
|
||||||
if plug_install
|
|
||||||
PlugInstall --sync
|
|
||||||
endif
|
|
||||||
unlet plug_install
|
|
||||||
|
|
||||||
set number
|
|
||||||
set relativenumber
|
|
||||||
set numberwidth=1
|
|
||||||
set clipboard+=unnamedplus
|
|
||||||
|
|
||||||
set noshowmode
|
|
||||||
set laststatus=2
|
|
||||||
|
|
||||||
lua << EOF
|
|
||||||
require("virt-column").setup { }
|
|
||||||
require('compiler-explorer').setup()
|
|
||||||
require("symbols-outline").setup()
|
|
||||||
EOF
|
|
||||||
set colorcolumn=80
|
|
||||||
|
|
||||||
set background=dark
|
|
||||||
|
|
||||||
"colorscheme enfocado
|
"colorscheme enfocado
|
||||||
"lua require('lualine').setup { options = { theme = 'enfocado' } }
|
"lua require('lualine').setup { options = { theme = 'enfocado' } }
|
||||||
|
|
||||||
@@ -174,36 +154,9 @@ lua require('lualine').setup { options = { theme = 'falcon' } }
|
|||||||
|
|
||||||
"highlight MatchParen cterm=underline ctermbg=black ctermfg=NONE
|
"highlight MatchParen cterm=underline ctermbg=black ctermfg=NONE
|
||||||
"highlight VirtColumn ctermfg=DarkGrey ctermbg=NONE
|
"highlight VirtColumn ctermfg=DarkGrey ctermbg=NONE
|
||||||
set listchars=tab:▸\ ,trail:¬
|
|
||||||
set list
|
|
||||||
"hi clear SpellBad
|
"hi clear SpellBad
|
||||||
"hi SpellBad cterm=underline
|
"hi SpellBad cterm=underline
|
||||||
|
|
||||||
set tabstop=2
|
|
||||||
set shiftwidth=2
|
|
||||||
set softtabstop=2
|
|
||||||
|
|
||||||
set expandtab
|
|
||||||
|
|
||||||
set ignorecase
|
|
||||||
set smartcase
|
|
||||||
|
|
||||||
set gdefault
|
|
||||||
|
|
||||||
set textwidth=80
|
|
||||||
set formatoptions+=tlo/qj
|
|
||||||
set scrolloff=10
|
|
||||||
set nowrap
|
|
||||||
set sidescroll=5
|
|
||||||
|
|
||||||
set inccommand="split"
|
|
||||||
|
|
||||||
set lazyredraw
|
|
||||||
|
|
||||||
" space one line, home,end globally increase/decrease
|
|
||||||
nnoremap <Home> zc
|
|
||||||
nnoremap <End> zo
|
|
||||||
|
|
||||||
" Ctags {{{
|
" Ctags {{{
|
||||||
if isdirectory($HOME . '/.cache/nvim/tags') == 0
|
if isdirectory($HOME . '/.cache/nvim/tags') == 0
|
||||||
:silent !mkdir -p ~/.cache/nvim/tags > /dev/null 2>&1
|
:silent !mkdir -p ~/.cache/nvim/tags > /dev/null 2>&1
|
||||||
@@ -217,92 +170,6 @@ endif
|
|||||||
set undodir=~/.cache/nvim/undo/
|
set undodir=~/.cache/nvim/undo/
|
||||||
set undofile
|
set undofile
|
||||||
|
|
||||||
"let mapleader = "\\"
|
|
||||||
nmap <space> <leader>
|
|
||||||
|
|
||||||
tnoremap <ESC><ESC> <C-\><C-n>
|
|
||||||
|
|
||||||
inoremap jj <ESC>
|
|
||||||
inoremap jk <ESC>
|
|
||||||
"inoremap :w<CR> <Esc>:w<CR>
|
|
||||||
nnoremap Q <cmd>q
|
|
||||||
|
|
||||||
" Reselect visual block after incrementing/decrementing
|
|
||||||
vnoremap <c-a> <c-a>gv
|
|
||||||
vnoremap <c-x> <c-x>gv
|
|
||||||
|
|
||||||
nnoremap <leader>2 <esc>:set tabstop=2 softtabstop=2 shiftwidth=2<cr>
|
|
||||||
nnoremap <leader>4 <esc>:set tabstop=4 softtabstop=4 shiftwidth=4<cr>
|
|
||||||
nnoremap <leader>8 <esc>:set tabstop=8 softtabstop=8 shiftwidth=8<cr>
|
|
||||||
|
|
||||||
nnoremap <leader><space> :nohlsearch<cr>
|
|
||||||
|
|
||||||
" TextEdit might fail if hidden is not set.
|
|
||||||
set hidden
|
|
||||||
|
|
||||||
" Some servers have issues with backup files, see #649.
|
|
||||||
set nobackup
|
|
||||||
set nowritebackup
|
|
||||||
|
|
||||||
" New dynamic window height
|
|
||||||
"set cmdheight=0
|
|
||||||
set cmdheight=1
|
|
||||||
|
|
||||||
" Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
|
|
||||||
" delays and poor user experience.
|
|
||||||
set updatetime=300
|
|
||||||
|
|
||||||
" Don't pass messages to |ins-completion-menu|.
|
|
||||||
set shortmess+=c
|
|
||||||
set shortmess-=F
|
|
||||||
|
|
||||||
set signcolumn=auto
|
|
||||||
|
|
||||||
set wildmode=longest,list,full
|
|
||||||
set completeopt=menu,menuone,noselect
|
|
||||||
|
|
||||||
set mouse=
|
|
||||||
|
|
||||||
"match Error /\s\+$\|DU\cPA/
|
|
||||||
|
|
||||||
setglobal virtualedit=block
|
|
||||||
setglobal shiftround
|
|
||||||
|
|
||||||
let g:vimwiki_list = [{'path': '~/vimwiki/',
|
|
||||||
\ 'syntax': 'markdown', 'ext': '.md'}]
|
|
||||||
|
|
||||||
""""""""""""""""""
|
|
||||||
" gui settings "
|
|
||||||
""""""""""""""""""
|
|
||||||
set guifont=IBM\ Plex\ Mono\ Text:h9:e-subpixelantyalias
|
|
||||||
let g:neovide_cursor_vfx_mode = "pixiedust"
|
|
||||||
let g:neovide_refresh_rate = 120
|
|
||||||
let g:neovide_refresh_rate_idle = 5
|
|
||||||
let g:neovide_remember_window_size = v:false
|
|
||||||
|
|
||||||
lua << EOF
|
lua << EOF
|
||||||
vim.o.splitbelow = true
|
require('core.temp')
|
||||||
vim.o.splitright = true
|
|
||||||
|
|
||||||
require('pretty-fold').setup()
|
|
||||||
require('pretty-fold').ft_setup('cpp', {
|
|
||||||
process_comment_signs = false,
|
|
||||||
--comment_signs = {
|
|
||||||
-- '//', -- C++ Doxygen comments
|
|
||||||
--},
|
|
||||||
})
|
|
||||||
require('fold-preview').setup()
|
|
||||||
--require('lsp_lines').setup()
|
|
||||||
|
|
||||||
require('image').setup {
|
|
||||||
render = {
|
|
||||||
min_padding = 5,
|
|
||||||
show_label = true,
|
|
||||||
use_dither = true,
|
|
||||||
},
|
|
||||||
events = {
|
|
||||||
update_on_nvim_resize = true,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
EOF
|
EOF
|
||||||
|
|||||||
97
.config/nvim/lua/core/config.lua
Normal file
97
.config/nvim/lua/core/config.lua
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
vim.g.loaded = 1
|
||||||
|
vim.g.loaded_netrwPlugin = 1
|
||||||
|
vim.g.plug_install = 0
|
||||||
|
vim.opt.termguicolors = true
|
||||||
|
|
||||||
|
vim.opt.shell = '/bin/bash'
|
||||||
|
|
||||||
|
vim.opt.number = true
|
||||||
|
--vim.o.relativenumber = 1
|
||||||
|
vim.opt.numberwidth = 1
|
||||||
|
vim.opt.clipboard = "unnamedplus"
|
||||||
|
|
||||||
|
vim.opt.showmode = true
|
||||||
|
vim.opt.laststatus = 2
|
||||||
|
|
||||||
|
vim.opt.background = 'dark'
|
||||||
|
|
||||||
|
vim.opt.splitbelow = true
|
||||||
|
vim.opt.splitright = true
|
||||||
|
|
||||||
|
-- gui settings
|
||||||
|
vim.opt.guifont="IBM Plex Mono Text:h9:e-subpixelantyalias"
|
||||||
|
vim.g.neovide_cursor_vfx_mode = 'pixiedust'
|
||||||
|
vim.g.neovide_refresh_rate = 120
|
||||||
|
vim.g.neovide_refresh_rate_idle = 5
|
||||||
|
vim.g.neovide_remember_window_size = 0
|
||||||
|
|
||||||
|
vim.opt.listchars = { tab = "▸ ", trail = "¬" }
|
||||||
|
vim.opt.list = true
|
||||||
|
vim.opt.tabstop=2
|
||||||
|
vim.opt.shiftwidth=2
|
||||||
|
vim.opt.softtabstop=2
|
||||||
|
|
||||||
|
vim.opt.expandtab = true
|
||||||
|
|
||||||
|
vim.opt.ignorecase = true
|
||||||
|
vim.opt.smartcase = true
|
||||||
|
|
||||||
|
vim.opt.gdefault = true
|
||||||
|
|
||||||
|
vim.opt.textwidth = 80
|
||||||
|
vim.opt.colorcolumn = { 80 }
|
||||||
|
vim.opt.formatoptions:append("tlo/qj")
|
||||||
|
vim.opt.scrolloff = 10
|
||||||
|
vim.opt.wrap = false
|
||||||
|
vim.opt.sidescroll = 5
|
||||||
|
vim.opt.sidescroll = 5
|
||||||
|
|
||||||
|
vim.opt.inccommand = "split"
|
||||||
|
|
||||||
|
vim.opt.lazyredraw = true
|
||||||
|
|
||||||
|
vim.opt.hidden = true
|
||||||
|
|
||||||
|
vim.opt.backup = false
|
||||||
|
vim.opt.writebackup = false
|
||||||
|
|
||||||
|
-- New dynamic window height
|
||||||
|
--vim.opt.cmdheight = 0
|
||||||
|
vim.opt.cmdheight = 1
|
||||||
|
|
||||||
|
-- Having longer updatetime (default is 4000 ms = 4 s) leads to noticeable
|
||||||
|
-- delays and poor user experience.
|
||||||
|
--vim.opt.updatetime = 300
|
||||||
|
|
||||||
|
-- Don't pass messages to |ins-completion-menu|.
|
||||||
|
vim.opt.shortmess:append('c')
|
||||||
|
vim.opt.shortmess:remove('F')
|
||||||
|
|
||||||
|
vim.opt.signcolumn = "auto"
|
||||||
|
|
||||||
|
vim.opt.wildmode = "longest,list,full"
|
||||||
|
vim.opt.completeopt = "menu,menuone,noselect"
|
||||||
|
|
||||||
|
vim.opt.mouse = ""
|
||||||
|
|
||||||
|
--match Error /\s\+$\|DU\cPA/
|
||||||
|
|
||||||
|
vim.opt.virtualedit = "block"
|
||||||
|
vim.opt.shiftround = true
|
||||||
|
|
||||||
|
vim.opt.wildignorecase = true -- When set case is ignored when completing file names and directories
|
||||||
|
vim.opt.wildignore = [[
|
||||||
|
.git,.hg,.svn
|
||||||
|
*.aux,*.out,*.toc
|
||||||
|
*.o,*.obj,*.exe,*.dll,*.manifest,*.rbc,*.class
|
||||||
|
*.ai,*.bmp,*.gif,*.ico,*.jpg,*.jpeg,*.png,*.psd,*.webp
|
||||||
|
*.avi,*.divx,*.mp4,*.webm,*.mov,*.m2ts,*.mkv,*.vob,*.mpg,*.mpeg
|
||||||
|
*.mp3,*.oga,*.ogg,*.wav,*.flac
|
||||||
|
*.eot,*.otf,*.ttf,*.woff
|
||||||
|
*.doc,*.pdf,*.cbr,*.cbz
|
||||||
|
*.zip,*.tar.gz,*.tar.bz2,*.rar,*.tar.xz,*.kgb
|
||||||
|
*.swp,.lock,.DS_Store,._*
|
||||||
|
*.log
|
||||||
|
*/tmp/*,*.so,*.swp,*.zip,**/node_modules/**,**/target/**,**.terraform/**"
|
||||||
|
]]
|
||||||
|
|
||||||
30
.config/nvim/lua/core/mappings.lua
Normal file
30
.config/nvim/lua/core/mappings.lua
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
local map = vim.keymap.set
|
||||||
|
local default_options = { silent = true }
|
||||||
|
local expr_options = { expr = true, silent = true }
|
||||||
|
|
||||||
|
-- space one line, home,end globally increase/decrease
|
||||||
|
map('n', '<Home>', 'zc', default_options)
|
||||||
|
map('n', '<End>', 'zo', default_options)
|
||||||
|
|
||||||
|
map('t', '<ESC><ESC>', '<C-\\><C-n>', default_options)
|
||||||
|
|
||||||
|
map('i', 'jj', '<ESC>', default_options)
|
||||||
|
map('i', 'jk', '<ESC>', default_options)
|
||||||
|
--map('i', ':w<CR>', '<Esc>:w<CR>', default_options)
|
||||||
|
map('n', 'Q', '<cmd>q', default_options)
|
||||||
|
|
||||||
|
-- Reselect visual block after incrementing/decrementing
|
||||||
|
map('v', '<c-a>', '<c-a>gv', default_options)
|
||||||
|
map('v', '<c-x>', '<c-x>gv', default_options)
|
||||||
|
|
||||||
|
map('n', '<leader>y', '"_y', default_options)
|
||||||
|
map('n', '<leader>d', '"_d', default_options)
|
||||||
|
map('v', '<leader>p', '"_p', default_options)
|
||||||
|
map("v", "p", '"_dp', default_options)
|
||||||
|
map("v", "P", '"_dP', default_options)
|
||||||
|
|
||||||
|
map('n', '<leader>2', '<esc>:set tabstop=2 softtabstop=2 shiftwidth=2<cr>', default_options)
|
||||||
|
map('n', '<leader>4', '<esc>:set tabstop=4 softtabstop=4 shiftwidth=4<cr>', default_options)
|
||||||
|
map('n', '<leader>8', '<esc>:set tabstop=8 softtabstop=8 shiftwidth=8<cr>', default_options)
|
||||||
|
|
||||||
|
map('n', '<leader><space>', '<cmd>nohlsearch<cr>', default_options)
|
||||||
24
.config/nvim/lua/core/temp.lua
Normal file
24
.config/nvim/lua/core/temp.lua
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
require("virt-column").setup { }
|
||||||
|
require('compiler-explorer').setup()
|
||||||
|
require("symbols-outline").setup()
|
||||||
|
|
||||||
|
require('pretty-fold').setup()
|
||||||
|
require('pretty-fold').ft_setup('cpp', {
|
||||||
|
process_comment_signs = false,
|
||||||
|
--comment_signs = {
|
||||||
|
-- '//', -- C++ Doxygen comments
|
||||||
|
--},
|
||||||
|
})
|
||||||
|
require('fold-preview').setup()
|
||||||
|
--require('lsp_lines').setup()
|
||||||
|
|
||||||
|
require('image').setup {
|
||||||
|
render = {
|
||||||
|
min_padding = 5,
|
||||||
|
show_label = true,
|
||||||
|
use_dither = true,
|
||||||
|
},
|
||||||
|
events = {
|
||||||
|
update_on_nvim_resize = true,
|
||||||
|
},
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user