Last active
November 13, 2024 21:29
-
-
Save Fed0t/01b7f489c6958b283a23059eb7b697f7 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
syntax on | |
filetype plugin indent on | |
set encoding=UTF-8 | |
set relativenumber | |
set number | |
set cmdheight=1 | |
set ruler | |
set incsearch | |
set cursorline | |
set ignorecase | |
set smartcase | |
set nohlsearch | |
set tabstop=4 | |
set softtabstop=4 | |
set shiftwidth=4 | |
set expandtab | |
set noswapfile nobackup nowritebackup | |
set history=500 | |
set timeoutlen=1000 ttimeoutlen=0 | |
set updatetime=200 | |
set signcolumn=yes | |
set showcmd | |
set clipboard^=unnamedplus,unnamed | |
set colorcolumn=80 | |
set mouse=a | |
set t_Co=256 | |
set fillchars=horiz:━,horizup:┻,horizdown:┳,vert:┃,vertleft:┨,vertright:┣,verthoriz:╋ | |
set backspace=indent,eol,start | |
set listchars=extends:→,precedes:←,nbsp:␣,trail:•,tab:▸\ ,eol:¬ | |
set nostartofline | |
set termguicolors | |
call plug#begin() | |
Plug 'petertriho/nvim-scrollbar' | |
Plug 'jbyuki/instant.nvim' | |
Plug 'kevinhwang91/nvim-ufo' | |
Plug 'kevinhwang91/promise-async' | |
Plug 'tpope/vim-commentary' | |
Plug 'lukas-reineke/indent-blankline.nvim' | |
Plug 'tpope/vim-surround' | |
Plug 'dstein64/vim-startuptime' | |
Plug 'nvim-tree/nvim-web-devicons' | |
Plug 'neoclide/coc.nvim', {'branch': 'release'} | |
Plug 'phpactor/phpactor', {'for': 'php', 'tag': '*', 'do': 'composer install --no-dev -o'} | |
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} | |
Plug 'nvim-treesitter/nvim-treesitter-textobjects' | |
Plug 'nvim-telescope/telescope.nvim' | |
Plug 'mg979/vim-visual-multi', {'branch': 'master'} | |
Plug 'psliwka/vim-smoothie' | |
Plug 'ryanoasis/vim-devicons' | |
Plug 'vim-airline/vim-airline' | |
Plug 'vim-airline/vim-airline-themes' | |
Plug 'nvim-lua/plenary.nvim' | |
Plug 'hrsh7th/nvim-cmp' | |
Plug 'hrsh7th/cmp-vsnip' | |
Plug 'hrsh7th/vim-vsnip' | |
Plug 'hrsh7th/cmp-path' | |
Plug 'hrsh7th/cmp-cmdline' | |
Plug 'hrsh7th/cmp-buffer' | |
Plug 'neovim/nvim-lspconfig' | |
Plug 'simrat39/rust-tools.nvim' | |
Plug 'utilyre/barbecue.nvim' | |
Plug 'SmiteshP/nvim-navic' | |
Plug 'romgrk/barbar.nvim' | |
Plug 'sindrets/diffview.nvim' | |
Plug 'dinhhuy258/vim-local-history', {'branch': 'master', 'do': ':UpdateRemotePlugins'} | |
Plug 'preservim/nerdtree' | |
Plug 'kdheepak/lazygit.nvim' | |
Plug 'puremourning/vimspector' | |
Plug 'RaafatTurki/hex.nvim' | |
Plug 'huggingface/llm.nvim' | |
Plug 'nelsyeung/twig.vim' | |
Plug 'lumiliet/vim-twig' | |
Plug 'navarasu/onedark.nvim' | |
Plug 'xiyaowong/transparent.nvim' | |
Plug 'gorbit99/codewindow.nvim' | |
Plug 'willothy/veil.nvim' | |
Plug 'EmranMR/tree-sitter-blade' | |
call plug#end() | |
let g:transparent_enabled = v:true | |
let g:onedark_config = { | |
\ 'style': 'darker', | |
\} | |
colorscheme onedark | |
let g:airline_theme='onedark' | |
let g:airline_powerline_fonts = 1 | |
let g:airline#extensions#tabline#enabled = 1 | |
let $NVIM_TUI_ENABLE_TRUE_COLOR=1 | |
let g:NERDTreeWinSize=60 | |
let g:NERDTreeMinimalUI=1 | |
let g:NERDTreeGitStatusWithFlags = 1 | |
let g:WebDevIconsUnicodeDecorateFolderNodes = 1 | |
let g:NERDTreeGitStatusNodeColorization = 1 | |
let g:NERDTreeColorMapCustom = { | |
\ "Staged" : "#0ee375", | |
\ "Modified" : "#d9bf91", | |
\ "Renamed" : "#51C9FC", | |
\ "Untracked" : "#FCE77C", | |
\ "Unmerged" : "#FC51E6", | |
\ "Dirty" : "#FFBD61", | |
\ "Clean" : "#87939A", | |
\ "Ignored" : "#808080" | |
\ } | |
let g:NERDTreeIgnore = ['^node_modules$'] | |
let g:coc_global_extensions = [ | |
\ 'coc-marketplace', 'coc-tsserver', 'coc-json', 'coc-html', | |
\ 'coc-css', 'coc-python', 'coc-clangd','coc-phpactor', | |
\ 'coc-elixir', 'coc-eslint', 'coc-blade', | |
\ 'coc-rest', 'coc-git', 'coc-go', 'coc-highlight', | |
\ 'coc-lsp-wl', 'coc-markdownlint', 'coc-phpls', | |
\ 'coc-powershell', 'coc-rust-analyzer', 'coc-snippets', | |
\ 'coc-sourcekit', 'coc-actions', 'coc-spell-checker', | |
\ 'coc-texlab', 'coc-xml', 'coc-yaml', 'coc-yank', | |
\ 'coc-spell-checker', 'coc-cmake', 'coc-svg', 'coc-pairs', 'coc-vetur', | |
\ ] | |
let g:coc_filetype_map = { | |
\ 'html.swig': 'html', | |
\ 'wxss': 'css', | |
\ } | |
"COC | |
autocmd CursorHold * silent call CocActionAsync('highlight') | |
autocmd User CocStatusChange redrawstatus | |
nnoremap <F10> <cmd>call CocAction('format')<CR> | |
nmap <silent> rn <Plug>(coc-rename) | |
inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm() | |
\: "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>" | |
nnoremap <silent> K :call ShowDocumentation()<CR> | |
nmap <silent> gd <Plug>(coc-definition) | |
nmap <silent> gr <Plug>(coc-codeaction) | |
vmap <leader>f <Plug>(coc-format-selected) | |
nmap <leader>f <Plug>(coc-format-selected) | |
function! ShowDocumentation() | |
if CocAction('hasProvider', 'hover') | |
call CocActionAsync('doHover') | |
else | |
call feedkeys('K', 'in') | |
endif | |
endfunction | |
"BINDINGS | |
inoremap jj <ESC> | |
noremap <Up> <Nop> | |
noremap <Down> <Nop> | |
noremap <Left> <Nop> | |
noremap <Right> <Nop> | |
nnoremap <Tab> >> | |
nnoremap <S-Tab> << | |
inoremap <S-Tab> <C-d> | |
nnoremap <silent> <expr> <C-t> g:NERDTree.IsOpen() ? "\:NERDTreeClose<CR>" : bufexists(expand('%')) ? "\:NERDTreeFind<CR>" : "\:NERDTree<CR>" | |
nnoremap <F8> :TagbarToggle<CR> | |
nnoremap <F10> <cmd>call CocAction('format')<CR> | |
nmap <silent> rn <Plug>(coc-rename) | |
nnoremap <C-s> :update<cr> | |
nnoremap <C-p> <cmd>Telescope find_files<cr> | |
nnoremap <C-f> <cmd>Telescope live_grep<cr> | |
nnoremap <C-J> <cmd>BufferPrevious<CR> | |
nnoremap <C-K> <cmd>BufferNext<CR> | |
nnoremap <silent><C-x> <Cmd>BufferClose<CR> | |
nnoremap <F5> :LazyGit<CR> | |
nnoremap <F6> :DiffviewFileHistory<CR> | |
nnoremap <F7> :LocalHistoryToggle<CR> | |
nmap <F11> :DockerToolsToggle<CR> | |
nmap <Leader>} ysiw} | |
nnoremap <Leader>dd :call vimspector#Launch()<CR> | |
nnoremap <Leader>de :call vimspector#Reset()<CR> | |
nnoremap <Leader>dc :call vimspector#Continue()<CR> | |
nnoremap <Leader>do :call vimspector#StepOver()<CR> | |
nnoremap <Leader>dy :call vimspector#StepInto()<CR> | |
nnoremap <Leader>du :call vimspector#StepOut()<CR> | |
nnoremap <Leader>dt :call vimspector#ToggleBreakpoint()<CR> | |
nnoremap <Leader>dT :call vimspector#ClearBreakpoints()<CR> | |
"export XDEBUG_CONFIG="idekey=xdebug" | |
nmap <Leader>dk <Plug>VimspectorRestart | |
nmap <Leader>dh <Plug>VimspectorStepOut | |
nmap <Leader>dl <Plug>VimspectorStepInto | |
nmap <Leader>dj <Plug>VimspectorStepOver | |
autocmd BufEnter * silent! normal! g`" | |
autocmd BufEnter * silent! normal! :set cmdheight=1 | |
autocmd BufReadPost,FileReadPost,BufEnter * normal zR | |
"LOAD EXTENSIONS | |
" | |
lua require('codewindow').setup() | |
lua require('codewindow').apply_default_keybinds() | |
lua require('telescope').setup { | |
\ defaults = { | |
\ preview = { | |
\ treesitter = false | |
\ } | |
\ }, | |
\} | |
lua require('telescope').load_extension('lazygit') | |
lua require("scrollbar").setup() | |
lua require("barbecue").setup({create_autocmd = true}) | |
lua require("ibl").setup() | |
lua require("llm").setup({ | |
\ backend = "ollama", | |
\ model = "starcoder2:15b", | |
\ url = "http://localhost:11434/api/generate", | |
\ request_body = { | |
\ parameters = { | |
\ max_new_tokens = 128, | |
\ temperature = 0.2, | |
\ top_p = 0.95, | |
\ }, | |
\ }, | |
\ debounce_ms = 150, | |
\ enable_suggestions_on_startup = false, | |
\ fim = { | |
\ enabled = true, | |
\ prefix = "<<fim_prefix> ", | |
\ middle = " <fim_middle>", | |
\ suffix = " <fim_suffix>", | |
\ }, | |
\ tokens_to_clear = { "<|end_of_text|>" }, | |
\ accept_keymap = "<S-Down>", | |
\ dismiss_keymap = "<S-Up>", | |
\}) | |
lua require("hex").setup() | |
lua require('nvim-treesitter.configs').setup({ | |
\ ensure_installed={'rust', 'typescript', 'scss', 'php', 'html', 'sql', 'css', 'python', 'javascript'}, | |
\ highlight={enable=true}, | |
\ auto_install=true, | |
\ indent={enable=true}, | |
\ rainbow = {enable = true,extended_mode = true,max_file_lines = nil}, | |
\ textobjects={ | |
\select={ | |
\ enable=true, | |
\ lookahead=true, | |
\ keymaps={["af"] = "@function.outer", ["if"] = "@function.inner", ["ac"] = "@class.outer", ["ic"] = "@class.inner"} | |
\} | |
\} | |
\}) | |
"LUA SECTION | |
lua << EOF | |
local parser_config = require "nvim-treesitter.parsers".get_parser_configs() | |
parser_config.blade = { | |
install_info = { | |
url = "https://github.com/EmranMR/tree-sitter-blade", | |
files = { "src/parser.c" }, | |
branch = "main", | |
}, | |
filetype = "blade", | |
} | |
local cmp = require('cmp') | |
cmp.setup.cmdline('/', { | |
mapping = cmp.mapping.preset.cmdline(), | |
sources = { | |
{ name = 'buffer' } | |
} | |
}) | |
cmp.setup.cmdline(':', { | |
mapping = cmp.mapping.preset.cmdline(), | |
sources = cmp.config.sources({ | |
{ name = 'path' } | |
}, | |
{ | |
{ | |
name = 'cmdline', | |
option = { | |
ignore_cmds = { 'Man', '!' } | |
} | |
} | |
}) | |
}) | |
vim.o.foldcolumn = '0' | |
vim.o.foldlevel = 999 | |
vim.o.foldlevelstart = 999 | |
vim.o.foldenable = true | |
vim.keymap.set('n', 'zR', require('ufo').openAllFolds) | |
vim.keymap.set('n', 'zM', require('ufo').closeAllFolds) | |
require('ufo').setup({ | |
provider_selector = function(bufnr, filetype, buftype) | |
return {'treesitter', 'indent'} | |
end | |
}) | |
EOF | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment