Neovim conf

This commit is contained in:
Joe Coyne 2025-12-25 13:53:54 -05:00
parent 8d1ef972bc
commit ee2518f0d0
5 changed files with 110 additions and 20 deletions

9
Rest Normal file
View File

@ -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.

BIN
hello Executable file

Binary file not shown.

7
hello.odin Normal file
View File

@ -0,0 +1,7 @@
package main
import "core:fmt"
main:: proc(){
fmt.println("Hello, World!")
}

104
init.lua
View File

@ -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', '<C-t>', neocodeium.accept)
-- vim.keymap.set('i', '<C-r>', neocodeium.accept_line)
-- vim.keymap.set('i', '<C-e>', neocodeium.cycle)
-- vim.keymap.set('i', '<C-c>', 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('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame')
map('<leader>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.
['<C-y>'] = cmp.mapping.confirm { select = true },
['<Tab>'] = 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

10
instructions.txt Normal file
View File

@ -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