From 70fb6adeb9b12c3f9a1fde3572857d67947444c8 Mon Sep 17 00:00:00 2001 From: Marko Ristic Date: Wed, 14 Jan 2026 11:57:47 +0100 Subject: [PATCH] make template --- .gitignore | 7 +++ init.lua | 1 + lua/markaya/init.lua | 2 + lua/markaya/remap.lua | 41 ++++++++++++++++ lua/markaya/settings.lua | 101 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 152 insertions(+) create mode 100644 init.lua create mode 100644 lua/markaya/init.lua create mode 100644 lua/markaya/remap.lua create mode 100644 lua/markaya/settings.lua diff --git a/.gitignore b/.gitignore index d4777d2..cc345c7 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,10 @@ Network Trash Folder Temporary Items .apdisk +tags +test.sh +.luarc.json +nvim + +spell/ +lazy-lock.json diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..c7eedf7 --- /dev/null +++ b/init.lua @@ -0,0 +1 @@ +require 'markaya' diff --git a/lua/markaya/init.lua b/lua/markaya/init.lua new file mode 100644 index 0000000..b238450 --- /dev/null +++ b/lua/markaya/init.lua @@ -0,0 +1,2 @@ +require 'markaya.settings' +require 'markaya.remap' diff --git a/lua/markaya/remap.lua b/lua/markaya/remap.lua new file mode 100644 index 0000000..315c190 --- /dev/null +++ b/lua/markaya/remap.lua @@ -0,0 +1,41 @@ +vim.keymap.set('n', 'pv', vim.cmd.Ex, { desc = 'Browse project files' }) + +vim.keymap.set('v', 'J', ":m '>+1gv=gv", { desc = 'Move highlighted line up' }) +vim.keymap.set('v', 'K', ":m '>-2gv=gv", { desc = 'Move highlighted line down' }) + +-- Primagean kemap to save your pasted text inside buffer after you paste it over highlighted text +-- This usuaslly causes highlighted text to be deleted which is them moved to buffer +-- Remap is useful when changing some text on multiple places using same text +vim.keymap.set('x', 'p', '"_dP') + +vim.keymap.set('n', '', 'zz', { desc = 'Move half page down and center cursor' }) +vim.keymap.set('n', '', 'zz', { desc = 'Move half page up and center cursor' }) + +vim.keymap.set('n', 'n', 'nzzzv', { desc = 'Center view when moving to next instance of search' }) +vim.keymap.set('n', 'N', 'Nzzzv', { desc = 'Center view when moving to .instance of search' }) + +-- When pressing Esc key, also remove highlighted text from search. +vim.keymap.set('n', '', 'nohlsearch') + +vim.diagnostic.config { jump = { float = true } } +-- diagnostic keymaps - goto_prev & goto_next are deprecated so I added line above +-- vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'go to previous [d]iagnostic message' }) +-- vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { desc = 'go to next [d]iagnostic message' }) +vim.keymap.set('n', 'e', vim.diagnostic.open_float, { desc = 'show diagnostic [e]rror messages' }) +vim.keymap.set('n', 'q', vim.diagnostic.setloclist, { desc = 'open diagnostic [q]uickfix list' }) + +vim.keymap.set('n', 'zd', '_f[lrx', { desc = 'toggle checkbox done' }) +vim.keymap.set('n', 'zn', '_f[lr ', { desc = 'toggle checkbox not done' }) + +-- c for quicklist +vim.keymap.set('n', '', 'cnext', { desc = 'quicklist next item' }) +vim.keymap.set('n', '', 'cprev', { desc = 'quicklist next item' }) +--cclose closes + +--terminal options +vim.keymap.set('n', 'to', function() + vim.cmd.vnew() + vim.cmd.term() + vim.cmd.wincmd 'J' + vim.api.nvim_win_set_height(0, 15) +end) diff --git a/lua/markaya/settings.lua b/lua/markaya/settings.lua new file mode 100644 index 0000000..6ce56a0 --- /dev/null +++ b/lua/markaya/settings.lua @@ -0,0 +1,101 @@ +vim.g.mapleader = ' ' +vim.g.maplocalleader = [[\]] +vim.g.have_nerd_font = true + +-- [[ Setting options ]] +-- See `:help vim.opt` +-- For more options, you can see `:help option-list` +-- + +vim.opt.clipboard = 'unnamedplus' + +vim.opt.termguicolors = true + +vim.opt.number = true +vim.opt.relativenumber = true + +-- Enable mouse mode, can be useful for resizing splits for example! +-- vim.opt.mouse = 'a' + +-- Don't show the mode, since it's already in the status line +vim.opt.showmode = false + +-- Sync clipboard between OS and Neovim. +-- Remove this option if you want your OS clipboard to remain independent. +-- See `:help 'clipboard'` +--vim.opt.clipboard = 'unnamedplus' +-- + +vim.opt.tabstop = 4 +vim.opt.softtabstop = 4 +vim.opt.shiftwidth = 4 +vim.opt.expandtab = true + +vim.opt.smartindent = true + +-- Enable break indent +vim.opt.breakindent = true + +-- Save undo history +vim.opt.undofile = true + +-- Case-insensitive searching UNLESS \C or one or more capital letters in the search term +vim.opt.ignorecase = true +vim.opt.smartcase = true + +-- Keep signcolumn on by default +vim.opt.signcolumn = 'yes' + +-- line wrap +vim.opt.colorcolumn = { 80, 120, 160 } + +-- Decrease update time +vim.opt.updatetime = 250 + +-- Decrease mapped sequence wait time +-- Displays which-key popup sooner +vim.opt.timeoutlen = 300 + +-- Configure how new splits should be opened +-- vim.opt.splitright = true +-- vim.opt.splitbelow = true + +-- Sets how neovim will display certain whitespace characters in the editor. +-- See `:help 'list'` +-- and `:help 'listchars'` +vim.opt.list = true +vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' } + +-- Preview substitutions live, as you type! +vim.opt.inccommand = 'split' + +-- Show which line your cursor is on +vim.opt.cursorline = true + +-- Minimal number of screen lines to keep above and below the cursor. +vim.opt.scrolloff = 10 + +-- [[ Basic Keymaps ]] +-- See `:help vim.keymap.set()` + +-- Set highlight on search, but clear on pressing in normal mode +vim.opt.hlsearch = true + +-- highlight when yanking (copying) text +-- try it with `yap` in normal mode +-- see `:help vim.highlight.on_yank()` +vim.api.nvim_create_autocmd('textyankpost', { + desc = 'highlight when yanking (copying) text', + group = vim.api.nvim_create_augroup('kickstart-highlight-yank', { clear = true }), + callback = function() + vim.hl.on_yank() + -- vim.highlight.on_yank() + end, +}) + +function GoToLinkDefinition() + vim.fn.search('\\[\\[', 'W') + vim.cmd 'normal gd' +end + +vim.api.nvim_create_user_command('FindAndGoToDefinition', GoToLinkDefinition, {})