Blueno_Termux/myTermux/optional/neovim-settings/xshin.lua
2022-04-01 08:36:29 -04:00

89 lines
2.6 KiB
Lua

-- settings
local cmd = vim.cmd
-- Return to last edit line position when opening files
cmd [[au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif]];
-- Set nowrap text when opening files
cmd [[set nowrap]];
-- Set Cursor Underline
cmd [[set guicursor=]];
-- Restore Cursor
cmd [[
augroup RestoreCursorShapeOnExit
autocmd!
autocmd VimLeave * set guicursor=a:hor20
augroup END
]];
-- mapping
local function map(mode, lhs, rhs, opts)
local options = {noremap = true}
if opts then
options = vim.tbl_extend("force", options, opts)
end
vim.api.nvim_set_keymap(mode, lhs, rhs, options)
end
-- Terminal
-- <C-l> == CTRL + l
map("n", "<C-r>", ":vnew +terminal | setlocal nobuflisted <CR>", opt) -- term over right
-- <C-x> == CTRL + x
map("n", "<C-x>", ":10new +terminal | setlocal nobuflisted <CR>", opt) -- term bottom
-- <M-t> == ALT + t
map("n", "<M-t>", ":terminal <CR>", opt) -- term buffer
-- Number Line
-- <C-m> == CTRL + m
map("n", "<C-m>", ":set number <CR>", opt) -- set number
-- <C-M-m> == CTRL + ALT + m
map("n", "<C-M-m>", ":set nonumber <CR>", opt) -- set nonumber
-- Wrap Text
-- <C-w> == CTRL + w
map("n", "<C-w>", [[<esc>:set wrap<cr>]], opt)
map("i", "<C-w>", [[<esc>:set wrap<cr>]], opt)
map("v", "<C-w>", [[<esc>:set wrap<cr>]], opt)
-- No Wrap Text
-- <C-M-w> == CTRL + ALT + w
map("n", "<C-M-w>", [[<esc>:set nowrap<cr>]], opt)
map("i", "<C-M-w>", [[<esc>:set nowrap<cr>]], opt)
map("v", "<C-M-w>", [[<esc>:set nowrap<cr>]], opt)
-- save on normal, insert and visual mode (CTRL + S)
map("n", "<C-s>", [[<esc>:w<cr>]], opt)
map("i", "<C-s>", [[<esc>:w<cr>]], opt)
map("v", "<C-s>", [[<esc>:w<cr>]], opt)
-- quit on normal, insert and visual mode (CTRL + Q)
map("n", "<C-q>", [[<esc>:q<cr>]], opt)
map("i", "<C-q>", [[<esc>:q<cr>]], opt)
map("v", "<C-q>", [[<esc>:q<cr>]], opt)
-- save and quit, insert and visual mode (CTRL + ALT + S)
map("n", "<C-M-s>", [[<esc>:wq!<cr>]], opt)
map("i", "<C-M-s>", [[<esc>:wq!<cr>]], opt)
map("v", "<C-M-s>", [[<esc>:wq!<cr>]], opt)
-- quit without save on normal, insert and visual mode (CTRL + ALT + Q)
map("n", "<C-M-q>", [[<esc>:q!<cr>]], opt)
map("i", "<C-M-q>", [[<esc>:q!<cr>]], opt)
map("v", "<C-M-q>", [[<esc>:q!<cr>]], opt)
-- move cursor to start (home) text on normal, insert and visual mode. Example: n... (CTRL + A)
map("n", "<C-a>", [[<home>]], opt)
map("i", "<C-a>", [[<home>]], opt)
map("v", "<C-a>", [[<home>]], opt)
-- move cursor to end text on normal, insert and visual mode. Example: n... (CTRL + D)
map("n", "<C-d>", [[<end>]], opt)
map("i", "<C-d>", [[<end>]], opt)
map("v", "<C-d>", [[<end>]], opt)