From 546752feb6576be92fe421be1998217aa7d657ff Mon Sep 17 00:00:00 2001 From: triethyl Date: Sun, 6 Jul 2025 22:21:45 -0400 Subject: working on nvim setup Former-commit-id: a43ab0499838d262445d8af9cb954a84e259bb35 --- pkgs/custom-neovim/config/lua/options.lua | 67 +++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) (limited to 'pkgs/custom-neovim/config/lua/options.lua') diff --git a/pkgs/custom-neovim/config/lua/options.lua b/pkgs/custom-neovim/config/lua/options.lua index e69de29..ae6fb0a 100644 --- a/pkgs/custom-neovim/config/lua/options.lua +++ b/pkgs/custom-neovim/config/lua/options.lua @@ -0,0 +1,67 @@ +-- General Settings +vim.o.winborder = 'rounded' +vim.o.showmode = false +vim.o.icm = 'split' +vim.o.cia = 'abbr,kind,menu' +vim.o.mouse = "" +vim.o.number = true -- set numbered lines +vim.o.scrolloff = 4 -- minimal number of screen lines to keep above and below the cursor +vim.o.signcolumn = "yes" -- always show the sign column, otherwise it would shift the text each time +vim.o.clipboard = "unnamedplus" -- use system clipboard +vim.o.sessionoptions = 'curdir,folds,globals,help,tabpages,terminal,winsize' -- Things to save with the session. +vim.keymap.set("c", "", function() + if vim.fn.pumvisible() == 1 then return '' end + return '' +end, { expr = true }) -- Make enter complete command. + +-- Indention +local indent = 2 +vim.o.autoindent = true -- auto indentation +vim.o.expandtab = true -- convert tabs to spaces +vim.o.shiftwidth = indent -- the number of spaces inserted for each indentation +vim.o.smartindent = true -- make indenting smarter +vim.o.softtabstop = indent -- when hitting , pretend like a tab is removed, even if spaces +vim.o.tabstop = indent -- insert 2 spaces for a tab +vim.o.shiftround = true -- use multiple of shiftwidth when indenting with "<" and ">" + +-- Backups +vim.o.backup = false -- create a backup file +vim.o.swapfile = false -- creates a swapfile +vim.o.writebackup = false -- if a file is being edited by another program, it is not allowed to be edited + +-- Search +vim.o.hlsearch = true -- highlight all matches on previous search pattern +vim.o.ignorecase = true -- ignore case in search patterns +vim.o.smartcase = true -- smart case + +-- Folding +vim.o.foldmethod = "expr" +vim.o.foldexpr = "v:lua.vim.treesitter.foldexpr()" -- Set folder to treesitter. +vim.o.foldlevel = 99 -- Don't fold initially. +vim.o.foldnestmax = 4 -- Don't fold if more than 4 folds deep. +vim.o.foldtext = "" -- Color text in folds. + +-- Set Colorscheme +vim.cmd.colorscheme("oxocarbon") +vim.o.termguicolors = true + +-- Neovide +if vim.g.neovide then + vim.o.guifont = "CodeNewRoman Nerd Font:h12" + vim.g.neovide_scale_factor = 0.8 + + -- Zoom keymaps. + local change_scale_factor = function(delta) + vim.g.neovide_scale_factor = vim.g.neovide_scale_factor * delta + end + vim.keymap.set("n", "", function() + change_scale_factor(1.1) + end) + vim.keymap.set("n", "", function() + change_scale_factor(1/1.1) + end) + + -- Standard terminal emulator keymaps. + vim.api.nvim_set_keymap("c", "", "+", { noremap = true }) -- Paste in command mode. + vim.api.nvim_set_keymap('t', '', '"+Pi', {noremap = true}) -- Paste in terminal mode. +end -- cgit v1.2.3