Compare commits

..

No commits in common. "4bebbfabbfaa9335423eb213d7ac56e22c43c92f" and "4006054b4ea4052f4ca85ef6bf2d22bc3c6ed44a" have entirely different histories.

9 changed files with 43 additions and 121 deletions

View File

@ -4,25 +4,16 @@ TERM = "xterm-256color"
[window] [window]
padding.x = 10 padding.x = 10
padding.y = 10 padding.y = 10
opacity = 0.9 opacity = 0.9
blur = true blur = true
decorations = "Full"
option_as_alt = "Both" option_as_alt = "Both"
[font] [font]
size = 14.0 normal.family = "MesloLGS Nerd Font Mono"
[font.normal] size = 14
family = "MesloLGS Nerd Font Mono"
style = "Regular"
[font.bold]
family = "MesloLGS Nerd Font Mono"
style = "Bold"
[font.italic]
family = "MesloLGS Nerd Font Mono"
style = "Italic"
[colors.primary] [colors.primary]
background = "#0f111c" background = "#0f111c"
@ -41,10 +32,11 @@ white = "#9094a7"
[colors.bright] [colors.bright]
black = "#51587b" black = "#51587b"
red = "#75d5f0" red = "#75d5f0"
green = "#80f2ff" green = "#252a41"
yellow = "#bffffa" yellow = "#444b6f"
blue = "#a6b3ff" blue = "#5e6587"
magenta = "#c3cdfe" magenta = "#c3cdfe"
cyan = "#5cbcd6" cyan = "#5cbcd6"
white = "#ffffff" white = "#9094a7"

View File

@ -26,16 +26,11 @@ sudo apt install build-essential
``` ```
1. Install the latest version of Neovim from the Neovim Launchpad PPA. Ubuntu apt has an older version, and since then much has changed, so we'll prefer the latest stable from the PPA. 1. Install the latest version of Neovim from the Neovim Launchpad PPA. Ubuntu apt has an older version, and since then much has changed, so we'll prefer the latest stable from the PPA.
```ubuntu ```
sudo add-apt-repository ppa:neovim-ppa/stable sudo add-apt-repository ppa:neovim-ppa/stable
sudo apt update sudo apt update
sudo apt install neovim sudo apt install neovim
``` ```
```macos
brew install neovim
```
2. Ensure that the nvim runtimepath is correctly configured to include `~/.config.nvim`. 2. Ensure that the nvim runtimepath is correctly configured to include `~/.config.nvim`.
You can check that by executing this nvim command: `:echo &runtimepath`. You can check that by executing this nvim command: `:echo &runtimepath`.
3. Both `init.lua` as well as the `lua/` folder and its contents should be symlinked to `~/.config/nvim` (Might need to create the nvim folder if first time). 3. Both `init.lua` as well as the `lua/` folder and its contents should be symlinked to `~/.config/nvim` (Might need to create the nvim folder if first time).
@ -55,18 +50,6 @@ Plugins live in lua/plugins.
Plugins can either be manually included in init.lua or managed by lazy nvim. Plugins can either be manually included in init.lua or managed by lazy nvim.
Each plugin gets its own lua file in there, and lazy or manual edits to init.lua can be used to configure what's enabled. Each plugin gets its own lua file in there, and lazy or manual edits to init.lua can be used to configure what's enabled.
#### coding.lua | saghen/blink.cmp
Completion plugin for language servers.
[Repo](https://github.com/saghen/blink.cmp)
#### snacks.lua | folke/snacks.nvim
Snacks contains a collection of QoL plugins. I am mostly using it for ease around file system search & navigation in nvim.
[Repo](https://github.com/folke/snacks.nvim)
#### theme.lua | folke/tokyonight.nvim
A theme I like for my nvim.
[Repo](https://github.com/folke/tokyonight.nvim)
## References ## References
https://m4xshen.dev/posts/build-your-modern-neovim-config-in-lua (Using their folder structure.) https://m4xshen.dev/posts/build-your-modern-neovim-config-in-lua (Using their folder structure.)

View File

@ -1,5 +1,11 @@
vim.g.mapleader = " " -- config files
vim.g.maplocalleader = " "
require("config.options") require("config.options")
require("config.lazy") require("config.mappings")
require("config.autocmds")
-- lazy nvim plugin manager
-- require("config.lazy")
-- manual inclusion of plugins
require("plugins.helloWorld")

View File

@ -1,27 +1,17 @@
-- 1. Correct Path & UV check -- install lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then if not vim.loop.fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git" vim.fn.system({
-- 2. Improved system call with error reporting "git",
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) "clone",
if vim.v.shell_error ~= 0 then "--filter=blob:none",
vim.api.nvim_echo({ "https://github.com/folke/lazy.nvim.git",
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" }, "--branch=stable", -- latest stable release
{ out, "WarningMsg" }, lazypath,
{ "\nPress any key to exit..." }, })
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end end
vim.opt.rtp:prepend(lazypath) vim.opt.rtp:prepend(lazypath)
-- 3. Explicit setup table -- load plugins
require("lazy").setup({ require("lazy").setup("plugins")
spec = {
{ import = "plugins" },
},
defaults = {
lazy = false, -- Load custom plugins on startup by default
},
})

View File

@ -1,16 +0,0 @@
return {
{
"saghen/blink.cmp",
version = "*",
opts = {
keymap = { preset = 'default' },
appearance = {
use_nvim_cmp_as_default = true,
nerd_font_variant = 'mono'
},
sources = {
default = { 'lsp', 'path', 'snippets', 'buffer' },
},
},
},
}

View File

@ -0,0 +1,10 @@
-- hello.lua
-- Define a function that prints a greeting
local function hello_world()
print("Hello, Neovim!")
end
-- Create a command ":SayHello" that runs the say_hello function
vim.api.nvim_create_user_command('HelloWorld', hello_world, {})

View File

@ -1,30 +0,0 @@
return {
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
opts = {
picker = { enabled = true },
explorer = { enabled = true },
dashboard = { enabled = true },
indent = { enabled = true },
input = { enabled = true },
notifier = { enabled = true },
scope = { enabled = true },
scroll = { enabled = true },
bigfile = { enabled = true },
words = { enabled = true },
},
keys = {
{ "<leader><space>", function() Snacks.picker.smart() end, desc = "Smart Find Files" },
{ "<leader>ff", function() Snacks.picker.files() end, desc = "Find Files" },
{ "<leader>fg", function() Snacks.picker.grep() end, desc = "Grep" },
{ "<leader>fb", function() Snacks.picker.buffers() end, desc = "Buffers" },
{ "<leader>fr", function() Snacks.picker.recent() end, desc = "Recent" },
{ "<leader>e", function() Snacks.explorer() end, desc = "File Explorer" },
{ "<leader>bd", function() Snacks.bufdelete() end, desc = "Delete Buffer" },
{ "<leader>.", function() Snacks.scratch() end, desc = "Toggle Scratchpad" },
},
},
}

View File

@ -1,10 +0,0 @@
return {
{
"folke/tokyonight.nvim",
lazy = false,
priority = 1000,
config = function()
vim.cmd([[colorscheme tokyonight]])
end,
},
}

View File

@ -7,6 +7,3 @@ plugins=(git)
source $ZSH/oh-my-zsh.sh source $ZSH/oh-my-zsh.sh
# For Claude Code known installation issues on MacOS
export PATH="$HOME/.local/bin:$PATH"