mirror of https://github.com/mitchell/dotfiles.git
Swap neovim LSP and zen mode plugins, and set kitty font
This commit is contained in:
parent
aaf5a1d0ca
commit
ed4e3a40e2
|
@ -6,10 +6,10 @@
|
|||
#: individual font faces and even specify special fonts for particular
|
||||
#: characters.
|
||||
|
||||
font_family JetBrains Mono
|
||||
bold_font JetBrains Mono Bold
|
||||
italic_font JetBrains Mono Italic
|
||||
bold_italic_font JetBrains Mono Bold Italic
|
||||
font_family JetBrainsMono Nerd Font
|
||||
bold_font JetBrainsMono Nerd Font Bold
|
||||
italic_font JetBrainsMono Nerd Font Italic
|
||||
bold_italic_font JetBrainsMono Nerd Font Bold Italic
|
||||
|
||||
#: You can specify different fonts for the bold/italic/bold-italic
|
||||
#: variants. To get a full list of supported fonts use the `kitty
|
||||
|
|
|
@ -1,9 +1,17 @@
|
|||
vim.cmd("set runtimepath^=~/.vim runtimepath+=~/.vim/after")
|
||||
vim.cmd("let &packpath = &runtimepath")
|
||||
vim.cmd("source ~/.vimrc")
|
||||
vim.keymap.set("n", "<Esc>", "<C-\\><C-n>")
|
||||
vim.keymap.set("t", "<Esc>", "<C-\\><C-n>")
|
||||
|
||||
require('symbols-outline').setup()
|
||||
require('twilight').setup()
|
||||
require('zen-mode').setup({
|
||||
window = {
|
||||
backdrop = 1,
|
||||
}
|
||||
})
|
||||
require('symbols-outline').setup({
|
||||
autofold_depth = 2,
|
||||
})
|
||||
require('leap').add_default_mappings()
|
||||
|
||||
require('noice').setup({
|
||||
|
@ -58,3 +66,58 @@ require('nvim-treesitter.configs').setup({
|
|||
enable = true
|
||||
}
|
||||
})
|
||||
|
||||
-- LSP Mappings.
|
||||
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
|
||||
local opts = { noremap=true, silent=true }
|
||||
vim.keymap.set('n', '<leader>d', vim.diagnostic.open_float, opts)
|
||||
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts)
|
||||
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, opts)
|
||||
vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist, opts)
|
||||
|
||||
-- Use an on_attach function to only map the following keys
|
||||
-- after the language server attaches to the current buffer
|
||||
local on_attach = function(client, bufnr)
|
||||
-- Enable completion triggered by <c-x><c-o>
|
||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
||||
|
||||
-- Mappings.
|
||||
-- See `:help vim.lsp.*` for documentation on any of the below functions
|
||||
local bufopts = { noremap=true, silent=true, buffer=bufnr }
|
||||
vim.keymap.set('n', '<leader>h', vim.lsp.buf.hover, bufopts)
|
||||
vim.keymap.set('n', '<C-k>', vim.lsp.buf.signature_help, bufopts)
|
||||
vim.keymap.set('n', '<leader>wa', vim.lsp.buf.add_workspace_folder, bufopts)
|
||||
vim.keymap.set('n', '<leader>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
|
||||
vim.keymap.set('n', '<leader>wl', function()
|
||||
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
||||
end, bufopts)
|
||||
vim.keymap.set('n', '<leader>m', vim.lsp.buf.code_action, bufopts)
|
||||
vim.keymap.set('n', '<leader>mr', vim.lsp.buf.rename, bufopts)
|
||||
vim.keymap.set('n', '<leader>F', function() vim.lsp.buf.format { async = true } end, bufopts)
|
||||
end
|
||||
|
||||
local lsp = require "lspconfig"
|
||||
local coq = require "coq"
|
||||
|
||||
|
||||
local lsp_flags = {
|
||||
-- This is the default in Nvim 0.7+
|
||||
debounce_text_changes = 150,
|
||||
}
|
||||
lsp['tsserver'].setup({
|
||||
on_attach = on_attach,
|
||||
flags = lsp_flags,
|
||||
})
|
||||
lsp['tsserver'].setup(coq.lsp_ensure_capabilities())
|
||||
|
||||
lsp['elixirls'].setup({
|
||||
on_attach = on_attach,
|
||||
flags = lsp_flags,
|
||||
})
|
||||
lsp['elixirls'].setup(coq.lsp_ensure_capabilities())
|
||||
|
||||
lsp['gopls'].setup({
|
||||
on_attach = on_attach,
|
||||
flags = lsp_flags,
|
||||
})
|
||||
lsp['gopls'].setup(coq.lsp_ensure_capabilities())
|
||||
|
|
85
.vimrc
85
.vimrc
|
@ -9,8 +9,6 @@ Plug 'tpope/vim-endwise'
|
|||
Plug 'itchyny/lightline.vim'
|
||||
Plug 'edkolev/tmuxline.vim'
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
Plug 'junegunn/goyo.vim', { 'on': 'Goyo'}
|
||||
Plug 'junegunn/limelight.vim', { 'on': 'Limelight' }
|
||||
Plug 'reedes/vim-pencil', { 'on': ['HardPencil', 'SoftPencil'] }
|
||||
|
||||
if !exists('g:vscode')
|
||||
|
@ -26,17 +24,16 @@ if !exists('g:vscode')
|
|||
Plug 'nvim-lua/plenary.nvim'
|
||||
Plug 'nvim-tree/nvim-web-devicons'
|
||||
|
||||
Plug 'ms-jpq/coq_nvim'
|
||||
Plug 'folke/noice.nvim'
|
||||
Plug 'ggandor/leap.nvim'
|
||||
Plug 'folke/zen-mode.nvim'
|
||||
Plug 'folke/twilight.nvim'
|
||||
Plug 'neovim/nvim-lspconfig'
|
||||
Plug 'ellisonleao/gruvbox.nvim'
|
||||
Plug 'nvim-neo-tree/neo-tree.nvim'
|
||||
Plug 'nvim-telescope/telescope.nvim'
|
||||
Plug 'simrat39/symbols-outline.nvim'
|
||||
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
|
||||
Plug 'autozimu/LanguageClient-neovim', {
|
||||
\ 'branch': 'next',
|
||||
\ 'do': 'bash install.sh',
|
||||
\ }
|
||||
Plug 'nvim-telescope/telescope-fzf-native.nvim', {
|
||||
\ 'do': 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build'
|
||||
\ }
|
||||
|
@ -94,27 +91,23 @@ let mapleader = 'j'
|
|||
inoremap <leader>j <Esc>
|
||||
|
||||
let mapleader = ','
|
||||
nnoremap <leader>z <cmd>Goyo 105<cr>
|
||||
nnoremap <leader>Z <cmd>Goyo<cr>
|
||||
nnoremap <leader>l <cmd>Limelight<cr>
|
||||
nnoremap <leader>L <cmd>Limelight!<cr>
|
||||
nnoremap <leader>f <cmd>ALEFix<cr>
|
||||
|
||||
if has('nvim')
|
||||
nmap <leader>g <Plug>(lcn-definition)
|
||||
nmap <leader>r <Plug>(lcn-references)
|
||||
nmap <leader>m <Plug>(lcn-menu)
|
||||
nmap <leader>h <Plug>(lcn-hover)
|
||||
nmap <leader>c <Plug>(lcn-code-lens-action)
|
||||
nmap <leader>d <Plug>(lcn-explain-error)
|
||||
nnoremap <leader>ls <cmd>LanguageClientStop<cr>
|
||||
nnoremap <leader>ll <cmd>LanguageClientStart<cr>
|
||||
|
||||
nnoremap <leader>n <cmd>Neotree<cr>
|
||||
nnoremap <leader>b <cmd>Neotree float buffers<cr>
|
||||
nnoremap <leader>p <cmd>Telescope git_files<cr>
|
||||
nnoremap <leader>f <cmd>Telescope find_files<cr>
|
||||
nnoremap <leader>a <cmd>Telescope grep_string<cr>
|
||||
nnoremap <leader>t <cmd>Telescope<cr>
|
||||
nnoremap <leader>p <cmd>Telescope git_files<cr>
|
||||
nnoremap <C-p> <cmd>Telescope find_files<cr>
|
||||
nnoremap <leader>s <cmd>Telescope treesitter<cr>
|
||||
nnoremap <leader>ga <cmd>Telescope grep_string<cr>
|
||||
nnoremap <leader>gg <cmd>Telescope lsp_definitions<cr>
|
||||
nnoremap <leader>gr <cmd>Telescope lsp_references<cr>
|
||||
nnoremap <leader>gi <cmd>Telescope lsp_implementations<cr>
|
||||
nnoremap <leader>gd <cmd>Telescope lsp_type_definitions<cr>
|
||||
nnoremap <leader>o <cmd>SymbolsOutline<cr>
|
||||
nnoremap <leader>z <cmd>ZenMode<cr>
|
||||
nnoremap <leader>l <cmd>Twilight<cr>
|
||||
nnoremap <leader>c <cmd>COQnow<cr>
|
||||
else
|
||||
nnoremap <leader>n <cmd>NnnPicker<cr>
|
||||
nnoremap <leader>p <cmd>FZF<cr>
|
||||
|
@ -132,23 +125,6 @@ colorscheme gruvbox
|
|||
|
||||
highlight Normal ctermbg=None
|
||||
|
||||
let g:deoplete#enable_at_startup = 1
|
||||
|
||||
let g:LanguageClient_autoStart = 0
|
||||
let g:LanguageClient_serverCommands = {
|
||||
\ 'javascript': ['typescript-language-server', '--stdio'],
|
||||
\ 'javascript.jsx': ['typescript-language-server', '--stdio'],
|
||||
\ 'typescript': ['typescript-language-server', '--stdio'],
|
||||
\ 'typescript.tsx': ['typescript-language-server', '--stdio'],
|
||||
\ 'elixir': ['~/code/elixir-lsp/elixir-ls/bin/language_server.sh'],
|
||||
\ 'eelixir': ['~/code/elixir-lsp/elixir-ls/bin/language_server.sh'],
|
||||
\ 'go': ['gopls'],
|
||||
\ 'fsharp': ['dotnet', '~/code/fsprojects/fsharp-language-server/bin/FSharpLanguageServer.dll'],
|
||||
\ 'dhall': ['dhall-lsp-server'],
|
||||
\ 'python': ['/home/m/.asdf/shims/pyls'],
|
||||
\ }
|
||||
|
||||
|
||||
let g:ackprg = 'ag --nogroup --nocolor --column --hidden'
|
||||
|
||||
let g:lightline = {
|
||||
|
@ -192,7 +168,6 @@ let g:ale_fixers = {
|
|||
\ 'python': ['black'],
|
||||
\ }
|
||||
|
||||
let g:ale_fix_on_save = 1
|
||||
let g:ale_linters_explicit = 1
|
||||
let g:ale_completion_enabled = 0
|
||||
|
||||
|
@ -200,27 +175,15 @@ let g:OmniSharp_server_stdio = 1
|
|||
|
||||
let g:pencil#map#suspend_af = 'K'
|
||||
|
||||
let g:vimwiki_list = [{'path': expand('~/.wiki/')}]
|
||||
|
||||
let g:nnn#layout = {'left': '~20%'}
|
||||
let g:nnn#command = 'nnn -eHo'
|
||||
|
||||
let g:limelight_conceal_ctermfg = 'grey'
|
||||
|
||||
let g:goyo_width = 85
|
||||
let g:goyo_height = '100%'
|
||||
|
||||
augroup ft_jsx
|
||||
au!
|
||||
autocmd BufNewFile,BufRead *.jsx set filetype=javascript.jsx
|
||||
autocmd BufNewFile,BufRead *.tsx set filetype=typescript.tsx
|
||||
augroup END
|
||||
|
||||
augroup ft_wiki
|
||||
au!
|
||||
autocmd FileType vimwiki set textwidth=70 colorcolumn=70
|
||||
augroup END
|
||||
|
||||
augroup ft_fish
|
||||
au!
|
||||
autocmd FileType fish set tabstop=4
|
||||
|
@ -234,17 +197,3 @@ augroup ft_cs
|
|||
autocmd FileType cs nmap <leader>c <Plug>(omnisharp_code_actions)
|
||||
augroup END
|
||||
|
||||
if exists('$TMUX')
|
||||
let &t_SI = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=1\x7\<Esc>\\"
|
||||
let &t_EI = "\<Esc>Ptmux;\<Esc>\<Esc>]50;CursorShape=0\x7\<Esc>\\"
|
||||
else
|
||||
let &t_SI = "\<Esc>]50;CursorShape=1\x7"
|
||||
let &t_EI = "\<Esc>]50;CursorShape=0\x7"
|
||||
endif
|
||||
|
||||
augroup goyo_hooks
|
||||
au!
|
||||
autocmd User GoyoEnter set number
|
||||
|
||||
autocmd User GoyoLeave hi Normal ctermbg=NONE
|
||||
augroup END
|
||||
|
|
Loading…
Reference in New Issue