Put configuration elements in different files
This commit is contained in:
parent
d6a419cfdd
commit
0fcc53b2cf
6 changed files with 171 additions and 170 deletions
|
@ -1,170 +1,5 @@
|
||||||
|
require("functions")
|
||||||
--Plugins
|
require("settings")
|
||||||
--cmd 'packadd paq-nvim
|
require("plugins")
|
||||||
local paq = require("paq")
|
require("plugins-options")
|
||||||
paq {
|
require("keybiding")
|
||||||
"savq/paq-nvim";
|
|
||||||
-- vim airline and vim airline theme
|
|
||||||
'vim-airline/vim-airline';
|
|
||||||
-- vim airline and vim airline theme
|
|
||||||
'vim-airline/vim-airline-themes';
|
|
||||||
'w0rp/ale';
|
|
||||||
-- Base16 theme
|
|
||||||
'chriskempson/base16-vim';
|
|
||||||
|
|
||||||
-- NERDTree file manager
|
|
||||||
'scrooloose/nerdtree';
|
|
||||||
|
|
||||||
-- Vim fugitive
|
|
||||||
'tpope/vim-fugitive';
|
|
||||||
'tpope/vim-surround';
|
|
||||||
'sheerun/vim-polyglot';
|
|
||||||
{'Shougo/deoplete.nvim', run = vim.fn['remote#host#UpdateRemotePlugins']};
|
|
||||||
'zchee/deoplete-jedi';
|
|
||||||
-- Grammalecte
|
|
||||||
'dpelle/vim-Grammalecte';
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
-- General Option
|
|
||||||
vim.opt.autoindent = true
|
|
||||||
vim.opt.background = 'dark'
|
|
||||||
vim.opt.backupdir = os.getenv("HOME") .. '/.local/tmp/nvim'
|
|
||||||
vim.opt.clipboard = 'unnamedplus' --Use system clipboard
|
|
||||||
vim.opt.colorcolumn = '80'
|
|
||||||
vim.opt.directory = os.getenv("HOME") .. '/.local/tmp/nvim'
|
|
||||||
vim.opt.expandtab = true
|
|
||||||
vim.opt.foldmethod = 'syntax'
|
|
||||||
vim.opt.gdefault = true -- search: all occurrences by default
|
|
||||||
vim.opt.hlsearch = true -- search: hightlight terms
|
|
||||||
vim.opt.ignorecase = true
|
|
||||||
vim.opt.incsearch = true
|
|
||||||
vim.opt.laststatus = 1
|
|
||||||
-- show special character
|
|
||||||
vim.opt.listchars = {tab = '→ ', trail = '␣', eol = '', extends = '…' }
|
|
||||||
|
|
||||||
vim.opt.number = true
|
|
||||||
vim.opt.shiftwidth = 4
|
|
||||||
vim.opt.showmatch = true
|
|
||||||
vim.opt.smartcase = true -- search: try :to be smart about cases
|
|
||||||
vim.opt.smartindent = true
|
|
||||||
vim.opt.tabstop = 4
|
|
||||||
vim.opt.termguicolors = true -- 24 bits color support
|
|
||||||
vim.opt.wildmenu = true -- activate enhanced user menu
|
|
||||||
vim.opt.wildmode = 'lastused:full,list' -- enhance menu
|
|
||||||
|
|
||||||
-- Options than need vim.cmd
|
|
||||||
vim.cmd('syntax on')
|
|
||||||
vim.cmd('colorscheme base16-classic-dark')
|
|
||||||
|
|
||||||
-- Global variables
|
|
||||||
vim.g['base16colorspace'] = 256
|
|
||||||
|
|
||||||
-- Vim-airLine
|
|
||||||
vim.g['airline#extensions#tabline#enabled'] = 1
|
|
||||||
vim.g['airline#extensions#tabline#left_sep'] = ''
|
|
||||||
vim.g['airline#extensions#tabline#left_alt_sep'] = '|'
|
|
||||||
vim.g['g:airline_powerline_fonts'] = 1
|
|
||||||
vim.g['airline_skip_empty_sections'] = 1
|
|
||||||
vim.g['airline#extensions#tabline#show_splits'] = 0
|
|
||||||
|
|
||||||
-- ALE
|
|
||||||
vim.g['ale_sign_column_always'] = 1
|
|
||||||
vim.g['ale_sign_error'] = '⚠'
|
|
||||||
vim.g['ale_sign_warning'] = '⚠'
|
|
||||||
vim.g['ale_echo_msg_format'] = '[%linter%] %s [%severity%]'
|
|
||||||
|
|
||||||
-- -- Code Fold
|
|
||||||
-- "Load and save view atomatocally (save and restore fold)
|
|
||||||
vim.cmd('au BufWinLeave *.* mkview')
|
|
||||||
vim.cmd('au BufWinEnter *.* silent! loadview')
|
|
||||||
|
|
||||||
-- NerdTree
|
|
||||||
-- Close NERDTree if it is the last buffer open
|
|
||||||
vim.cmd('au bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif')
|
|
||||||
|
|
||||||
-- Grammalecte
|
|
||||||
vim.g['grammalecte_cli_py'] = '/usr/bin/grammalecte-cli'
|
|
||||||
|
|
||||||
-- Deoplete
|
|
||||||
vim.g['deoplete#enable_at_startup'] = 1
|
|
||||||
-- inoremap <silent><expr><tab> pumvisible()? "\<c-n>" : "\<tab>"
|
|
||||||
-- inoremap <silent><expr><s-tab> pumvisible()? "\<c-p>" : "\<s-tab>"
|
|
||||||
|
|
||||||
|
|
||||||
local map = function(key)
|
|
||||||
-- get the extra options
|
|
||||||
local opts = {noremap = true}
|
|
||||||
for i, v in pairs(key) do
|
|
||||||
if type(i) == 'string' then opts[i] = v end
|
|
||||||
end
|
|
||||||
|
|
||||||
-- basic support for buffer-scoped keybindings
|
|
||||||
local buffer = opts.buffer
|
|
||||||
opts.buffer = nil
|
|
||||||
|
|
||||||
if buffer then
|
|
||||||
vim.api.nvim_buf_set_keymap(0, key[1], key[2], key[3], opts)
|
|
||||||
else
|
|
||||||
vim.api.nvim_set_keymap(key[1], key[2], key[3], opts)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
-- " Key biding
|
|
||||||
-- " ----------
|
|
||||||
-- map {'', '[C-left]', ':tabprevious<CR>', noremap = false, silent = true}
|
|
||||||
-- map {'', '[C-right]', ':tabnext<CR>', noremap = false, silent = true}
|
|
||||||
map {'n', '<leader>/', ':nohlsearch<CR>', noremap = false, silent = true}
|
|
||||||
map {'n', '<F2>', ':NERDTreeToggle<CR>', noremap = false, silent = true}
|
|
||||||
|
|
||||||
-- Move tabs with \[ and \]
|
|
||||||
map {'n', '<Leader>]', ':tabnext<CR>', noremap = false, silent = true}
|
|
||||||
map {'n', '<Leader>[', ':tabprev<CR>', noremap = false, silent = true}
|
|
||||||
map {'n', '<leader>l', ':set list!<CR>', silent = true}
|
|
||||||
|
|
||||||
-- Manage Tab
|
|
||||||
local t = function(str)
|
|
||||||
return vim.api.nvim_replace_termcodes(str, true, true, true)
|
|
||||||
end
|
|
||||||
|
|
||||||
_G.smart_tab = function()
|
|
||||||
if vim.fn.pumvisible() == 1 then
|
|
||||||
return t'<C-n>'
|
|
||||||
else
|
|
||||||
return t'<Tab>'
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
'i',
|
|
||||||
'<Tab>',
|
|
||||||
'v:lua.smart_tab()',
|
|
||||||
{noremap = true, expr = true}
|
|
||||||
)
|
|
||||||
|
|
||||||
-- Autotype
|
|
||||||
vim.cmd('au BufRead,BufNewFile *.md setlocal textwidth=80')
|
|
||||||
vim.cmd('au BufRead,BufNewFile *.tex setlocal textwidth=80')
|
|
||||||
vim.cmd('au BufNewFile,BufRead /tmp/neomutt* set tw=72 fo=awq comments+=nb:> noautoindent filetype=mail')
|
|
||||||
|
|
||||||
-- Ignore these filenames during enhanced command line completion.
|
|
||||||
vim.opt.wildignore = {
|
|
||||||
'*.bak',
|
|
||||||
'*.class',
|
|
||||||
'*.aux',
|
|
||||||
'*.out',
|
|
||||||
'*.toc',
|
|
||||||
'*.jpg',
|
|
||||||
'*.bmp',
|
|
||||||
'*.gif',
|
|
||||||
'*.png',
|
|
||||||
'*.luac',
|
|
||||||
'*.o',
|
|
||||||
'*.obj',
|
|
||||||
'*.exe',
|
|
||||||
'*.dll',
|
|
||||||
'*.manifest',
|
|
||||||
'*.pyc',
|
|
||||||
'*.spl',
|
|
||||||
'*.sw?'
|
|
||||||
}
|
|
||||||
|
|
17
conf/nvim/lua/functions.lua
Normal file
17
conf/nvim/lua/functions.lua
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
function map(key)
|
||||||
|
-- get the extra options
|
||||||
|
local opts = {noremap = true}
|
||||||
|
for i, v in pairs(key) do
|
||||||
|
if type(i) == 'string' then opts[i] = v end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- basic support for buffer-scoped keybindings
|
||||||
|
local buffer = opts.buffer
|
||||||
|
opts.buffer = nil
|
||||||
|
|
||||||
|
if buffer then
|
||||||
|
vim.api.nvim_buf_set_keymap(0, key[1], key[2], key[3], opts)
|
||||||
|
else
|
||||||
|
vim.api.nvim_set_keymap(key[1], key[2], key[3], opts)
|
||||||
|
end
|
||||||
|
end
|
32
conf/nvim/lua/keybiding.lua
Normal file
32
conf/nvim/lua/keybiding.lua
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
-- " Key biding
|
||||||
|
-- " ----------
|
||||||
|
-- map {'', '[C-left]', ':tabprevious<CR>', noremap = false, silent = true}
|
||||||
|
-- map {'', '[C-right]', ':tabnext<CR>', noremap = false, silent = true}
|
||||||
|
map {'n', '<leader>/', ':nohlsearch<CR>', noremap = false, silent = true}
|
||||||
|
map {'n', '<F2>', ':NERDTreeToggle<CR>', noremap = false, silent = true}
|
||||||
|
|
||||||
|
-- Move tabs with \[ and \]
|
||||||
|
map {'n', '<Leader>]', ':tabnext<CR>', noremap = false, silent = true}
|
||||||
|
map {'n', '<Leader>[', ':tabprev<CR>', noremap = false, silent = true}
|
||||||
|
map {'n', '<leader>l', ':set list!<CR>', silent = true}
|
||||||
|
|
||||||
|
-- Manage Tab
|
||||||
|
local t = function(str)
|
||||||
|
return vim.api.nvim_replace_termcodes(str, true, true, true)
|
||||||
|
end
|
||||||
|
|
||||||
|
_G.smart_tab = function()
|
||||||
|
if vim.fn.pumvisible() == 1 then
|
||||||
|
return t'<C-n>'
|
||||||
|
else
|
||||||
|
return t'<Tab>'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_set_keymap(
|
||||||
|
'i',
|
||||||
|
'<Tab>',
|
||||||
|
'v:lua.smart_tab()',
|
||||||
|
{noremap = true, expr = true}
|
||||||
|
)
|
26
conf/nvim/lua/plugins-options.lua
Normal file
26
conf/nvim/lua/plugins-options.lua
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
-- Global variables
|
||||||
|
vim.g['base16colorspace'] = 256
|
||||||
|
|
||||||
|
-- Vim-airLine
|
||||||
|
vim.g['airline#extensions#tabline#enabled'] = 1
|
||||||
|
vim.g['airline#extensions#tabline#left_sep'] = ''
|
||||||
|
vim.g['airline#extensions#tabline#left_alt_sep'] = '|'
|
||||||
|
vim.g['g:airline_powerline_fonts'] = 1
|
||||||
|
vim.g['airline_skip_empty_sections'] = 1
|
||||||
|
vim.g['airline#extensions#tabline#show_splits'] = 0
|
||||||
|
|
||||||
|
-- ALE
|
||||||
|
vim.g['ale_sign_column_always'] = 1
|
||||||
|
vim.g['ale_sign_error'] = '⚠'
|
||||||
|
vim.g['ale_sign_warning'] = '⚠'
|
||||||
|
vim.g['ale_echo_msg_format'] = '[%linter%] %s [%severity%]'
|
||||||
|
|
||||||
|
-- NerdTree
|
||||||
|
-- Close NERDTree if it is the last buffer open
|
||||||
|
vim.cmd('au bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif')
|
||||||
|
|
||||||
|
-- Grammalecte
|
||||||
|
vim.g['grammalecte_cli_py'] = '/usr/bin/grammalecte-cli'
|
||||||
|
|
||||||
|
-- Deoplete
|
||||||
|
vim.g['deoplete#enable_at_startup'] = 1
|
24
conf/nvim/lua/plugins.lua
Normal file
24
conf/nvim/lua/plugins.lua
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
--Plugins
|
||||||
|
local paq = require("paq")
|
||||||
|
paq {
|
||||||
|
"savq/paq-nvim";
|
||||||
|
-- vim airline and vim airline theme
|
||||||
|
'vim-airline/vim-airline';
|
||||||
|
-- vim airline and vim airline theme
|
||||||
|
'vim-airline/vim-airline-themes';
|
||||||
|
'w0rp/ale';
|
||||||
|
-- Base16 theme
|
||||||
|
'chriskempson/base16-vim';
|
||||||
|
|
||||||
|
-- NERDTree file manager
|
||||||
|
'scrooloose/nerdtree';
|
||||||
|
|
||||||
|
-- Vim fugitive
|
||||||
|
'tpope/vim-fugitive';
|
||||||
|
'tpope/vim-surround';
|
||||||
|
'sheerun/vim-polyglot';
|
||||||
|
{'Shougo/deoplete.nvim', run = vim.fn['remote#host#UpdateRemotePlugins']};
|
||||||
|
'zchee/deoplete-jedi';
|
||||||
|
-- Grammalecte
|
||||||
|
'dpelle/vim-Grammalecte';
|
||||||
|
}
|
67
conf/nvim/lua/settings.lua
Normal file
67
conf/nvim/lua/settings.lua
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
-- General Option
|
||||||
|
vim.opt.autoindent = true
|
||||||
|
vim.opt.background = 'dark'
|
||||||
|
vim.opt.backupdir = os.getenv("HOME") .. '/.local/tmp/nvim'
|
||||||
|
vim.opt.clipboard = 'unnamedplus' --Use system clipboard
|
||||||
|
vim.opt.colorcolumn = '80'
|
||||||
|
vim.opt.directory = os.getenv("HOME") .. '/.local/tmp/nvim'
|
||||||
|
vim.opt.expandtab = true
|
||||||
|
vim.opt.foldmethod = 'syntax'
|
||||||
|
vim.opt.gdefault = true -- search: all occurrences by default
|
||||||
|
vim.opt.hlsearch = true -- search: hightlight terms
|
||||||
|
vim.opt.ignorecase = true
|
||||||
|
vim.opt.incsearch = true
|
||||||
|
vim.opt.laststatus = 1
|
||||||
|
-- show special character
|
||||||
|
vim.opt.listchars = {tab = '→ ', trail = '␣', eol = '', extends = '…' }
|
||||||
|
|
||||||
|
vim.opt.number = true
|
||||||
|
vim.opt.shiftwidth = 4
|
||||||
|
vim.opt.showmatch = true
|
||||||
|
vim.opt.smartcase = true -- search: try :to be smart about cases
|
||||||
|
vim.opt.smartindent = true
|
||||||
|
vim.opt.tabstop = 4
|
||||||
|
vim.opt.termguicolors = true -- 24 bits color support
|
||||||
|
vim.opt.wildmenu = true -- activate enhanced user menu
|
||||||
|
vim.opt.wildmode = 'lastused:full,list' -- enhance menu
|
||||||
|
|
||||||
|
-- Options than need vim.cmd
|
||||||
|
vim.cmd('syntax on')
|
||||||
|
vim.cmd('colorscheme base16-classic-dark')
|
||||||
|
|
||||||
|
-- -- Code Fold
|
||||||
|
-- "Load and save view atomatocally (save and restore fold)
|
||||||
|
vim.cmd('au BufWinLeave *.* mkview')
|
||||||
|
vim.cmd('au BufWinEnter *.* silent! loadview')
|
||||||
|
|
||||||
|
-- inoremap <silent><expr><tab> pumvisible()? "\<c-n>" : "\<tab>"
|
||||||
|
-- inoremap <silent><expr><s-tab> pumvisible()? "\<c-p>" : "\<s-tab>"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- Autotype
|
||||||
|
vim.cmd('au BufRead,BufNewFile *.md setlocal textwidth=80')
|
||||||
|
vim.cmd('au BufRead,BufNewFile *.tex setlocal textwidth=80')
|
||||||
|
vim.cmd('au BufNewFile,BufRead /tmp/neomutt* set tw=72 fo=awq comments+=nb:> noautoindent filetype=mail')
|
||||||
|
|
||||||
|
-- Ignore these filenames during enhanced command line completion.
|
||||||
|
vim.opt.wildignore = {
|
||||||
|
'*.bak',
|
||||||
|
'*.class',
|
||||||
|
'*.aux',
|
||||||
|
'*.out',
|
||||||
|
'*.toc',
|
||||||
|
'*.jpg',
|
||||||
|
'*.bmp',
|
||||||
|
'*.gif',
|
||||||
|
'*.png',
|
||||||
|
'*.luac',
|
||||||
|
'*.o',
|
||||||
|
'*.obj',
|
||||||
|
'*.exe',
|
||||||
|
'*.dll',
|
||||||
|
'*.manifest',
|
||||||
|
'*.pyc',
|
||||||
|
'*.spl',
|
||||||
|
'*.sw?'
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue