diff --git a/init.lua b/init.lua index ed50b69d7f3..e09cc3f9dc0 100644 --- a/init.lua +++ b/init.lua @@ -83,6 +83,9 @@ I hope you enjoy your Neovim journey, P.S. You can delete this when you're done too. It's your config now! :) --]] +-- +--vim.lsp.enable 'julials' +--vim.lsp.config 'julials' -- Set as the leader key -- See `:help mapleader` @@ -102,10 +105,10 @@ vim.g.have_nerd_font = false vim.o.number = true -- You can also add relative line numbers, to help with jumping. -- Experiment for yourself to see if you like it! --- vim.o.relativenumber = true +vim.o.relativenumber = true -- Enable mouse mode, can be useful for resizing splits for example! -vim.o.mouse = 'a' +--vim.o.mouse = 'a' -- Don't show the mode, since it's already in the status line vim.o.showmode = false @@ -600,14 +603,27 @@ require('lazy').setup({ -- See `:help lsp-config` for information about keys and how to configure ---@type table local servers = { - -- clangd = {}, - -- gopls = {}, - -- pyright = {}, + clangd = {}, + gopls = {}, + pyright = {}, + verible = {}, -- rust_analyzer = {}, -- -- Some languages (like typescript) have entire language plugins that can be useful: -- https://github.com/pmizio/typescript-tools.nvim - -- + --julials = { + -- cmd = { + -- 'julia', + -- '--startup-file=no', + --'--history-file=no', + --'-e', + ---[[ + -- using LanguageServer, SymbolServer; + -- runserver() + -- ]], + --}, + -- filetypes = { 'julia' }, + --}, -- But for many setups, the LSP (`ts_ls`) will work just fine -- ts_ls = {}, @@ -876,6 +892,7 @@ require('lazy').setup({ config = function() local parsers = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc' } require('nvim-treesitter').install(parsers) + require('nvim-treesitter').setup { install_dir = vim.fn.stdpath 'data' .. '/site' } vim.api.nvim_create_autocmd('FileType', { callback = function(args) local buf, filetype = args.buf, args.match @@ -909,12 +926,13 @@ require('lazy').setup({ -- Here are some example plugins that I've included in the Kickstart repository. -- Uncomment any of the lines below to enable them (you will need to restart nvim). -- - -- require 'kickstart.plugins.debug', - -- require 'kickstart.plugins.indent_line', - -- require 'kickstart.plugins.lint', - -- require 'kickstart.plugins.autopairs', - -- require 'kickstart.plugins.neo-tree', - -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommended keymaps + require 'kickstart.plugins.debug', + require 'kickstart.plugins.indent_line', + require 'kickstart.plugins.lint', + require 'kickstart.plugins.autopairs', + require 'kickstart.plugins.neo-tree', + require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps + require 'custom.plugins.notes', -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua` -- This is the easiest way to modularize your config. diff --git a/lua/custom/plugins/notes.lua b/lua/custom/plugins/notes.lua new file mode 100644 index 00000000000..59ff22e9906 --- /dev/null +++ b/lua/custom/plugins/notes.lua @@ -0,0 +1,42 @@ +return { + { + 'nvim-orgmode/orgmode', + event = 'VeryLazy', + ft = { 'org' }, + config = function() + require('orgmode').setup { + org_agenda_files = '~/vault/projects/**/*', + org_default_notes_file = '~/vault/projects/refile.org', + org_todo_keywords = { 'TODO(t)', 'NEXT(n)', '|', 'DONE(d)', '|', 'HOLD(h)' }, + org_todo_keyword_faces = { + DONE = ':foreground green', + NEXT = ':foreground orange :weight bold :underline on', + HOLD = ':foreground yellow', + }, + mappings = { + org_return_uses_meta_return = true, + }, + } + end, + }, + { + 'renerocksai/telekasten.nvim', + dependencies = { 'nvim-telescope/telescope.nvim' }, + }, + { + { + 'MeanderingProgrammer/render-markdown.nvim', + dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-mini/mini.nvim' }, -- if you use the mini.nvim suite + -- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-mini/mini.icons' }, -- if you use standalone mini plugins + -- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons + ---@module 'render-markdown' + ---@type render.md.UserConfig + opts = {}, + }, + }, + { + "L3MON4D3/LuaSnip", + version = "v2.*", + build = "make install_jsregexp", + }, +}