From 8cbadb61604667b407b53ee1258433994fa4765a Mon Sep 17 00:00:00 2001 From: coasteen Date: Thu, 9 Jul 2026 10:42:28 +0330 Subject: init --- config/nvim-1/lua/config.lua | 86 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100755 config/nvim-1/lua/config.lua (limited to 'config/nvim-1/lua/config.lua') diff --git a/config/nvim-1/lua/config.lua b/config/nvim-1/lua/config.lua new file mode 100755 index 0000000..f37534b --- /dev/null +++ b/config/nvim-1/lua/config.lua @@ -0,0 +1,86 @@ +local opt = vim.opt +local map = vim.keymap.set +local g = vim.g + +--filetypes +vim.cmd("autocmd BufRead,BufNewFile *.m set filetype=objc") + +g.mapleader = " " + +opt.shiftwidth = 4 +opt.tabstop = 4 +opt.softtabstop = 4 +opt.smarttab = true +opt.smartindent = true + +opt.undofile = true +opt.undodir = vim.fn.stdpath("config") .. "/undo" + +opt.number = true +opt.relativenumber = true + +opt.fillchars = "eob: " + +g.loaded_netrw = 1 +g.loaded_netrwPlugin = 1 + +opt.termguicolors = true + +opt.spell = false +opt.spelllang = { "en_us" } + +opt.shell = "/usr/bin/zsh" + +vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, { + border = "single", +}) +vim.diagnostic.config({ float = { border = "single" } }) + +map("n", "u", ":Telescope") +map("n", "t", ":tabnew") +map("n", "", ":tabn") +map("n", "", ":tabp") +map("n", "", ":bw") + +map("n", ".", vim.diagnostic.open_float) + +map("n", "=", "=") + +map("n", "x", "!chmod +x %") + +vim.api.nvim_create_autocmd("LspAttach", { + group = vim.api.nvim_create_augroup("UserLspConfig", {}), + callback = function(ev) + vim.bo[ev.buf].omnifunc = "v:lua.vim.lsp.omnifunc" + + local opts = { buffer = ev.buf } + map("n", "K", function() + vim.lsp.buf.hover({ border = "single" }) + end, opts) + map("n", "gi", vim.lsp.buf.implementation, opts) + map("n", "", vim.lsp.buf.signature_help, opts) + map("n", "wa", vim.lsp.buf.add_workspace_folder, opts) + map("n", "wr", vim.lsp.buf.remove_workspace_folder, opts) + map("n", "wl", function() + print(vim.inspect(vim.lsp.buf.list_workspace_folders())) + end, opts) + map("n", "D", vim.lsp.buf.type_definition, opts) + map("n", "rn", vim.lsp.buf.rename, opts) + map({ "n", "v" }, "ca", vim.lsp.buf.code_action, opts) + map("n", "gr", vim.lsp.buf.references, opts) + map("n", "f", function() + vim.lsp.buf.format({ async = true }) + end, opts) + end, +}) + +local builtin = require("telescope.builtin") +map("n", "ff", builtin.find_files, {}) +map("n", "fg", builtin.live_grep, {}) +map("n", "fb", builtin.buffers, {}) +map("n", "fh", builtin.help_tags, {}) +local treeapi = require("nvim-tree.api") +map("n", "e", treeapi.tree.toggle, {}) + +map("n", "", 'lua require("FTerm").toggle()') +map("t", "", 'lua require("FTerm").toggle()') -- cgit v1.2.3