summaryrefslogtreecommitdiff
path: root/fnl/settings
diff options
context:
space:
mode:
Diffstat (limited to 'fnl/settings')
-rw-r--r--fnl/settings/init.fnl4
-rw-r--r--fnl/settings/keymaps.fnl47
-rw-r--r--fnl/settings/options.fnl115
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)