rework
38
README.md
|
@ -1,28 +1,19 @@
|
|||
|
||||
<p align="center">
|
||||
<img src="pictures/trixy.png" />
|
||||
<img src="pictures/trixy.jpg" />
|
||||
</p>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Trixy is a begginer friendy distro of NeoVim, that aims to be powerful while remaining minimal.
|
||||
|
||||
|
||||
## 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
|
||||
- `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
|
||||
- `veil` as a dashboard and startpage
|
||||
- `nvim-tree` for file tree view
|
||||
- `lsp-zero` as a language server setup, simply briliant
|
||||
- ...
|
||||
|
||||
|
||||
# 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.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# 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.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")
|
||||
local ui = require("harpoon.ui")
|
||||
-- REQUIRED
|
||||
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", "<leader>ma", mark.add_file)
|
||||
vim.keymap.set("n", "<leader>mm", ui.toggle_quick_menu)
|
||||
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)
|
||||
|
||||
-- main 4 files of harpoon jumping
|
||||
vim.keymap.set("n", "<C-h>", function() ui.nav_file(1) end)
|
||||
vim.keymap.set("n", "<C-t>", function() ui.nav_file(2) 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)
|
||||
-- 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)
|
||||
|
|
|
@ -3,9 +3,10 @@ require("plugins.treesitter")
|
|||
require("plugins.lsp-zero")
|
||||
require("plugins.devicons")
|
||||
require("plugins.lualine")
|
||||
-- require("plugins.harpoon")
|
||||
require("plugins.hlblocks")
|
||||
require("plugins.gitsigns")
|
||||
require("plugins.nvimtree")
|
||||
require("plugins.bufferline")
|
||||
require("plugins.wilder")
|
||||
require("plugins.mini")
|
||||
require("plugins.harpoon")
|
||||
|
|
|
@ -22,44 +22,17 @@ require("lazy").setup({
|
|||
|
||||
-- colorscheme
|
||||
"EdenEast/nightfox.nvim",
|
||||
"luckasRanarison/tree-sitter-hypr",
|
||||
-- 'nyoom-engineering/oxocarbon.nvim',
|
||||
'luckasRanarison/tree-sitter-hypr',
|
||||
|
||||
'lambdalisue/nerdfont.vim',
|
||||
'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
|
||||
"bkad/camelcasemotion",
|
||||
|
||||
-- very good file jumping system
|
||||
{
|
||||
"ThePrimeagen/harpoon",
|
||||
dependencies = "nvim-lua/plenary.nvim",
|
||||
version = "harpoon2"
|
||||
},
|
||||
|
||||
-- arbitrarily comment
|
||||
"tpope/vim-commentary",
|
||||
|
||||
"lewis6991/gitsigns.nvim",
|
||||
|
||||
-- like magit for emacs
|
||||
{
|
||||
"NeogitOrg/neogit",
|
||||
dependencies = "nvim-lua/plenary.nvim",
|
||||
config = true
|
||||
},
|
||||
|
||||
|
||||
-- for faster file navigation
|
||||
{
|
||||
"nvim-tree/nvim-tree.lua",
|
||||
|
@ -89,16 +62,14 @@ require("lazy").setup({
|
|||
|
||||
},
|
||||
|
||||
|
||||
-- Automagically close () "" and so on
|
||||
{
|
||||
'windwp/nvim-autopairs',
|
||||
event = "InsertEnter",
|
||||
opts = {} -- this is equalent to setup({}) function
|
||||
"ThePrimeagen/harpoon",
|
||||
branch = "harpoon2",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim"
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
-- better status line than stock one
|
||||
{
|
||||
"nvim-lualine/lualine.nvim",
|
||||
|
@ -129,7 +100,7 @@ require("lazy").setup({
|
|||
-- this is pure magic, i love this guy
|
||||
{
|
||||
"VonHeikemen/lsp-zero.nvim",
|
||||
branch = 'v2.x',
|
||||
branch = 'v3.x',
|
||||
dependencies = {
|
||||
-- LSP Support
|
||||
{"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.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 {
|
||||
-- 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`)
|
||||
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 |