rework
38
README.md
|
@ -1,28 +1,19 @@
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<img src="pictures/trixy.png" />
|
<img src="pictures/trixy.jpg" />
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Trixy is a begginer friendy distro of NeoVim, that aims to be powerful while remaining minimal.
|
# Trixy is a begginer friendy distro of NeoVim, that aims to be powerful while remaining minimal.
|
||||||
|
|
||||||
|
|
||||||
## Notable plugins and features include :
|
## Notable plugins and features include :
|
||||||
- `onedark` and `nightfox` colorschemes
|
|
||||||
- `zen-mode` with `twilight`
|
|
||||||
- new, modern ui by `nui` and `noice`
|
|
||||||
- improved camelCase navigation wit w, b, e etc
|
- improved camelCase navigation wit w, b, e etc
|
||||||
- `harpoon` for easier jumping between project files
|
|
||||||
- pomodoro timer using `nomodoro` ; when pomodoro timer runs out, break starts with `cellular-automation.nvim`
|
|
||||||
- git integration using `gitsigns` and `neogit`
|
|
||||||
- debugger interface with `nvim-dap-ui`
|
|
||||||
- `hlchunk.nvim` used for highlighting current scope
|
- `hlchunk.nvim` used for highlighting current scope
|
||||||
- `veil` as a dashboard and startpage
|
|
||||||
- `nvim-tree` for file tree view
|
- `nvim-tree` for file tree view
|
||||||
- `lsp-zero` as a language server setup, simply briliant
|
- `lsp-zero` as a language server setup, simply briliant
|
||||||
|
- ...
|
||||||
|
|
||||||
|
|
||||||
# Installation
|
# Installation
|
||||||
|
@ -32,28 +23,3 @@ nvim +"Lazy sync"
|
||||||
```
|
```
|
||||||
It should pull Lazy.nvim itself, and also all of the plugins. Run :Mason to install your Language Servers of choice.
|
It should pull Lazy.nvim itself, and also all of the plugins. Run :Mason to install your Language Servers of choice.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Screenshots
|
|
||||||
|
|
||||||
### Dashboard with screensaver falling leaves
|
|
||||||
![image](pictures/veil.png)
|
|
||||||
|
|
||||||
### Highlighting current scope
|
|
||||||
![image](pictures/hlchunks.png)
|
|
||||||
|
|
||||||
### File tree
|
|
||||||
![image](pictures/nvimtree.png)
|
|
||||||
|
|
||||||
### Language Server
|
|
||||||
![image](pictures/lsp-cmp.png)
|
|
||||||
![image](pictures/errors.png)
|
|
||||||
|
|
||||||
### Zen mode, with twilight
|
|
||||||
![image](pictures/zen.png)
|
|
||||||
|
|
||||||
### Git integration
|
|
||||||
![image](pictures/git.png)
|
|
||||||
|
|
||||||
|
|
|
@ -3,3 +3,5 @@
|
||||||
|
|
||||||
-- vim.g.onedark_config = { style = 'darker' }
|
-- vim.g.onedark_config = { style = 'darker' }
|
||||||
vim.cmd("colorscheme carbonfox")
|
vim.cmd("colorscheme carbonfox")
|
||||||
|
-- vim.opt.background = "dark" -- set this to dark or light
|
||||||
|
-- vim.cmd.colorscheme "oxocarbon"
|
||||||
|
|
17
lua/options/harpoon.lua
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
local harpoon = require("harpoon")
|
||||||
|
|
||||||
|
-- REQUIRED
|
||||||
|
harpoon:setup()
|
||||||
|
-- REQUIRED
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<leader>ha", function() harpoon:list():append() end)
|
||||||
|
vim.keymap.set("n", "<C-e>", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end)
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<C-h>", function() harpoon:list():select(1) end)
|
||||||
|
vim.keymap.set("n", "<C-t>", function() harpoon:list():select(2) end)
|
||||||
|
vim.keymap.set("n", "<C-n>", function() harpoon:list():select(3) end)
|
||||||
|
vim.keymap.set("n", "<C-s>", function() harpoon:list():select(4) end)
|
||||||
|
|
||||||
|
-- Toggle previous & next buffers stored within Harpoon list
|
||||||
|
vim.keymap.set("n", "<C-S-P>", function() harpoon:list():prev() end)
|
||||||
|
vim.keymap.set("n", "<C-S-N>", function() harpoon:list():next() end)
|
|
@ -1,9 +0,0 @@
|
||||||
require('drop').setup
|
|
||||||
{
|
|
||||||
---@type DropTheme|string
|
|
||||||
theme = "leaves", -- can be one of rhe default themes, or a custom theme
|
|
||||||
max = 15, -- maximum number of drops on the screen
|
|
||||||
interval = 100, -- every 100ms we update the drops
|
|
||||||
screensaver = 1000 * 60 * 3, -- show after 3 minutes. Set to false, to disable
|
|
||||||
filetypes = { }, -- will enable/disable automatically for the following filetypes
|
|
||||||
}
|
|
24
lua/plugins/harpoon.lua
Executable file → Normal file
|
@ -1,15 +1,17 @@
|
||||||
vim.g.mapleader = " "
|
local harpoon = require("harpoon")
|
||||||
|
|
||||||
local mark = require("harpoon.mark")
|
-- REQUIRED
|
||||||
local ui = require("harpoon.ui")
|
harpoon:setup()
|
||||||
|
-- REQUIRED
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<leader>a", function() harpoon:list():append() end)
|
||||||
|
vim.keymap.set("n", "<C-e>", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end)
|
||||||
|
|
||||||
-- show harpoon menu and add file to harpoon list
|
vim.keymap.set("n", "<C-h>", function() harpoon:list():select(1) end)
|
||||||
vim.keymap.set("n", "<leader>ma", mark.add_file)
|
vim.keymap.set("n", "<C-t>", function() harpoon:list():select(2) end)
|
||||||
vim.keymap.set("n", "<leader>mm", ui.toggle_quick_menu)
|
vim.keymap.set("n", "<C-n>", function() harpoon:list():select(3) end)
|
||||||
|
vim.keymap.set("n", "<C-s>", function() harpoon:list():select(4) end)
|
||||||
|
|
||||||
-- main 4 files of harpoon jumping
|
-- Toggle previous & next buffers stored within Harpoon list
|
||||||
vim.keymap.set("n", "<C-h>", function() ui.nav_file(1) end)
|
vim.keymap.set("n", "<C-S-P>", function() harpoon:list():prev() end)
|
||||||
vim.keymap.set("n", "<C-t>", function() ui.nav_file(2) end)
|
vim.keymap.set("n", "<C-S-N>", function() harpoon:list():next() end)
|
||||||
vim.keymap.set("n", "<C-n>", function() ui.nav_file(3) end)
|
|
||||||
vim.keymap.set("n", "<C-s>", function() ui.nav_file(4) end)
|
|
||||||
|
|
|
@ -3,9 +3,10 @@ require("plugins.treesitter")
|
||||||
require("plugins.lsp-zero")
|
require("plugins.lsp-zero")
|
||||||
require("plugins.devicons")
|
require("plugins.devicons")
|
||||||
require("plugins.lualine")
|
require("plugins.lualine")
|
||||||
-- require("plugins.harpoon")
|
|
||||||
require("plugins.hlblocks")
|
require("plugins.hlblocks")
|
||||||
require("plugins.gitsigns")
|
require("plugins.gitsigns")
|
||||||
require("plugins.nvimtree")
|
require("plugins.nvimtree")
|
||||||
require("plugins.bufferline")
|
require("plugins.bufferline")
|
||||||
require("plugins.wilder")
|
require("plugins.wilder")
|
||||||
|
require("plugins.mini")
|
||||||
|
require("plugins.harpoon")
|
||||||
|
|
|
@ -22,44 +22,17 @@ require("lazy").setup({
|
||||||
|
|
||||||
-- colorscheme
|
-- colorscheme
|
||||||
"EdenEast/nightfox.nvim",
|
"EdenEast/nightfox.nvim",
|
||||||
"luckasRanarison/tree-sitter-hypr",
|
-- 'nyoom-engineering/oxocarbon.nvim',
|
||||||
|
'luckasRanarison/tree-sitter-hypr',
|
||||||
|
|
||||||
'lambdalisue/nerdfont.vim',
|
'lambdalisue/nerdfont.vim',
|
||||||
'gelguy/wilder.nvim',
|
'gelguy/wilder.nvim',
|
||||||
|
|
||||||
{
|
|
||||||
"rbong/vim-flog",
|
|
||||||
cmd = { "Flog", "Flogsplit", "Floggit" },
|
|
||||||
dependencies = {
|
|
||||||
"tpope/vim-fugitive",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
'kassio/neoterm',
|
|
||||||
|
|
||||||
-- it's annoying that w skips the whole word, so let's fix it
|
-- it's annoying that w skips the whole word, so let's fix it
|
||||||
"bkad/camelcasemotion",
|
"bkad/camelcasemotion",
|
||||||
|
|
||||||
-- very good file jumping system
|
|
||||||
{
|
|
||||||
"ThePrimeagen/harpoon",
|
|
||||||
dependencies = "nvim-lua/plenary.nvim",
|
|
||||||
version = "harpoon2"
|
|
||||||
},
|
|
||||||
|
|
||||||
-- arbitrarily comment
|
|
||||||
"tpope/vim-commentary",
|
|
||||||
|
|
||||||
"lewis6991/gitsigns.nvim",
|
"lewis6991/gitsigns.nvim",
|
||||||
|
|
||||||
-- like magit for emacs
|
|
||||||
{
|
|
||||||
"NeogitOrg/neogit",
|
|
||||||
dependencies = "nvim-lua/plenary.nvim",
|
|
||||||
config = true
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
-- for faster file navigation
|
-- for faster file navigation
|
||||||
{
|
{
|
||||||
"nvim-tree/nvim-tree.lua",
|
"nvim-tree/nvim-tree.lua",
|
||||||
|
@ -89,16 +62,14 @@ require("lazy").setup({
|
||||||
|
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
-- Automagically close () "" and so on
|
|
||||||
{
|
{
|
||||||
'windwp/nvim-autopairs',
|
"ThePrimeagen/harpoon",
|
||||||
event = "InsertEnter",
|
branch = "harpoon2",
|
||||||
opts = {} -- this is equalent to setup({}) function
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- better status line than stock one
|
-- better status line than stock one
|
||||||
{
|
{
|
||||||
"nvim-lualine/lualine.nvim",
|
"nvim-lualine/lualine.nvim",
|
||||||
|
@ -129,7 +100,7 @@ require("lazy").setup({
|
||||||
-- this is pure magic, i love this guy
|
-- this is pure magic, i love this guy
|
||||||
{
|
{
|
||||||
"VonHeikemen/lsp-zero.nvim",
|
"VonHeikemen/lsp-zero.nvim",
|
||||||
branch = 'v2.x',
|
branch = 'v3.x',
|
||||||
dependencies = {
|
dependencies = {
|
||||||
-- LSP Support
|
-- LSP Support
|
||||||
{"neovim/nvim-lspconfig"}, -- Required
|
{"neovim/nvim-lspconfig"}, -- Required
|
||||||
|
@ -143,6 +114,9 @@ require("lazy").setup({
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
'echasnovski/mini.nvim', version = false
|
||||||
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,89 @@
|
||||||
require('mini.cursorword').setup()
|
require('mini.cursorword').setup()
|
||||||
require('mini.trailspace').setup()
|
require('mini.trailspace').setup()
|
||||||
|
require('mini.comment').setup()
|
||||||
|
require('mini.pairs').setup()
|
||||||
|
|
||||||
|
|
||||||
|
require('mini.surround').setup(
|
||||||
|
{
|
||||||
|
-- Add custom surroundings to be used on top of builtin ones. For more
|
||||||
|
-- information with examples, see `:h MiniSurround.config`.
|
||||||
|
custom_surroundings = nil,
|
||||||
|
|
||||||
|
-- Duration (in ms) of highlight when calling `MiniSurround.highlight()`
|
||||||
|
highlight_duration = 500,
|
||||||
|
|
||||||
|
-- Module mappings. Use `''` (empty string) to disable one.
|
||||||
|
mappings = {
|
||||||
|
add = 'sa', -- Add surrounding in Normal and Visual modes
|
||||||
|
delete = 'sd', -- Delete surrounding
|
||||||
|
find = 'sf', -- Find surrounding (to the right)
|
||||||
|
find_left = 'sF', -- Find surrounding (to the left)
|
||||||
|
highlight = 'sh', -- Highlight surrounding
|
||||||
|
replace = 'sr', -- Replace surrounding
|
||||||
|
update_n_lines = 'sn', -- Update `n_lines`
|
||||||
|
|
||||||
|
suffix_last = 'l', -- Suffix to search with "prev" method
|
||||||
|
suffix_next = 'n', -- Suffix to search with "next" method
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Number of lines within which surrounding is searched
|
||||||
|
n_lines = 20,
|
||||||
|
|
||||||
|
-- Whether to respect selection type:
|
||||||
|
-- - Place surroundings on separate lines in linewise mode.
|
||||||
|
-- - Place surroundings on each line in blockwise mode.
|
||||||
|
respect_selection_type = false,
|
||||||
|
|
||||||
|
-- How to search for surrounding (first inside current line, then inside
|
||||||
|
-- neighborhood). One of 'cover', 'cover_or_next', 'cover_or_prev',
|
||||||
|
-- 'cover_or_nearest', 'next', 'prev', 'nearest'. For more details,
|
||||||
|
-- see `:h MiniSurround.config`.
|
||||||
|
search_method = 'cover',
|
||||||
|
|
||||||
|
-- Whether to disable showing non-error feedback
|
||||||
|
silent = false,
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
require('mini.starter').setup(
|
||||||
|
{
|
||||||
|
-- Whether to open starter buffer on VimEnter. Not opened if Neovim was
|
||||||
|
-- started with intent to show something else.
|
||||||
|
autoopen = true,
|
||||||
|
|
||||||
|
-- Whether to evaluate action of single active item
|
||||||
|
evaluate_single = false,
|
||||||
|
|
||||||
|
-- Items to be displayed. Should be an array with the following elements:
|
||||||
|
-- - Item: table with <action>, <name>, and <section> keys.
|
||||||
|
-- - Function: should return one of these three categories.
|
||||||
|
-- - Array: elements of these three types (i.e. item, array, function).
|
||||||
|
-- If `nil` (default), default items will be used (see |mini.starter|).
|
||||||
|
items = nil,
|
||||||
|
|
||||||
|
-- Header to be displayed before items. Converted to single string via
|
||||||
|
-- `tostring` (use `\n` to display several lines). If function, it is
|
||||||
|
-- evaluated first. If `nil` (default), polite greeting will be used.
|
||||||
|
header = nil,
|
||||||
|
|
||||||
|
-- Footer to be displayed after items. Converted to single string via
|
||||||
|
-- `tostring` (use `\n` to display several lines). If function, it is
|
||||||
|
-- evaluated first. If `nil` (default), default usage help will be shown.
|
||||||
|
footer = nil,
|
||||||
|
|
||||||
|
-- Array of functions to be applied consecutively to initial content.
|
||||||
|
-- Each function should take and return content for 'Starter' buffer (see
|
||||||
|
-- |mini.starter| and |MiniStarter.content| for more details).
|
||||||
|
content_hooks = nil,
|
||||||
|
|
||||||
|
-- Characters to update query. Each character will have special buffer
|
||||||
|
-- mapping overriding your global ones. Be careful to not add `:` as it
|
||||||
|
-- allows you to go into command mode.
|
||||||
|
query_updaters = 'abcdefghijklmnopqrstuvwxyz0123456789_-.',
|
||||||
|
|
||||||
|
-- Whether to disable showing non-error feedback
|
||||||
|
silent = false,
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
require'nvim-treesitter.configs'.setup {
|
require'nvim-treesitter.configs'.setup {
|
||||||
-- A list of parser names, or "all" (the five listed parsers should always be installed)
|
-- A list of parser names, or "all" (the five listed parsers should always be installed)
|
||||||
ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "haskell", "go", "bash" },
|
ensure_installed = { "c", "lua", "vim", "vimdoc", "query", "haskell", "go", "bash", "python" },
|
||||||
|
|
||||||
-- Install parsers synchronously (only applied to `ensure_installed`)
|
-- Install parsers synchronously (only applied to `ensure_installed`)
|
||||||
sync_install = false,
|
sync_install = false,
|
||||||
|
|
Before Width: | Height: | Size: 11 KiB |
BIN
pictures/git.png
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 55 KiB |
Before Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 26 KiB |
BIN
pictures/trixy.jpg
Normal file
After Width: | Height: | Size: 86 KiB |
Before Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 60 KiB |
BIN
pictures/zen.png
Before Width: | Height: | Size: 82 KiB |