summaryrefslogtreecommitdiff
path: root/lua/core/init.lua
blob: 51c6532b1833d371ba64b33dd41298f3508d3fcb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
vim.g.mapleader=" "
vim.opt.encoding="utf-8"
vim.opt.wildmenu=true -- Show mathes with tab-completion
vim.opt.number=true
vim.opt.relativenumber=true
vim.opt.ruler=true
vim.opt.laststatus=0
vim.opt.splitbelow=true
vim.opt.splitright=true
vim.opt.tabstop=2
vim.opt.shiftwidth=2
vim.opt.expandtab=true
vim.opt.foldmethod="marker" --- For `{{{` & `}}}` folding
vim.opt.complete:append("kspell")
vim.opt.spelllang="fr" -- why does french exist...
vim.api.nvim_set_keymap("n","Y","y$", {}) -- Better motion for `Y`
vim.api.nvim_set_keymap("t", "<Esc>", "<C-\\><C-n>", {}) -- terminal mode Esc

vim.keymap.set("v", "<s-l>", ":m '>+1<CR>gv=gv")
vim.keymap.set("v", "<s-h>", ":m '<-2<CR>gv=gv")

-- Netrw preferences when not using lf
vim.g.netrw_liststyle = 3
vim.g.netrw_banner = 0
vim.g.netrw_bufsettings = "noma nomod nu nobl nowrap ro"

local function set_git_root_dir()
  local git_dir = vim.fn.finddir('.git', '.;')
  if git_dir ~= '' then
    local git_root = vim.fn.fnamemodify(git_dir, ':h')
    vim.cmd('cd ' .. git_root)
  end
end

vim.api.nvim_create_autocmd('VimEnter', {
  pattern = '*',
  callback = set_git_root_dir
})