diff --git a/Rest b/Rest new file mode 100644 index 00000000000..0c90d52e184 --- /dev/null +++ b/Rest @@ -0,0 +1,9 @@ + 2. Press [v](v) and move the cursor to the fifth item below. Notice that the + text is highlighted. + + 3. Press the `:`{normal} character. At the bottom of the screen + + `:'<,'>`{vim} + + will appear. + diff --git a/hello b/hello new file mode 100755 index 00000000000..2b5048a146d Binary files /dev/null and b/hello differ diff --git a/hello.odin b/hello.odin new file mode 100644 index 00000000000..2f41e4d5f4a --- /dev/null +++ b/hello.odin @@ -0,0 +1,7 @@ +package main + import "core:fmt" + +main:: proc(){ + fmt.println("Hello, World!") +} + diff --git a/init.lua b/init.lua index 08717d537e6..e3ebf04e7ae 100644 --- a/init.lua +++ b/init.lua @@ -8,14 +8,10 @@ ======== |.-""""""""""""""""""-.| |-----| ======== ======== || || | === | ======== ======== || KICKSTART.NVIM || |-----| ======== -======== || || | === | ======== -======== || || |-----| ======== ======== ||:Tutor || |:::::| ======== -======== |'-..................-'| |____o| ======== -======== `"")----------------(""` ___________ ======== ======== /::::::::::| |::::::::::\ \ no mouse \ ======== -======== /:::========| |==hjkl==:::\ \ required \ ======== -======== '""""""""""""' '""""""""""""' '""""""""""' ======== +======== /::::========| |==hjkl==:::\ \ required \ ======== +======== '""""""""""""' '""""""""""""' '"":/""""""""' ======== ======== ======== ===================================================================== ===================================================================== @@ -32,7 +28,7 @@ What is Kickstart? make Neovim your own! That might mean leaving Kickstart just the way it is for a while or immediately breaking it into modular pieces. It's up to you! - If you don't know anything about Lua, I recommend taking some time to read through + If you don't know anything about Lua, I recommend taking some time to read through a guide. One possible example which will only take 10-15 minutes: - https://learnxinyminutes.com/docs/lua/ @@ -137,7 +133,7 @@ vim.opt.updatetime = 250 -- Decrease mapped sequence wait time -- Displays which-key popup sooner vim.opt.timeoutlen = 300 - +vim.o.timeoutlen = 2000 -- Configure how new splits should be opened vim.opt.splitright = true vim.opt.splitbelow = true @@ -231,6 +227,17 @@ require('lazy').setup({ -- NOTE: Plugins can be added with a link (or for a github repo: 'owner/repo' link). 'tpope/vim-sleuth', -- Detect tabstop and shiftwidth automatically + -- { + 'mg979/vim-visual-multi', + -- init = function() + -- vim.g.VM_defaul_mappings = 0 + -- vim.g.VM_maps = { + -- ['Find Under'] = '', + -- } + -- vim.g.VM_add_cursor_at_pos_no_mappings = 1 + -- end, + --}, + -- NOTE: Plugins can also be added by using a table, -- with the first argument being the link and the following -- keys can be used to configure plugin behavior/loading/etc. @@ -270,7 +277,24 @@ require('lazy').setup({ -- Then, because we use the `config` key, the configuration only runs -- after the plugin has been loaded: -- config = function() ... end - + { + 'iruzo/ripgrep.nvim', + version = '*', + build = ':lua require("rg_setup").install_rg()', + }, + -- { + -- 'monkoose/neocodeium', + -- event = 'VeryLazy', + -- config = function() + -- local neocodeium = require 'neocodeium' + -- neocodeium.setup() + -- vim.keymap.set('i', '', neocodeium.accept) + -- vim.keymap.set('i', '', neocodeium.accept_line) + -- vim.keymap.set('i', '', neocodeium.cycle) + -- vim.keymap.set('i', '', neocodeium.cancel) + -- end, + -- }, + -- require('leap').create_default_mappings(), { -- Useful plugin to show you pending keybinds. 'folke/which-key.nvim', event = 'VimEnter', -- Sets the loading event to 'VimEnter' @@ -436,8 +460,31 @@ require('lazy').setup({ end, { desc = '[S]earch [N]eovim files' }) end, }, + { + 'ggandor/leap.nvim', + enabled = true, + keys = { + { 's', mode = { 'n', 'x', 'o' }, desc = 'Leap Forward to' }, + { 'S', mode = { 'n', 'x', 'o' }, desc = 'Leap Backward to' }, + { 'gs', mode = { 'n', 'x', 'o' }, desc = 'Leap from Windows' }, + }, + config = function(_, opts) + local leap = require 'leap' + for k, v in pairs(opts) do + leap.opts[k] = v + end + leap.add_default_mappings(true) + vim.keymap.del({ 'x', 'o' }, 'x') + + vim.keymap.del({ 'x', 'o' }, 'X') + leap.create_default_mappings() + end, + }, -- LSP Plugins + --{ 'https://github.com/ggandor/leap.nvim', + -- }, + { -- `lazydev` configures Lua LSP for your Neovim config, runtime and plugins -- used for completion, annotations and signatures of Neovim apis @@ -537,7 +584,7 @@ require('lazy').setup({ -- Rename the variable under your cursor. -- Most Language Servers support renaming across files, etc. - map('rn', vim.lsp.buf.rename, '[R]e[n]ame') + map('rn', vimlsp.buf.rename, '[R]e[n]ame') -- Execute a code action, usually your cursor needs to be on top of an error -- or a suggestion from your LSP for this to activate. @@ -614,10 +661,17 @@ require('lazy').setup({ -- - capabilities (table): Override fields in capabilities. Can be used to disable certain LSP features. -- - settings (table): Override the default settings passed when initializing the server. -- For example, to see the options for `lua_ls`, you could go to: https://luals.github.io/wiki/settings/ + local servers = { -- clangd = {}, -- gopls = {}, - -- pyright = {}, + ols = {}, + zls = { + cmd = { '/Users/jcoyne/zls/zig-out/bin/zls' }, + }, + pyright = {}, + require('lspconfig').ols.setup {}, + require('lspconfig').zls.setup {}, -- rust_analyzer = {}, -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs -- @@ -785,7 +839,7 @@ require('lazy').setup({ -- Accept ([y]es) the completion. -- This will auto-import if your LSP supports it. -- This will expand snippets if the LSP sent a snippet. - [''] = cmp.mapping.confirm { select = true }, + [''] = cmp.mapping.confirm { select = true }, -- If you prefer more traditional completion keymaps, -- you can uncomment the following lines @@ -837,21 +891,30 @@ require('lazy').setup({ { -- You can easily change to a different colorscheme. -- Change the name of the colorscheme plugin below, and then -- change the command in the config to whatever the name of that colorscheme is. - -- - -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`. - 'folke/tokyonight.nvim', + 'EdenEast/nightfox.nvim', + -- vim.cmd.colorscheme 'lunaperche', + priority = 1000, -- Make sure to load this before all the other start plugins. init = function() -- Load the colorscheme here. -- Like many other themes, this one has different styles, and you could load -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. - vim.cmd.colorscheme 'tokyonight-night' + vim.cmd.colorscheme 'Terafox' - -- You can configure highlights by doing something like: + -- You can configure highlights by doing something like vim.cmd.hi 'Comment gui=none' end, }, - + { + 'nvim-neo-tree/neo-tree.nvim', + branch = 'v3.x', + dependencies = { + 'nvim-lua/plenary.nvim', + 'nvim-tree/nvim-web-devicons', -- not strictly required, but recommended + 'MunifTanjim/nui.nvim', + -- "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information + }, + }, -- Highlight todo, notes, etc in comments { 'folke/todo-comments.nvim', event = 'VimEnter', dependencies = { 'nvim-lua/plenary.nvim' }, opts = { signs = false } }, @@ -871,7 +934,7 @@ require('lazy').setup({ -- - saiw) - [S]urround [A]dd [I]nner [W]ord [)]Paren -- - sd' - [S]urround [D]elete [']quotes -- - sr)' - [S]urround [R]eplace [)] ['] - require('mini.surround').setup() + --require('mini.surround').setup() -- Simple and easy statusline. -- You could remove this setup call if you don't like it, @@ -889,6 +952,7 @@ require('lazy').setup({ end -- ... and there is more! + -- -- Check out: https://github.com/echasnovski/mini.nvim end, }, @@ -929,7 +993,7 @@ require('lazy').setup({ -- -- require 'kickstart.plugins.debug', -- require 'kickstart.plugins.indent_line', - -- require 'kickstart.plugins.lint', + require 'kickstart.plugins.lint', -- require 'kickstart.plugins.autopairs', -- require 'kickstart.plugins.neo-tree', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps diff --git a/instructions.txt b/instructions.txt new file mode 100644 index 00000000000..17672ec792d --- /dev/null +++ b/instructions.txt @@ -0,0 +1,10 @@ +Create two arrays + +FOR LOOP +Fill First with the first 10 numbers + +FOR LOOP +fill second with the first 10 evens + +FOR LOOP +print both out