mirror of
https://github.com/sahinakkaya/dotfiles.git
synced 2024-12-22 23:29:36 +01:00
Track lunarvim config
This commit is contained in:
parent
c37a30b9f8
commit
44ee0f6985
10
.config/Asocia/splash
Normal file
10
.config/Asocia/splash
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
_______ _____
|
||||
___ |__Welcome back, _________(_)______ _
|
||||
__ /| |__ ___/_ __ \_ ___/__ / _ __ `/
|
||||
_ ___ |_(__ ) / /_/ // /__ _ / / /_/ /
|
||||
/_/ |_|/____/ \____/ \___/ /_/ \__,_/
|
303
.config/lvim/config.lua
Normal file
303
.config/lvim/config.lua
Normal file
@ -0,0 +1,303 @@
|
||||
--[[
|
||||
lvim is the global options object
|
||||
|
||||
Linters should be
|
||||
filled in as strings with either
|
||||
a global executable or a path to
|
||||
an executable
|
||||
]] -- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT
|
||||
-- general
|
||||
lvim.log.level = 'warn'
|
||||
lvim.format_on_save = true
|
||||
lvim.colorscheme = 'onedarker'
|
||||
|
||||
-- Use which-key to add extra bindings with the leader-key prefix
|
||||
-- lvim.builtin.which_key.mappings["P"] = { "<cmd>Telescope projects<CR>", "Projects" }
|
||||
|
||||
-- TODO: User Config for predefined plugins
|
||||
-- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile
|
||||
lvim.builtin.terminal.active = true
|
||||
lvim.builtin.notify.active = true
|
||||
lvim.builtin.nvimtree.setup.view.side = 'left'
|
||||
lvim.builtin.nvimtree.show_icons.git = 0
|
||||
-- lvim.builtin.nvimtree.git = 0
|
||||
-- lvim.builtin.nvimtree.setup.git.ignore = false
|
||||
lvim.builtin.autopairs.fast_wrap.map = '<C-l>'
|
||||
|
||||
-- if you don't want all the parsers change this to a table of the ones you want
|
||||
lvim.builtin.treesitter.ensure_installed = {
|
||||
'bash', 'c', 'javascript', 'json', 'lua', 'python', 'typescript', 'css',
|
||||
'rust', 'java', 'yaml'
|
||||
}
|
||||
|
||||
lvim.builtin.treesitter.ignore_install = {'haskell'}
|
||||
lvim.builtin.treesitter.highlight.enabled = true
|
||||
|
||||
-- generic LSP settings
|
||||
|
||||
-- ---@usage disable automatic installation of servers
|
||||
-- lvim.lsp.automatic_servers_installation = false
|
||||
|
||||
-- ---@usage Select which servers should be configured manually. Requires `:LvimCacheRest` to take effect.
|
||||
-- See the full default list `:lua print(vim.inspect(lvim.lsp.override))`
|
||||
-- vim.list_extend(lvim.lsp.override, { "pyright" })
|
||||
|
||||
-- ---@usage setup a server -- see: https://www.lunarvim.org/languages/#overriding-the-default-configuration
|
||||
-- local opts = {} -- check the lspconfig documentation for a list of all possible options
|
||||
-- require("lvim.lsp.manager").setup("pylsp", opts)
|
||||
|
||||
-- you can set a custom on_attach function that will be used for all the language servers
|
||||
-- See <https://github.com/neovim/nvim-lspconfig#keybindings-and-completion>
|
||||
-- lvim.lsp.on_attach_callback = function(client, bufnr)
|
||||
-- local function buf_set_option(...)
|
||||
-- vim.api.nvim_buf_set_option(bufnr, ...)
|
||||
-- end
|
||||
-- --Enable completion triggered by <c-x><c-o>
|
||||
-- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
|
||||
-- end
|
||||
-- you can overwrite the null_ls setup table (useful for setting the root_dir function)
|
||||
-- lvim.lsp.null_ls.setup = {
|
||||
-- root_dir = require("lspconfig").util.root_pattern("Makefile", ".git", "node_modules"),
|
||||
-- }
|
||||
-- or if you need something more advanced
|
||||
-- lvim.lsp.null_ls.setup.root_dir = function(fname)
|
||||
-- if vim.bo.filetype == "javascript" then
|
||||
-- eturn require("lspconfig/util").root_pattern("Makefile", ".git", "node_modules")(fname)
|
||||
-- or require("lspconfig/util").path.dirname(fname)
|
||||
-- elseif vim.bo.filetype == "php" then
|
||||
-- return require("lspconfig/util").root_pattern("Makefile", ".git", "composer.json")(fname) or vim.fn.getcwd()
|
||||
-- else
|
||||
-- return require("lspconfig/util").root_pattern("Makefile", ".git")(fname) or require("lspconfig/util").path.dirname(fname)
|
||||
-- end
|
||||
-- end
|
||||
|
||||
-- -- set a formatter, this will override the language server formatting capabilities (if it exists)
|
||||
local formatters = require 'lvim.lsp.null-ls.formatters'
|
||||
formatters.setup {
|
||||
{exe = 'black', filetypes = {'python'}},
|
||||
{exe = 'isort', filetypes = {'python'}}, {
|
||||
exe = 'lua-format',
|
||||
filetypes = {'lua'},
|
||||
args = {
|
||||
'--indent-width=2', '--chop-down-kv-table',
|
||||
'--double-quote-to-single-quote'
|
||||
}
|
||||
|
||||
}, {
|
||||
exe = 'prettier',
|
||||
args = {'--print-width', '100'},
|
||||
filetypes = {'javascript', 'typescript', 'typescriptreact'}
|
||||
}
|
||||
-- {
|
||||
-- exe = "prettier",
|
||||
-- ---@usage arguments to pass to the formatter
|
||||
-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}`
|
||||
-- args = { "--print-with", "100" },
|
||||
-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports.
|
||||
-- filetypes = { "typescript", "typescriptreact" },
|
||||
-- },
|
||||
}
|
||||
|
||||
-- -- set additional linters
|
||||
-- local linters = require "lvim.lsp.null-ls.linters"
|
||||
-- linters.setup {
|
||||
-- { exe = "flake8", filetypes = { "python" } },
|
||||
-- {
|
||||
-- exe = "shellcheck",
|
||||
-- ---@usage arguments to pass to the formatter
|
||||
-- -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}`
|
||||
-- args = { "--severity", "warning" },
|
||||
-- },
|
||||
-- {
|
||||
-- exe = "codespell",
|
||||
-- ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports.
|
||||
-- filetypes = { "javascript", "python" },
|
||||
-- },
|
||||
-- }
|
||||
|
||||
lvim.builtin.telescope.extensions.media_files = {
|
||||
-- filetypes whitelist
|
||||
-- defaults to {"png", "jpg", "mp4", "webm", "pdf"}
|
||||
filetypes = {'png', 'webp', 'jpg', 'jpeg'},
|
||||
find_cmd = 'rg' -- find command (defaults to `fd`)
|
||||
}
|
||||
|
||||
-- Additional Plugins
|
||||
lvim.plugins = {
|
||||
{
|
||||
'Asocia/vim-tmux-navigator',
|
||||
config = function()
|
||||
vim.g.tmux_navigator_disable_when_zoomed = 1
|
||||
vim.g.tmux_navigator_no_wrap = 1
|
||||
end
|
||||
}, {
|
||||
'lukas-reineke/indent-blankline.nvim',
|
||||
event = 'BufRead',
|
||||
config = function() require('plugins.indent-blanckline') end
|
||||
}, {'tpope/vim-repeat'}, {'tpope/vim-unimpaired'}, {'tpope/vim-fugitive'},
|
||||
{'tpope/vim-abolish'}, {
|
||||
'phaazon/hop.nvim',
|
||||
event = 'BufRead',
|
||||
config = function()
|
||||
-- you can configure Hop the way you like here; see :h hop-config
|
||||
require('hop').setup({
|
||||
keys = 'dhnasoeifgqcrlwvjzpymkbxut',
|
||||
term_seq_bias = 1
|
||||
})
|
||||
end
|
||||
}, {
|
||||
'rmagatti/goto-preview',
|
||||
event = 'BufRead',
|
||||
config = function()
|
||||
require('goto-preview').setup {
|
||||
width = 120, -- Width of the floating window
|
||||
height = 25, -- Height of the floating window
|
||||
default_mappings = true, -- Bind default mappings
|
||||
debug = false, -- Print debug information
|
||||
opacity = nil, -- 0-100 opacity level of the floating window where 100 is fully transparent.
|
||||
post_open_hook = nil -- A function taking two arguments, a buffer and a window to be ran as a hook.
|
||||
-- You can use "default_mappings = true" setup option
|
||||
-- Or explicitly set keybindings
|
||||
-- vim.cmd("nnoremap gpd <cmd>lua require('goto-preview').goto_preview_definition()<CR>")
|
||||
-- vim.cmd("nnoremap gpi <cmd>lua require('goto-preview').goto_preview_implementation()<CR>")
|
||||
-- vim.cmd("nnoremap gP <cmd>lua require('goto-preview').close_all_win()<CR>")
|
||||
}
|
||||
end
|
||||
}, {'simrat39/symbols-outline.nvim', event = 'BufRead'}, -- {'tpope/vim-dadbod'}
|
||||
-- {"folke/tokyonight.nvim"},
|
||||
{
|
||||
'monaqa/dial.nvim',
|
||||
event = 'BufRead',
|
||||
config = function() require('plugins.dial') end
|
||||
}, {'folke/trouble.nvim', cmd = 'TroubleToggle'}, {
|
||||
'iamcco/markdown-preview.nvim',
|
||||
run = 'cd app && npm install',
|
||||
ft = 'markdown',
|
||||
cmd = 'MarkdownPreview',
|
||||
config = function() vim.g.mkdp_auto_start = 1 end
|
||||
}, {
|
||||
'folke/persistence.nvim',
|
||||
event = 'BufReadPre', -- this will only start session saving when an actual file was opened
|
||||
module = 'persistence',
|
||||
config = function()
|
||||
require('persistence').setup {
|
||||
dir = vim.fn.expand(vim.fn.stdpath 'config' .. '/session/'),
|
||||
options = {'buffers', 'curdir', 'tabpages', 'winsize'}
|
||||
}
|
||||
end
|
||||
|
||||
}, {'felipec/vim-sanegx'}, {'tommcdo/vim-exchange', event = 'BufRead'}, {
|
||||
'lervag/vimtex',
|
||||
config = function()
|
||||
vim.g.vimtex_compiler_engine = 'xelatex'
|
||||
vim.g.vimtex_view_method = 'zathura'
|
||||
vim.g.tex_conceal = 'abdmg'
|
||||
|
||||
vim.cmd([[
|
||||
" Create mapping to toggle compiling with shell escape or not
|
||||
let g:vimtex_compiler_latexmk = {
|
||||
\ 'build_dir' : '',
|
||||
\ 'callback' : 1,
|
||||
\ 'continuous' : 1,
|
||||
\ 'executable' : 'latexmk',
|
||||
\ 'hooks' : [],
|
||||
\ 'options' : [
|
||||
\ '-verbose',
|
||||
\ '-file-line-error',
|
||||
\ '-synctex=1',
|
||||
\ '-interaction=nonstopmode',
|
||||
\ ],
|
||||
\}
|
||||
nnoremap <F12> :call ShellEscape()<CR>
|
||||
function! ShellEscape()
|
||||
if g:vimtex_compiler_latexmk.options[0] ==# '-shell-escape'
|
||||
call remove(g:vimtex_compiler_latexmk.options, 0)
|
||||
echo "shell escape disabled"
|
||||
else
|
||||
call insert(g:vimtex_compiler_latexmk.options, '-shell-escape', 0)
|
||||
echo "shell escape enabled"
|
||||
endif
|
||||
VimtexReload
|
||||
endfunction
|
||||
]])
|
||||
end
|
||||
},
|
||||
{'nathom/filetype.nvim', config = function() vim.g.did_load_filetypes = 1 end},
|
||||
{'gko/vim-coloresque'}, -- {'antonk52/bad-practices.nvim', config=function ()
|
||||
{
|
||||
'machakann/vim-sandwich',
|
||||
config = function()
|
||||
vim.cmd [[
|
||||
runtime macros/sandwich/keymap/surround.vim
|
||||
]]
|
||||
|
||||
end
|
||||
}, -- require('bad_practices').setup({
|
||||
-- most_splits = 3, -- how many splits are considered a good practice(default: 3)
|
||||
-- most_tabs = 3, -- how many tabs are considered a good practice(default: 3)
|
||||
-- max_hjkl = 10, -- how many times you can spam hjkl keys in a row(default: 10)
|
||||
-- })
|
||||
-- end
|
||||
-- }
|
||||
{
|
||||
'nvim-telescope/telescope-media-files.nvim',
|
||||
config = function() require('telescope').load_extension('media_files') end
|
||||
}, {
|
||||
'ray-x/lsp_signature.nvim',
|
||||
config = function() require'lsp_signature'.on_attach() end,
|
||||
event = 'BufRead'
|
||||
}, {'junegunn/vim-easy-align'}, {
|
||||
'xiyaowong/nvim-transparent',
|
||||
config = function()
|
||||
require('transparent').setup({
|
||||
enable = true, -- boolean: enable transparent
|
||||
extra_groups = { -- table/string: additional groups that should be clear
|
||||
-- In particular, when you set it to 'all', that means all avaliable groups
|
||||
|
||||
-- example of akinsho/nvim-bufferline.lua
|
||||
'BufferLineTabClose', 'BufferlineBufferSelected', 'BufferLineFill',
|
||||
'BufferLineBackground', 'BufferLineSeparator',
|
||||
'BufferLineIndicatorSelected'
|
||||
},
|
||||
exclude = {} -- table: groups you don't want to clear
|
||||
})
|
||||
end
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
-- Autocommands (https://neovim.io/doc/user/autocmd.html)
|
||||
lvim.autocommands.custom_groups = {
|
||||
-- {'ColorScheme', '*', 'lua require\'lightspeed\'.init_highlight(true)'},
|
||||
{'BufWinEnter', 'term://*', 'setlocal nonumber'},
|
||||
{'BufWinEnter,BufWinEnter', 'term://*', 'setlocal nonumber'},
|
||||
{'BufWinEnter,BufWinEnter', '*.tex', 'setlocal spell'},
|
||||
{'BufWinEnter,BufWinEnter', '*.asm', 'setlocal ft=nasm'},
|
||||
{'BufWinEnter,BufWinEnter', '*.s', 'setlocal ft=nasm'},
|
||||
{'BufWinEnter,BufWinEnter', '*.s', 'setlocal tabstop=4'},
|
||||
{'BufWinEnter,BufWinEnter', '*.s', 'setlocal shiftwidth=4'},
|
||||
{'BufWinEnter,BufWinEnter', '*.s', 'setlocal expandtab'}
|
||||
}
|
||||
|
||||
lvim.autocommands._cursorline = {
|
||||
{'VimEnter,WinEnter,BufWinEnter', '*', 'setlocal cursorline'},
|
||||
{'WinLeave', '*', 'setlocal nocursorline'}
|
||||
}
|
||||
lvim.autocommands._toggle_relative_number = {
|
||||
{'InsertEnter', '*', ':setlocal norelativenumber'},
|
||||
{'InsertLeave', '*', ':setlocal relativenumber'}
|
||||
}
|
||||
|
||||
lvim.autocommands._FirenvimOverrides = {}
|
||||
|
||||
require('settings')
|
||||
require('keybindings')
|
||||
require('plugins.dashboard')
|
||||
lvim.builtin.which_key.on_config_done =
|
||||
function() require('plugins.whichkey') end
|
||||
|
||||
-- require'lsp_signature'.setup({
|
||||
-- bind = true, -- This is mandatory, otherwise border config won't get registered.
|
||||
-- handler_opts = {border = 'rounded'}
|
||||
-- })
|
0
.config/lvim/lsp-settings/pyright.json
Normal file
0
.config/lvim/lsp-settings/pyright.json
Normal file
62
.config/lvim/lua/keybindings.lua
Normal file
62
.config/lvim/lua/keybindings.lua
Normal file
@ -0,0 +1,62 @@
|
||||
-- keymappings [view all the defaults by pressing <leader>Lk]
|
||||
lvim.leader = 'space'
|
||||
-- add your own keymapping
|
||||
lvim.keys.normal_mode['<C-s>'] = ':w<cr>'
|
||||
-- unmap a default keymapping
|
||||
-- lvim.keys.normal_mode["<C-Up>"] = ""
|
||||
-- edit a default keymapping
|
||||
-- lvim.keys.normal_mode["<C-q>"] = ":q<cr>"
|
||||
|
||||
-- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode.
|
||||
-- we use protected-mode (pcall) just in case the plugin wasn't loaded yet.
|
||||
-- local _, actions = pcall(require, "telescope.actions")
|
||||
-- lvim.builtin.telescope.defaults.mappings = {
|
||||
-- -- for input mode
|
||||
-- i = {
|
||||
-- ["<C-j>"] = actions.move_selection_next,
|
||||
-- ["<C-k>"] = actions.move_selection_previous,
|
||||
-- ["<C-n>"] = actions.cycle_history_next,
|
||||
-- ["<C-p>"] = actions.cycle_history_prev,
|
||||
-- },
|
||||
-- -- for normal mode
|
||||
-- n = {
|
||||
-- ["<C-j>"] = actions.move_selection_next,
|
||||
-- ["<C-k>"] = actions.move_selection_previous,
|
||||
-- },
|
||||
-- }
|
||||
|
||||
-- use the default vim behavior for H and L
|
||||
lvim.keys.normal_mode['<S-l>'] = nil
|
||||
lvim.keys.normal_mode['<S-h>'] = nil
|
||||
|
||||
-- When text is wrapped, move by terminal rows, not lines, unless a count is provided
|
||||
vim.api.nvim_set_keymap('n', 'j', '(v:count == 0 ? "gj" : "j")',
|
||||
{noremap = true, expr = true, silent = true})
|
||||
vim.api.nvim_set_keymap('n', 'k', '(v:count == 0 ? "gk" : "k")',
|
||||
{noremap = true, expr = true, silent = true})
|
||||
|
||||
-- move around *visually*
|
||||
|
||||
-- make Y consistent with other capitals
|
||||
lvim.keys.normal_mode['Y'] = 'y$'
|
||||
|
||||
-- easy align
|
||||
lvim.keys.normal_mode['ga'] = ':EasyAlign<CR>'
|
||||
lvim.keys.visual_mode['ga'] = ':EasyAlign<CR>'
|
||||
|
||||
-- Maintain the cursor position when yanking a visual selection
|
||||
-- http://ddrscott.github.io/blog/2016/yank-without-jank/
|
||||
lvim.keys.visual_mode['y'] = 'myy`y'
|
||||
lvim.keys.visual_mode['Y'] = ' myY`y'
|
||||
|
||||
-- make . to work with visually selected lines
|
||||
lvim.keys.visual_mode['.'] = ':normal . <CR>'
|
||||
|
||||
-- insert mode mappings
|
||||
lvim.keys.insert_mode['<C-a>'] = '<C-o>^'
|
||||
lvim.keys.insert_mode['<C-e>'] = '<C-o>$'
|
||||
lvim.keys.insert_mode['<C-f>'] = '<C-o>w'
|
||||
lvim.keys.insert_mode['<C-b>'] = '<C-o>b'
|
||||
lvim.keys.insert_mode['<C-k>'] = '<C-o>d$'
|
||||
lvim.keys.insert_mode['<C-u>'] = '<C-o>d^'
|
||||
lvim.keys.insert_mode['<C-s>'] = '<c-g>u<Esc>[s1z=`]a<c-g>u'
|
9
.config/lvim/lua/plugins/autosave.lua
Normal file
9
.config/lvim/lua/plugins/autosave.lua
Normal file
@ -0,0 +1,9 @@
|
||||
require('autosave').setup({
|
||||
enabled = vim.g.auto_save,
|
||||
-- execution_message = 'autosaved at : ' .. vim.fn.strftime('%H:%M:%S'),
|
||||
-- events = {'InsertLeave', 'TextChanged'},
|
||||
-- conditions = {exists = true, filetype_is_not = {}, modifiable = true},
|
||||
write_all_buffers = true,
|
||||
on_off_commands = true,
|
||||
clean_command_line_interval = 2500
|
||||
})
|
14
.config/lvim/lua/plugins/dashboard.lua
Normal file
14
.config/lvim/lua/plugins/dashboard.lua
Normal file
@ -0,0 +1,14 @@
|
||||
lvim.builtin.dashboard.active = true
|
||||
-- lvim.builtin.dashboard.custom_header = {
|
||||
-- ' _______ _____ ',
|
||||
-- ' ___ |__Welcome back, _________(_)______ _ ',
|
||||
-- ' __ /| |__ ___/_ __ \\_ ___/__ / _ __ `/ ',
|
||||
-- ' _ ___ |_(__ ) / /_/ // /__ _ / / /_/ / ',
|
||||
-- ' /_/ |_|/____/ \\____/ \\___/ /_/ \\__,_/ '
|
||||
-- }
|
||||
lvim.builtin.dashboard.custom_header = {}
|
||||
vim.g.dashboard_preview_command = 'cat'
|
||||
vim.g.dashboard_preview_pipeline = 'lolcat -F 0.2'
|
||||
vim.g.dashboard_preview_file = '~/.config/Asocia/splash'
|
||||
vim.g.dashboard_preview_file_height = 10
|
||||
vim.g.dashboard_preview_file_width = 45
|
40
.config/lvim/lua/plugins/dial.lua
Normal file
40
.config/lvim/lua/plugins/dial.lua
Normal file
@ -0,0 +1,40 @@
|
||||
local dial = require 'dial'
|
||||
vim.cmd [[
|
||||
nmap <C-a> <Plug>(dial-increment)
|
||||
nmap <C-x> <Plug>(dial-decrement)
|
||||
vmap <C-a> <Plug>(dial-increment)
|
||||
vmap <C-x> <Plug>(dial-decrement)
|
||||
vmap g<C-a> <Plug>(dial-increment-additional)
|
||||
vmap g<C-x> <Plug>(dial-decrement-additional)
|
||||
]]
|
||||
|
||||
dial.augends['custom#boolean'] = dial.common.enum_cyclic {
|
||||
name = 'boolean',
|
||||
strlist = {'true', 'false'}
|
||||
}
|
||||
table.insert(dial.config.searchlist.normal, 'custom#boolean')
|
||||
|
||||
-- For Languages which prefer True/False, e.g. python.
|
||||
dial.augends['custom#Boolean'] = dial.common.enum_cyclic {
|
||||
name = 'Boolean',
|
||||
strlist = {'True', 'False'}
|
||||
}
|
||||
table.insert(dial.config.searchlist.normal, 'custom#Boolean')
|
||||
|
||||
dial.augends['custom#directions'] = dial.common.enum_cyclic {
|
||||
name = 'directions',
|
||||
strlist = {'left', 'right', 'top', 'bottom'}
|
||||
}
|
||||
table.insert(dial.config.searchlist.normal, 'custom#directions')
|
||||
|
||||
dial.augends['custom#yesno'] = dial.common.enum_cyclic {
|
||||
name = 'yesno',
|
||||
strlist = {'yes', 'no'}
|
||||
}
|
||||
table.insert(dial.config.searchlist.normal, 'custom#yesno')
|
||||
|
||||
dial.augends['custom#YesNo'] = dial.common.enum_cyclic {
|
||||
name = 'YesNo',
|
||||
strlist = {'Yes', 'No'}
|
||||
}
|
||||
table.insert(dial.config.searchlist.normal, 'custom#YesNo')
|
8
.config/lvim/lua/plugins/indent-blanckline.lua
Normal file
8
.config/lvim/lua/plugins/indent-blanckline.lua
Normal file
@ -0,0 +1,8 @@
|
||||
require('indent_blankline').setup {
|
||||
indent_blankline_char = '▏',
|
||||
indent_blankline_filetype_exclude = {'help', 'terminal', 'dashboard'},
|
||||
indent_blankline_buftype_exclude = {'terminal'},
|
||||
indent_blankline_show_trailing_blankline_indent = false,
|
||||
indent_blankline_show_first_indent_level = false
|
||||
}
|
||||
|
65
.config/lvim/lua/plugins/whichkey.lua
Normal file
65
.config/lvim/lua/plugins/whichkey.lua
Normal file
@ -0,0 +1,65 @@
|
||||
lvim.builtin.which_key.mappings['<tab>'] = {'<C-^>', 'alternate file'}
|
||||
lvim.builtin.which_key.mappings['\\'] = {':vnew<CR>', 'vsplit'}
|
||||
lvim.builtin.which_key.mappings['-'] = {':new<CR>', 'hsplit'}
|
||||
|
||||
-- hop mappings
|
||||
lvim.builtin.which_key.mappings['w'] = {':HopWord<CR>', 'Hop word'}
|
||||
lvim.builtin.which_key.mappings['j'] = {':HopLineStartAC<CR>', 'Hop line'}
|
||||
lvim.builtin.which_key.mappings['k'] = {':HopLineStartBC<CR>', 'Hop line'}
|
||||
|
||||
lvim.builtin.which_key.mappings['r'] = {
|
||||
':set invrelativenumber<CR>', 'Toggle relative number'
|
||||
}
|
||||
lvim.builtin.which_key.mappings['i'] = {':SymbolsOutline<CR>', 'Index view'}
|
||||
|
||||
lvim.builtin.which_key.mappings['P'] = {
|
||||
'<cmd>Telescope projects<CR>', 'Projects'
|
||||
}
|
||||
|
||||
lvim.builtin.which_key.mappings['S'] = {
|
||||
name = 'Session',
|
||||
c = {
|
||||
'<cmd>lua require(\'persistence\').load()<cr>',
|
||||
'Restore last session for current dir'
|
||||
},
|
||||
l = {
|
||||
'<cmd>lua require(\'persistence\').load({ last = true })<cr>',
|
||||
'Restore last session'
|
||||
},
|
||||
Q = {
|
||||
'<cmd>lua require(\'persistence\').stop()<cr>',
|
||||
'Quit without saving session'
|
||||
}
|
||||
}
|
||||
lvim.builtin.which_key.mappings['d'] = {
|
||||
-- " Available Debug Adapters:
|
||||
-- " https://microsoft.github.io/debug-adapter-protocol/implementors/adapters/
|
||||
-- " Adapter configuration and installation instructions:
|
||||
-- " https://github.com/mfussenegger/nvim-dap/wiki/Debug-Adapter-installation
|
||||
-- " Debug Adapter protocol:
|
||||
-- " https://microsoft.github.io/debug-adapter-protocol/
|
||||
-- " Debugging
|
||||
name = 'Debug',
|
||||
e = {':call vimspector#Reset()<cr>', 'exit debug mode'},
|
||||
l = {':call vimspector#StepInto()<cr>', 'step into'},
|
||||
j = {':call vimspector#StepOver()<cr>', 'step over'},
|
||||
h = {':call vimspector#StepOut()<cr>', 'step out'},
|
||||
k = {':call vimspector#Restart()<cr>', 'restart debugging'},
|
||||
c = {':call vimspector#Continue()<cr>', 'continue'},
|
||||
r = {':call vimspector#RunToCursor()<cr>', 'run to cursor'},
|
||||
d = {':call vimspector#Launch()<cr>', 'Launch'},
|
||||
b = {':call vimspector#ToggleBreakpoint()<cr>', 'toggle breakpoint'},
|
||||
B = {'<Plug>VimspectorToggleConditionalBreakpoint', 'toggle breakpoint'},
|
||||
C = {':call vimspector#ClearBreakpoints()<cr>', 'clear breakpoints'},
|
||||
i = {'<Plug>VimspectorBalloonEval', 'inspect'}
|
||||
}
|
||||
|
||||
-- lvim.builtin.which_key.mappings['t'] = {
|
||||
-- name = '+Trouble',
|
||||
-- r = {'<cmd>Trouble lsp_references<cr>', 'References'},
|
||||
-- f = {'<cmd>Trouble lsp_definitions<cr>', 'Definitions'},
|
||||
-- d = {'<cmd>Trouble lsp_document_diagnostics<cr>', 'Diagnostics'},
|
||||
-- q = {'<cmd>Trouble quickfix<cr>', 'QuickFix'},
|
||||
-- l = {'<cmd>Trouble loclist<cr>', 'LocationList'},
|
||||
-- w = {'<cmd>Trouble lsp_workspace_diagnostics<cr>', 'Diagnostics'}
|
||||
-- }
|
45
.config/lvim/lua/settings.lua
Normal file
45
.config/lvim/lua/settings.lua
Normal file
@ -0,0 +1,45 @@
|
||||
vim.g.markdown_fenced_languages = {'html', 'python', 'ruby', 'vim', 'bash'}
|
||||
vim.opt.relativenumber = true
|
||||
vim.opt.backup = true -- creates a backup file
|
||||
vim.opt.backupdir = os.getenv('HOME') .. '/.cache/nvim/backup'
|
||||
vim.opt.hlsearch = false -- highlight all matches on previous search pattern
|
||||
vim.opt.wrap = true -- display lines as one long line
|
||||
vim.opt.conceallevel = 1 -- so that `` is visible in markdown files
|
||||
vim.opt.scrolloff = 8 -- how many lines should be visible while scrolling (for context)
|
||||
vim.opt.spelllang = 'en,tr'
|
||||
-- vim.opt.spell = false
|
||||
-- vim.opt.clipboard = "unnamedplus" -- allows neovim to access the system clipboard
|
||||
-- vim.opt.cmdheight = 2 -- more space in the neovim command line for displaying messages
|
||||
-- vim.opt.colorcolumn = "99999" -- fixes indentline for now
|
||||
-- vim.opt.completeopt = { "menuone", "noselect" }
|
||||
-- vim.opt.fileencoding = "utf-8" -- the encoding written to a file
|
||||
-- vim.opt.foldmethod = "manual" -- folding set to "expr" for treesitter based folding
|
||||
-- vim.opt.foldexpr = "" -- set to "nvim_treesitter#foldexpr()" for treesitter based folding
|
||||
-- vim.opt.guifont = "monospace:h17" -- the font used in graphical neovim applications
|
||||
-- vim.opt.hidden = true -- required to keep multiple buffers and open multiple buffers
|
||||
-- vim.opt.ignorecase = true -- ignore case in search patterns
|
||||
-- vim.opt.mouse = "a" -- allow the mouse to be used in neovim
|
||||
-- vim.opt.pumheight = 10 -- pop up menu height
|
||||
-- vim.opt.showmode = false -- we don't need to see things like -- INSERT -- anymore
|
||||
vim.opt.showtabline = 2 -- always show tabs
|
||||
-- vim.opt.smartcase = true -- smart case
|
||||
-- vim.opt.smartindent = true -- make indenting smarter again
|
||||
-- vim.opt.splitbelow = true -- force all horizontal splits to go below current window
|
||||
-- vim.opt.splitright = true -- force all vertical splits to go to the right of current window
|
||||
-- vim.opt.swapfile = false -- creates a swapfile
|
||||
-- vim.opt.termguicolors = true -- set term gui colors (most terminals support this)
|
||||
-- vim.opt.timeoutlen = 100 -- time to wait for a mapped sequence to complete (in milliseconds)
|
||||
-- vim.opt.title = true -- set the title of window to the value of the titlestring
|
||||
-- opt.titlestring = "%<%F%=%l/%L - nvim" -- what the title of the window will be set to
|
||||
-- vim.opt.undodir = utils.join_paths(get_cache_dir() "undo") -- set an undo directory
|
||||
-- vim.opt.undofile = true -- enable persistent undo
|
||||
-- vim.opt.updatetime = 300 -- faster completion
|
||||
vim.opt.writebackup = false -- if a file is being edited by another program (or was written to file while editing with another program) it is not allowed to be edited
|
||||
-- vim.opt.expandtab = true -- convert tabs to spaces
|
||||
-- vim.opt.shiftwidth = 2 -- the number of spaces inserted for each indentation
|
||||
-- vim.opt.tabstop = 2 -- insert 2 spaces for a tab
|
||||
-- vim.opt.cursorline = true -- highlight the current line
|
||||
-- vim.opt.number = true -- set numbered lines
|
||||
-- vim.opt.numberwidth = 4 -- set number column width to 2 {default 4}
|
||||
-- vim.opt.signcolumn = "yes" -- always show the sign column otherwise it would shift the text each time
|
||||
vim.opt.sidescrolloff = 8
|
4
.config/lvim/spell/en.utf-8.add
Normal file
4
.config/lvim/spell/en.utf-8.add
Normal file
@ -0,0 +1,4 @@
|
||||
Şahin
|
||||
Akkaya
|
||||
sahinakkaya
|
||||
Jira
|
Loading…
Reference in New Issue
Block a user