summaryrefslogtreecommitdiff
path: root/nixos/config/nvim
diff options
context:
space:
mode:
authorNantha Sorubakanthan <nantha@mielota.com>2026-06-08 13:08:37 +0200
committerNantha Sorubakanthan <nantha@mielota.com>2026-06-08 19:58:30 +0200
commit770c0cfc08bd73ada6e7754473d69fe9e2d17dc2 (patch)
tree3c1da3053ed03bbdc2e8c4e4fbf26947b7ef97ae /nixos/config/nvim
parent218a690b155d9e7d47bb2e7487a150c16c8f482f (diff)
rewrite config in nix
Diffstat (limited to 'nixos/config/nvim')
-rw-r--r--nixos/config/nvim/init.lua207
1 files changed, 0 insertions, 207 deletions
diff --git a/nixos/config/nvim/init.lua b/nixos/config/nvim/init.lua
deleted file mode 100644
index b9efd3a..0000000
--- a/nixos/config/nvim/init.lua
+++ /dev/null
@@ -1,207 +0,0 @@
--- GLOBALS
-
-vim.g.mapleader = " "
-
-vim.o.number = true
-vim.o.relativenumber = false
-
-vim.o.undofile = true
-vim.o.ignorecase = true
-
-vim.o.expandtab = false
-vim.o.shiftwidth = 4
-vim.o.tabstop = 4
-vim.o.softtabstop = 4
-vim.o.smartindent = true
-vim.o.autoindent = true
-
-vim.o.signcolumn = "yes"
-vim.o.winborder = 'single'
-vim.o.showmode = true
-vim.o.guicursor = ""
-
-vim.o.swapfile = false
-
-vim.o.cursorline = true
-
--- •⏎.·○◦
-vim.o.list = true
-vim.o.listchars = "tab:🡪 ,trail:·,eol:⏎,space:·,multispace:·,lead:·,leadmultispace:·"
-
-vim.o.completeopt = "fuzzy,menuone,noselect"
-vim.diagnostic.config({ virtual_text = true })
-
--- AUTOCOMPLETION
-
-vim.o.autocomplete = false
-vim.o.completeopt = 'menu,menuone,noselect'
-
--- STATUSBAR
-
-vim.diagnostic.status()
-vim.lsp.status()
-
--- FRENCH SPELLS
-
-local spell_path = vim.fn.stdpath("data") .. "/site/spell"
-if not (vim.uv.fs_stat(spell_path .. "/fr.utf-8.spl") and vim.uv.fs_stat(spell_path .. "/fr.utf-8.sug")) then
- print("Installing french spells")
- -- Other mirrors can be found on https://www.vim.org/mirrors.php
- local mirror = "https://vim.mirror.garr.it/pub/vim/" .. "runtime/spell/"
- local files = { "fr.utf-8.spl", "fr.utf-8.sug" }
- vim.fn.mkdir(spell_path, "p")
- for _, file in ipairs(files) do
- vim.fn.system(string.format("curl -L %s%s -o %s/%s", mirror, file, spell_path, file))
- end
-end
-
-vim.cmd [[set spelllang=en,fr]]
-vim.cmd [[set spell]]
-
--- PLUGINS
-
-vim.pack.add({
- { src = "https://github.com/neovim/nvim-lspconfig" },
- { src = "https://github.com/ibhagwan/fzf-lua" },
- { src = "https://github.com/mfussenegger/nvim-jdtls" },
- { src = "https://github.com/lewis6991/gitsigns.nvim" },
- { src = "https://github.com/stevearc/oil.nvim" },
- { src = "https://github.com/sphamba/smear-cursor.nvim" },
- { src = "https://github.com/saghen/blink.cmp" },
- { src = "https://github.com/saghen/blink.lib" },
- { src = "https://github.com/folke/tokyonight.nvim" },
- { src = "https://github.com/windwp/nvim-autopairs" }
-})
-
-vim.cmd [[
- colorscheme tokyonight-night
- highlight Normal guibg=none
- highlight NonText guibg=none
- highlight Normal ctermbg=none
- highlight NonText ctermbg=none
-]]
-
-
-require("blink.cmp").setup({ keymap = { preset = "enter" } })
-require('blink.cmp').build():wait(60000)
-require("nvim-autopairs").setup({})
-require("gitsigns").setup({})
-require("oil").setup({
- default_file_explorer = true,
- lsp_file_methods = {
- enabled = true,
- timeout_ms = 1000,
- autosave_changes = true,
- },
- columns = {
- "permissions",
- "size",
- },
- float = {
- max_width = 0.7,
- max_height = 0.6,
- border = vim.o.winborder,
- },
- buf_options = {
- buflisted = false,
- bufhidden = "hide",
- },
- view_options = {
- show_hidden = true,
- },
-})
-
-require("smear_cursor").setup({
- smear_insert_mode = true,
- stiffness = 0.7,
- trailing_stiffness = 0.3,
- stiffness_insert_mode = 0.7,
- trailing_stiffness_insert_mode = 0.7,
- damping = 0.67,
- damping_insert_mode = 0.67,
- distance_stop_animating = 0.4,
-})
-
-vim.cmd [[Gitsigns toggle_current_line_blame]]
-
--- MAPPING
-
-local map = vim.keymap.set
-
-map("n", "<C-d>", "<C-d>zz")
-map("n", "<C-u>", "<C-u>zz")
-map("v", "J", ":m '>+1<CR>gv=gv")
-map("v", "K", ":m '<-2<CR>gv=gv")
-map("n", "n", "nzzzv")
-map("n", "N", "Nzzzv")
-map("n", "<leader>s", [[%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]])
-map("n", "<leader>e", [[:Oil<CR>]])
-map("n", "<leader><CR>", vim.lsp.buf.format)
-
-local fzf = require("fzf-lua") -- blazing fast
-
-map("n", "<leader>F", ":FzfLua<CR>")
-map("n", "<leader>f", fzf.files)
-map("n", "<leader>t", fzf.treesitter)
-map("n", "<leader>/", fzf.live_grep)
-
--- Configure lua_ls to use neovim runtime or all of lua_ls lib.
--- We put way much load on the cpu if we open both.
-local lua_ls_lib = {}
-local neovim_config_path = vim.fn.expand("~/code/dox/artix/home/.config/nvim/init.lua")
-
-if vim.api.nvim_buf_get_name(0) == neovim_config_path then
- lua_ls_lib = vim.api.nvim_get_runtime_file("", true)
-end
-
-vim.lsp.config("lua_ls", {
- settings = {
- Lua = {
- workspace = {
- library = lua_ls_lib
- }
- }
- }
-})
-
--- do not enable jdtls here, we let the nvim-jdtls plugin do everything
-vim.lsp.enable({
- "lua_ls", "cssls", "html", "jsonls", "clangd", "ts_ls", "nil",
- "tinymist", "marksman", "lemminx", "rust_analyzer", "pyright"
-})
-
--- AUTOCMDS
-
-vim.api.nvim_create_autocmd("TextYankPost", {
- callback = function() vim.hl.on_yank() end
-})
-
-vim.api.nvim_create_autocmd("BufWritePost", {
- pattern = "*.tex",
- callback = function() vim.cmd [[! pdflatex % ]] end
-})
-
-vim.api.nvim_create_autocmd("FileType", {
- pattern = "java",
- callback = function(args)
- local project_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":p:h:t")
- local workspace_dir = vim.fn.stdpath("data")
- .. package.config:sub(1, 1)
- .. "jdtls-workspace"
- .. package.config:sub(1, 1)
- .. project_name
-
- local config = {
- name = "jdtls",
- cmd = {
- "jdtls",
- "-data",
- workspace_dir,
- },
- root_dir = vim.fs.root(0, { ".git", "meta", "gradlew", "mvnw" }),
- settings = { java = {} },
- init_options = { bundles = {} },
- }
- require('jdtls').start_or_attach(config)
- end
-})