diff options
Diffstat (limited to 'fnl/settings')
-rw-r--r-- | fnl/settings/init.fnl | 4 | ||||
-rw-r--r-- | fnl/settings/keymaps.fnl | 47 | ||||
-rw-r--r-- | fnl/settings/options.fnl | 115 |
3 files changed, 95 insertions, 71 deletions
diff --git a/fnl/settings/init.fnl b/fnl/settings/init.fnl index 5c21629..bff9c86 100644 --- a/fnl/settings/init.fnl +++ b/fnl/settings/init.fnl @@ -1,4 +1,2 @@ ;; Load nvim settings -(module settings - {require {_ settings.options - _ settings.keymaps}}) +(module settings {require {_ settings.options _ settings.keymaps}}) diff --git a/fnl/settings/keymaps.fnl b/fnl/settings/keymaps.fnl index 1d431e5..52254cd 100644 --- a/fnl/settings/keymaps.fnl +++ b/fnl/settings/keymaps.fnl @@ -1,13 +1,11 @@ ;; Custom keymappings. -(module settings.keymaps - {autoload {nvim aniseed.nvim}}) +(module settings.keymaps {autoload {nvim aniseed.nvim}}) (def- opts {:noremap true :silent true}) -(defn- map [mode lhs rhs opt] - (nvim.set_keymap mode lhs rhs opt)) +(defn- map [mode lhs rhs opt] (nvim.set_keymap mode lhs rhs opt)) ;;Remap space as leader key -(map "" "<Space>" "<Nop>" opts) +(map "" :<Space> :<Nop> opts) (set nvim.g.mapleader " ") (set nvim.g.maplocalleader " ") @@ -21,35 +19,34 @@ ;; Normal ;; ;; Better window navigation -(map "n" "<C-h>" "<C-w>h" opts) -(map "n" "<C-j>" "<C-w>j" opts) -(map "n" "<C-k>" "<C-w>k" opts) -(map "n" "<C-l>" "<C-w>l" opts) - +(map :n :<C-h> :<C-w>h opts) +(map :n :<C-j> :<C-w>j opts) +(map :n :<C-k> :<C-w>k opts) +(map :n :<C-l> :<C-w>l opts) ;; Resize with arrows -(map "n" "<C-Up>" ":resize -2<CR>" opts) -(map "n" "<C-Down>" ":resize +2<CR>" opts) -(map "n" "<C-Left>" ":vertical resize -2<CR>" opts) -(map "n" "<C-Right>" ":vertical resize +2<CR>" opts) +(map :n :<C-Up> ":resize -2<CR>" opts) +(map :n :<C-Down> ":resize +2<CR>" opts) +(map :n :<C-Left> ":vertical resize -2<CR>" opts) +(map :n :<C-Right> ":vertical resize +2<CR>" opts) ;; Navigate buffers -(map "n" "<S-l>" ":bnext<CR>" opts) -(map "n" "<S-h>" ":bprevious<CR>" opts) +(map :n :<S-l> ":bnext<CR>" opts) +(map :n :<S-h> ":bprevious<CR>" opts) ;; Visual ;; ;; Stay in indent mode -(map "v" "<" "<gv" opts) -(map "v" ">" ">gv" opts) +(map :v "<" :<gv opts) +(map :v ">" :>gv opts) ;; Visual Block ;; ;; Move text up and down -(map "x" "J" ":move '>+1<CR>gv-gv" opts) -(map "x" "K" ":move '<-2<CR>gv-gv" opts) -(map "x" "<A-j>" ":move '>+1<CR>gv-gv" opts) -(map "x" "<A-k>" ":move '<-2<CR>gv-gv" opts) +(map :x :J ":move '>+1<CR>gv-gv" opts) +(map :x :K ":move '<-2<CR>gv-gv" opts) +(map :x :<A-j> ":move '>+1<CR>gv-gv" opts) +(map :x :<A-k> ":move '<-2<CR>gv-gv" opts) ;; Move text up and down -(map "v" "<A-j>" ":m .+1<CR>==" opts) -(map "v" "<A-k>" ":m .-2<CR>==" opts) -(map "v" "p" "\"_dP" opts) +(map :v :<A-j> ":m .+1<CR>==" opts) +(map :v :<A-k> ":m .-2<CR>==" opts) +(map :v :p "\"_dP" opts) diff --git a/fnl/settings/options.fnl b/fnl/settings/options.fnl index 4e560ce..f49867e 100644 --- a/fnl/settings/options.fnl +++ b/fnl/settings/options.fnl @@ -1,51 +1,80 @@ ;; Sets options in neovim -(module settings.options - {autoload {nvim aniseed.nvim}}) +(module settings.options {autoload {nvim aniseed.nvim}}) -(def- opts { - :backup false ;; creates a backup file - :clipboard "unnamedplus" ;; allows neovim to access the system clipboard - :cmdheight 2 ;; more space in the neovim command line for displaying messages - :completeopt { "menuone" "noselect" } ;; mostly just for cmp - :conceallevel 0 ;; so that `` is visible in markdown files - :fileencoding "utf-8" ;; the encoding written to a file - :hlsearch true ;; highlight all matches on previous search pattern - :ignorecase true ;; ignore case in search patterns - :mouse "" ;; disable the mouse to be used in neovim - :pumheight 10 ;; pop up menu height - :showmode false ;; we don't need to see things like ;; INSERT ;; anymore - :showtabline 2 ;; always show tabs - :smartcase true ;; smart case - :smartindent true ;; make indenting smarter again - :splitbelow true ;; force all horizontal splits to go below current window - :splitright true ;; force all vertical splits to go to the right of current window - :swapfile false ;; creates a swapfile - :termguicolors true ;; set term gui colors (most terminals support this) - :timeoutlen 1000 ;; time to wait for a mapped sequence to complete (in milliseconds) - :undofile true ;; enable persistent undo - :updatetime 300 ;; faster completion (4000ms default) - :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 - :expandtab true ;; convert tabs to spaces - :shiftwidth 2 ;; the number of spaces inserted for each indentation - :tabstop 2 ;; insert 2 spaces for a tab - :cursorline true ;; highlight the current line - :number true ;; set numbered lines - :relativenumber true ;; set relative numbered lines - :numberwidth 4 ;; set number column width to 2 {default 4} - :signcolumn "yes" ;; always show the sign column, otherwise it would shift the text each time - :wrap false ;; display lines as one long line - :scrolloff 8 ;; is one of my fav - :sidescrolloff 8 - :guifont "monospace:h17" ;; the font used in graphical neovim applications - } -) +(def- opts {:backup false + ;; creates a backup file + :clipboard :unnamedplus + ;; allows neovim to access the system clipboard + :cmdheight 2 + ;; more space in the neovim command line for displaying messages + :completeopt {:menuone :noselect} + ;; mostly just for cmp + :conceallevel 0 + ;; so that `` is visible in markdown files + :fileencoding :utf-8 + ;; the encoding written to a file + :hlsearch true + ;; highlight all matches on previous search pattern + :ignorecase true + ;; ignore case in search patterns + :mouse "" + ;; disable the mouse to be used in neovim + :pumheight 10 + ;; pop up menu height + :showmode false + ;; we don't need to see things like ;; INSERT ;; anymore + :showtabline 2 + ;; always show tabs + :smartcase true + ;; smart case + :smartindent true + ;; make indenting smarter again + :splitbelow true + ;; force all horizontal splits to go below current window + :splitright true + ;; force all vertical splits to go to the right of current window + :swapfile false + ;; creates a swapfile + :termguicolors true + ;; set term gui colors (most terminals support this) + :timeoutlen 1000 + ;; time to wait for a mapped sequence to complete (in milliseconds) + :undofile true + ;; enable persistent undo + :updatetime 300 + ;; faster completion (4000ms default) + :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 + :expandtab true + ;; convert tabs to spaces + :shiftwidth 2 + ;; the number of spaces inserted for each indentation + :tabstop 2 + ;; insert 2 spaces for a tab + :cursorline true + ;; highlight the current line + :number true + ;; set numbered lines + :relativenumber true + ;; set relative numbered lines + :numberwidth 4 + ;; set number column width to 2 {default 4} + :signcolumn :yes + ;; always show the sign column, otherwise it would shift the text each time + :wrap false + ;; display lines as one long line + :scrolloff 8 + ;; is one of my fav + :sidescrolloff 8 + :guifont "monospace:h17" + ;; the font used in graphical neovim applications + }) -(defn- apply-opts [] - (each [k v (pairs opts)] - (tset vim.opt k v))) +(defn- apply-opts [] (each [k v (pairs opts)] + (tset vim.opt k v))) (apply-opts) (vim.cmd "set whichwrap+=<,>,[,],h,l") (vim.cmd "set iskeyword+=-") (vim.cmd "set formatoptions-=cro") -(nvim.ex.set "shortmess+=c") +(nvim.ex.set :shortmess+=c) |