Compare commits

...
795 Commits
Author SHA1 Message Date
c-my 4252f585a6 fix: move option "nvim_tree_indent_markers" to setup 2022-04-11 01:06:46 +08:00
Justin Perez 6061f9455d Typecheck return value of chadrc; propagate errors
* Don't blindly assume the only way `require "custom/chadrc.lua" can
  fail is that the file doesn't exist.
* Provide user with a more useful message when return value is wrong
2022-04-10 17:48:10 +05:30
guoliang 3d78ef3474 fix: insert mode nav shortcut 2022-04-10 17:46:16 +05:30
siduck 3585ae3dfd use better keybinds for spawning terms 2022-04-10 15:42:46 +05:30
justin-f-perez cbc813388d override default branch for bufferline
By default packer tries to use "master" for the branch of any plugin that doesn't have a branch explicitly defined. However, the bufferline authors recently renamed their default branch from "master" to main. Thus, packer will work fine with bufferline for any new clones, but it will fail to update for anyone who had the old branch name "master" set.

See also: https://github.com/wbthomason/packer.nvim/issues/86
2022-04-10 09:17:26 +05:30
zbirenbaum 4a888ad037 add float term mappings and config 2022-04-09 01:32:27 -04:00
zbirenbaum d7522a940d add disable option for statusline hide au 2022-04-09 08:49:19 +05:30
Arman.H b21defd4e4 refactor: remove unnecessary mapping 2022-04-07 21:57:11 +05:30
zbirenbaum 03563f30cc add new location option for chadterm 2022-04-02 14:33:45 +05:30
siduck 232b453c29 avoid using default mapping for copying 2022-04-01 19:36:29 +05:30
siduck af22bee84a use previous split ratio for horizontal term buffer 2022-04-01 13:06:14 +05:30
siduck bf89f0bf5f fix typo in mapping 2022-04-01 12:54:37 +05:30
siduck 63d54926a4 add mappings to spawn nobufflisted terms 2022-04-01 11:47:05 +05:30
siduck 4ca8d781cf add option to enable inbuilt plugins (#919) (#914) 2022-03-31 12:52:23 +05:30
zbirenbaum e328b86336 add terminal customizations options to default config 2022-03-31 06:51:36 +05:30
zbirenbaum 1face444b8 change plugin init to config terminal on load extensions, change mappings to use new chadterm 2022-03-31 06:51:36 +05:30
siduck b9e8f489ed add new readme badges for matrix and telegram 2022-03-28 21:20:14 +05:30
siduck 6e9c78d1af avoid using default keymap (#910) 2022-03-26 22:20:39 +05:30
tuberry 47e4f0361f fix: let hl_override be compatible with custom themes
load `hl_override` after the theme
2022-03-26 19:58:29 +05:30
tuberry ec5017126c feat: support themes other than defaults
Try to activate a theme if not presented in defaults. Accordingly,
add the option `ui.colors` to provide the missing `hl_theme*` in
the custom theme.
2022-03-26 16:00:31 +05:30
zbirenbaum 958a62bc67 fix nvimtree vim globals not having any effect 2022-03-24 21:28:11 +05:30
siduck 75dbf5027d fix dashboard not showing | (#888) 2022-03-20 07:30:30 +05:30
i3cheese 229ad7e00d Fix j -> gj mapping. 2022-03-19 11:27:11 +05:30
johnsiras ec274db8b2 Make the alpha override-abble. 2022-03-19 10:22:09 +05:30
Freyskeyd 4ad0bf1b22 Exposing on_attach to configure plugins in custom
Signed-off-by: Freyskeyd <simon.paitrault@gmail.com>
2022-03-13 18:33:51 +05:30
siduck f58c7e7b9e fix nvimtree opening half on file open (#606) 2022-03-12 08:39:16 +05:30
socialsmoker223 1278a3b703 Imporve luasnip Tab jump behaviour 2022-03-07 22:06:13 +05:30
Daniel Boll ef6ecab861 fix(null-ls): stop null-ls prompt for multiple formaters
add `client.resolved_capabilities.{document_formatting,document_range_formatting}` to on_attach of lspconfig in order to eliminate null-ls prompt for 2 formaters. Not tested with more formaters like in python, I'd say that then it'll prompt still

Signed-off-by: Daniel Boll <danielboll.academico@gmail.com>
2022-03-07 19:18:14 +05:30
siduck e1cdf92a01 clean nvimtree config
recently nvimtree had some updates regarding these options moving into the setup table of its config and these were the default ones so i removed it!
2022-03-02 14:43:29 +05:30
siduck ac392cd29b misc
cb531cd90b
2022-03-02 14:36:21 +05:30
siduck cb531cd90b shorten some long mapping vars, fix (#849)| fix (#836) 2022-03-01 12:43:34 +05:30
zbirenbaum 1777be0064 fix for treesitter not loading on creating new file 2022-03-01 08:00:21 +05:30
Ruben Verheyden 5ec6112a59 fix for (#844) Replace-paste at end of line incorrect 2022-02-27 18:25:06 +05:30
Jay Patel 0cf5d77f72 feat: Run :TSUpdate on TS Install / Update
https://github.com/NvChad/NvChad/pull/838

> TreeSitter recommends running `:TSUpdate` after update with TS or on (re-)installation of Treesitter. Reference example recommended by TS: https://github.com/nvim-treesitter/nvim-treesitter/wiki/Installation
2022-02-24 09:52:16 +05:30
Niclas 05e48656de Fix typo, become chadributor 2022-02-22 19:39:19 +05:30
zbirenbaum 76d194b141 fix for getting config settings from plugin table 2022-02-20 11:46:06 +05:30
siduck ceaf02e0bf replace dashboard with alpha.nvim (#816) 2022-02-20 11:44:43 +05:30
zbirenbaum c1e372e2cd fix autocmd breaking term plugins 2022-02-20 08:08:06 +05:30
siduck 9ca0af1a24 disable nvimtree hijack on buffers
https://github.com/kyazdani42/nvim-tree.lua/issues/992
2022-02-17 19:45:43 +05:30
zbirenbaum 4be722d4a6 fix global variable causing issues 2022-02-15 08:12:51 +05:30
siduck d9d380e41b clean example chadrc
Some of the recent issues have been caused when the user doesnt even have the custom.plugins file and requires it in chadrc i.e copies the example chadrc as it is without reading it, that results in chadrc not working at all
2022-02-14 16:15:39 +05:30
zbirenbaum f81531df42 improve method of adding and removing plugins 2022-02-14 16:11:41 +05:30
siduck a21e884983 remove snippet option for cmp | fix telescope first time delay 2022-02-12 07:31:23 +05:30
Felix Kratz ca481b1385 fix acid blue cursor 2022-02-11 06:57:48 +05:30
Akianonymus e7bba86ccf plugins/colorizer: Move to our org fork 2022-02-07 20:21:11 +05:30
siduck baaa7f0d4b fix (#793) 2022-02-06 10:16:32 +05:30
siduck 748f0db485 lazy load Comment.nvim on gcc keybind (#801) 2022-02-05 19:09:25 +05:30
siduck 7b7c204e23 correct repo name for extensions plugin 2022-02-04 22:19:06 +05:30
siduck f4c4d8f6c6 enable snippets by default 2022-02-04 22:17:10 +05:30
siduck 70baf718d2 clean highlights definitions 2022-02-04 12:19:16 +05:30
Akianonymus 46db63749f cmp: Add border to floating docs, move completeopt inside config
format files
2022-02-04 06:12:31 +05:30
Akianonymus 5a3ac7300d plugins/lspkind_icons: Add icon for TypeParameter 2022-02-04 06:12:31 +05:30
siduck 71295f9b61 re-add lspconfig capabilities 2022-02-02 22:26:04 +05:30
siduck 3ee787fe08 remove un-needed filetype option 2022-02-02 10:07:49 +05:30
socialsmoker223 2eab84f8f1 lunasnip super-tab like mapping example from hrsh7th/nvim-cmp 2022-02-01 18:56:33 +05:30
siduck d0ad028efc rm conflict in mappings
leader n for nummber line conflicted with leader nn
2022-01-31 14:31:21 +05:30
i3cheese 195f6f3621 Toggle relative numbers and copy to system clipboards mappings 2022-01-31 14:45:07 +05:30
siduck 1f73ef0ec6 clean remove_default_plugins function 2022-01-31 14:13:51 +05:30
Akianonymus 6b06bb9ed4 Remove duplicate code, missed in d8dabe9 | Format files 2022-01-31 11:13:31 +05:30
zbirenbaum d8dabe9e5e defer and restore shada 2022-01-31 10:40:36 +05:30
zbirenbaum bd98d76ad6 improve startup time with shada load deferral 2022-01-31 09:03:20 +05:30
zbirenbaum e87c10f225 fix for removals 2022-01-31 08:07:09 +05:30
zbirenbaum 4bda425371 added field for removing plugins to default config and call to plugin removal in init.lua 2022-01-31 07:08:15 +05:30
zbirenbaum 4b68a75853 added helper functions for removing plugins from default plugin table 2022-01-31 07:08:15 +05:30
i3Cheese a3a5b506de fix empty snippets 2022-01-31 06:21:33 +05:30
Akianonymus de246fa0f5 Resolve https://github.com/NvChad/NvChad/issues/774 | Format 2022-01-30 23:09:25 +05:30
siduck 64c32d2e5e clean packer config | Breaking change 2022-01-30 12:51:46 +05:30
siduck e8b31c9308 add impatient.nvim and filetype.nvim | improve startuptime 2022-01-29 23:02:23 +05:30
siduck 50aa25f307 remove duplicate var | tidy 2022-01-29 20:03:59 +05:30
siduck 0349de6d10 lazy load nvim-cmp if snippets are disabled 2022-01-29 19:59:59 +05:30
i3cheese 2a02054a39 Add config.plugins.status.snippets to enable/disable snippets 2022-01-29 19:59:59 +05:30
siduck ee5b79d3d4 fix (#740) | lazy load lspconfig on nvim_cmp_lsp module 2022-01-26 20:17:44 +05:30
siduck 20e8249efa fix typo in variable 2022-01-23 13:03:39 +05:30
siduck 4511b84d6c load lspconfig after cmp | fix (#740)
if cmp isnt lazy loaded then load lspconfig after it so cmp-nvim-lsp capabilities can be used by lspconfig
2022-01-23 12:54:15 +05:30
emincanozcan ddd13df5af Fix typo 2022-01-23 06:22:30 +05:30
siduck c2a1298ac0 fix error handling of custom/init.lua (#739) 2022-01-22 18:33:05 +05:30
Akianonymus b9fcaf610f plugins:lspconfig: Add module name to packer config
https://github.com/NvChad/NvChad/issues/730
2022-01-22 14:53:26 +05:30
Akianonymus bad06dc44f mappings: Allow to remove plugin mappings in chadrc
This enables us to disable a plugin mappings individually

for eg:
  M.mappings.plugins = {
      telelscope = {
          find_hiddenfiles = false
      }
  }

  This will disable the telelscope find_hiddenfiles mapping.

It's also helpful when we want to use the mapping used by find_hiddenfiles for something else
2022-01-22 14:53:26 +05:30
Akianonymus 4c85f25a09 init.lua: Print error message if custom init.lua cannot be called properly 2022-01-22 14:53:26 +05:30
Akianonymus b86ae3b170 configs/statusline: Fix extra space before git diff removed icon 2022-01-22 14:53:26 +05:30
siduck a0dd82a292 clean nvimtree config 2022-01-22 11:05:27 +05:30
zbirenbaum 4077ff3520 fixed chadrc string overrides calling default function parameter. Added ability to use function as config override 2022-01-22 10:15:38 +05:30
Akianonymus bccd8e4ab9 utils: Improve override functions | Fix nvimtree and statusline config |
Misc

* make more things configurable
* use more generic variable names
* handle some edgecases
* cleanup
* format files
2022-01-22 10:15:38 +05:30
zbirenbaum 82211ed829 updated init.lua requires to support new plugin default configuration format 2022-01-22 10:15:38 +05:30
zbirenbaum c3beea11ee Added support for modifying specific key values in default configs via chadrc to all plugin configurations with setup table(s) 2022-01-22 10:15:38 +05:30
zbirenbaum cf7f8a557a added helper function to support partial plugin config overrides via tables in chadrc 2022-01-22 10:15:38 +05:30
siduck 8f7b19f23b lazy load telescope module 2022-01-20 11:37:32 +05:30
Danilo Horta e6223cc587 Enable FastWrap capabilities: https://github.com/windwp/nvim-autopairs#fastwrap 2022-01-12 16:45:51 +05:30
siduck b1338beb0f add option to toggle lazy load for cmp and related 2022-01-11 18:43:09 +05:30
siduck a21ee2f22f clean | organize statusline config 2022-01-11 11:42:36 +05:30
zbirenbaum fa9f9aad0b rewrote statusline to be compartmentalized into named components and easier to understand/customize as a basis 2022-01-11 11:42:36 +05:30
siduck 8c2bbd2143 fix cursor bugging when using auto-completion #603 2022-01-11 06:14:32 +05:30
siduck e9b25e5912 rm un-needed lazy loading for comment.nvim
loading it with our lazy_load function would mean that it would load after the UI so using module=comment doesnt make any sense at all, so keeping only the module part would mean that this plugin would load on mappings that invoke comment.nvim functions
2022-01-10 06:32:27 +05:30
siduck 71b710b35b add option for packerInit | fix (#715) 2022-01-09 09:07:18 +05:30
David Stark ea6f2a1490 hotfix to :Telescope command flag order 2022-01-08 07:39:57 +05:30
David Stark 83ad616dd3 when finding all files via Telescope follow symlinks 2022-01-08 07:07:24 +05:30
Matt Bailey 6f65cffaa1 chore: add spell directory to gitignore 2022-01-08 07:06:04 +05:30
siduck 4e54ee0081 rm hooks 2022-01-07 19:58:05 +05:30
siduck 799432e99e load custom/init.lua at last | fix (#694) 2022-01-07 07:30:55 +05:30
siduck 0a546e4720 rm unused hook 2022-01-06 22:30:48 +05:30
siduck 4c88eaec49 readme badge : update nvim version 2022-01-04 06:44:45 +05:30
zbirenbaum 1e6f9a2e52 fix errors thrown by neovim no longer allowing implicit conversions of nil to 0 in api function calls. See neovim/neovim#16745 for details on why this is now an error 2022-01-04 06:39:27 +05:30
Dundar Göc 9d013a3529 chore: fix typos 2022-01-04 06:07:38 +05:30
siduck 9551ce7031 rm telescope-media-files.nvim!
it heavily relies on xorg so doesnt fully work on linux!, forget about macos,windows. Added a basic config doc for it here : https://nvchad.github.io/Extras#telescope-media-filesnvim
2022-01-01 17:30:42 +05:30
siduck abe720b881 remove telescope fzf-native.nvim plugin 2022-01-01 16:24:19 +05:30
Jorde Vorstenbosch edcf93ea81 docs: fix some old links
Change some old links that were linking to the old repo.
2021-12-31 20:21:47 +05:30
justin-f-perez e77be17fe6 fix typo in example_init.lua
"install_plugin" -> "install_plugins"
2021-12-29 06:48:08 +05:30
siduck de9b702f0e hide indentline on telescope preview window 2021-12-27 07:42:51 +05:30
ryanb-dev 688586eeec Telescope: Remove no_ignore option from find files
Prior to this change, searches through large repositories would include
files within the .gitignore, resulting in long search results and many
useless results.  This change results in find_files respecting
.gitignore and find_hiddenfiles instead being an exhaustive search over
all files within the current directory.
2021-12-27 08:05:07 +05:30
Akianonymus 331754a890 nvimtree: Load after nvim-web-devicons when lazy load disabled
this is necessary as nvimtree depends on nvim-web-devicons

follow up commit for a2d91ac
2021-12-26 10:44:30 +05:30
Akianonymus 60212005cb statusline: Refresh after BufRead too
sometimes events like BufEnter, BufWinEnter, etc are not enough for triggering a refresh, like opening nvim when nvimtree is not lazy load
2021-12-26 10:44:30 +05:30
siduck 19cb35d80e make nvimtree folder match its icon color 2021-12-25 10:57:25 +05:30
Akianonymus a2d91acc84 nvimtree: Allow changing lazy load from chadrc | Resolve https://github.com/NvChad/NvChad/issues/621
a packerCompile is needed after changin the config value in chadrc
2021-12-25 06:04:58 +05:30
boppyt 7be01383ab raise the minimum version to 0.6+ 2021-12-23 19:34:25 +05:30
Erasin ae90cca3f0 lua vim.diagnostic.setloclist 2021-12-23 18:43:49 +05:30
boppyt 344a9aa90c fix typo in feline repo 2021-12-23 05:53:37 +05:30
siduck e5435e93de update feline config (rename colors table to theme) 2021-12-22 22:35:16 +05:30
boppyt dbc95e41bf fix feline with new diagnostic api 2021-12-22 22:01:38 +05:30
siduck 3a966955d4 make lspconfig mappings compatible with nvim 0.6v 2021-12-22 18:05:07 +05:30
Danilo Horta 31e551af30 Make lspconfig mappings configurable. 2021-12-19 06:17:13 +05:30
siduck 1cd5150b70 update comment toggle mappings (#658) 2021-12-16 18:55:33 +05:30
Sravanth C f718060260 Rename esc_insertmode to better_escape
- change the plugin status name for better_escape
2021-12-16 18:37:24 +05:30
siduck abcd035e89 make lsphandlers overridable 2021-12-15 20:27:54 +05:30
siduck 01f652fcc4 hide nvimtree rootdir by default 2021-12-13 18:59:14 +05:30
siduck 7c9bf9cbe3 add some options for nvimtree 2021-12-12 08:49:40 +05:30
Akianonymus d2db2cc1cd plugin: Use Comment.nvim | Resolve #646 & #626 2021-12-11 22:54:59 +05:30
siduck 16d035c031 fix silly spelling mistake 2021-12-11 11:58:52 +05:30
Akianonymus 2293b16709 Cleanup | Format files
* fix some lint warnings
* remove some unneeded code
2021-12-11 11:58:52 +05:30
siduck 773d25980c fix blank telescope results title (#638) 2021-12-09 05:59:15 +05:30
siduck 52d4b564ba add more charity links ^^ 2021-12-08 22:37:22 +05:30
siduck 01babafd72 add option for fillchars 2021-12-08 12:30:16 +05:30
siduck 2a8afcb7b6 rm theme toggler config 2021-12-07 14:06:34 +05:30
siduck 27c33790ef Merge branch 'dev' 2021-12-07 13:50:54 +05:30
siduck fc593d0321 Delete format.yml 2021-12-07 14:05:58 +05:30
siduck ef6c1d4c27 Merge branch 'main' into dev 2021-12-07 13:50:39 +05:30
siduck 310d84d47f Merge branch 'main' into dev 2021-12-07 13:59:11 +05:30
Deneir Uy 97572ee1bb Fix LSP diagnostic icons 2021-12-07 13:51:49 +05:30
siduck 03d55e94a4 update highlights for lsp diagnostics 2021-12-04 23:06:07 +05:30
siduck 84c3a18fab include telescope highlights for transparency 2021-12-04 21:38:30 +05:30
siduck 6347a00023 add mapping, highlights for keybind cheatsheet | disable indentline in it 2021-12-04 21:04:04 +05:30
siduck 653a2f5337 add flat look to telescope | disable gitignore on nvimtree 2021-12-04 20:42:44 +05:30
siduck 9e8af5ad93 include NvimTreeNormalNC for transparency | add #608 2021-11-24 20:08:11 +05:30
siduck 067c6cc7fc Delete example_init.lua 2021-11-19 09:28:09 +05:30
siduck 7114ebd945 Delete example_chadrc.lua 2021-11-19 09:27:55 +05:30
siduck b4da490138 gitignore custom dir | add example configs 2021-11-19 07:44:06 +05:30
siduck 5c69d46dd6 rm unused config in nvimtree | include vim highlighting support by default 2021-11-19 07:17:09 +05:30
Daniel Cardona Rojas 07b4d19b8f feat(nvimtree): exclude terminal from window picker 2021-11-17 20:38:34 +05:30
siduck 3330d1cc06 clean up! 2021-11-17 11:00:57 +05:30
siduck aa9667a5de Revert "add cheatsheet.nvim"
This reverts commit e8b919723e.
2021-11-15 22:51:51 +05:30
siduck 1567a9c73a use tbl_deep_extend to merge configs | rm other functions 2021-11-15 21:39:35 +05:30
siduck e8b919723e add cheatsheet.nvim 2021-11-14 18:23:59 +05:30
siduck bdd6dc12c2 restructure | clean default_config 2021-11-14 12:43:36 +05:30
siduck 5db36d44fb restructure highlights.lua 2021-11-14 06:57:49 +05:30
siduck 8de3f4e84c restructure init.lua | lspconfig 2021-11-14 06:49:33 +05:30
siduck a256591e90 move plugin override function to utils | increase packer clone timeout 2021-11-13 23:07:20 +05:30
siduck b4c50fa443 misc change in override function 2021-11-13 22:26:38 +05:30
siduck c8a27d701c cleanup! 2021-11-13 21:59:31 +05:30
siduck fd668e559e add option for overriding highlights (#596) 2021-11-09 06:22:51 +05:30
siduck c5fe1f711e add : option to load autopairs sequentially (#584) 2021-11-05 20:04:52 +05:30
siduck 4b2bbe5d1c update configs for nvimtree and autopairs 2021-10-30 15:48:44 +05:30
bsmirks 01eec524be fixing broken links to chadtributors 2021-10-30 10:19:25 +05:30
bsmirks c7a36fe7d8 fixing broken links 2021-10-30 10:19:25 +05:30
bsmirks 69c0f38a7a fixing broken links 2021-10-30 10:19:25 +05:30
siduck76 2cf5fe7cea update screenshot links 2021-10-29 19:10:52 +05:30
siduck76 6e3e0bf029 fix luasnip incorrect path (#526) 2021-10-28 06:04:50 +05:30
siduck76 0e493bcacc add telescope title highlights 2021-10-27 12:10:13 +05:30
siduck76 068ae08f6c avoid using cmp disable var for autopairs (#567) 2021-10-22 05:47:35 +05:30
Andrew Balmos 67962828bb Add smartcase option 2021-10-22 05:47:54 +05:30
siduck76 56d05ac9d9 rm matchparen highlight (#557) 2021-10-21 14:21:50 +05:30
siduck76 003038b2a7 rm : doc lines from signature.nvim popups 2021-10-21 09:12:31 +05:30
siduck76 eefee5e17d clean config for inactive statusline 2021-10-17 11:28:47 +05:30
max397574 16a0c97fc9 fix: use better name for mapping 2021-10-16 21:26:30 +05:30
Akianonymus 9a45bb3f20 fix: Disabling shortline from chadrc
missed in https://github.com/NvChad/NvChad/commit/317eedd9b277b4457fbdfc6314e2cee955531c24

chore: format files
2021-10-14 11:08:23 +05:30
siduck76 1b4a67a1e1 nvimtree: disable updating cwd on focused files (#546) 2021-10-11 16:46:34 +05:30
siduck76 a24a65ab6b update : nvimtree diagnostic config 2021-10-11 09:55:44 +05:30
siduck76 fb9c54bc5d add: highlight color for NvimTreeNormalNC 2021-10-10 07:41:47 +05:30
Ay355 cb977a5313 fix: use of left/right arrow keys in insert mode
This allows the left and right arrows to move between lines in insert mode.
2021-10-09 17:45:12 +05:30
siduck76 1b44d4f2b9 add : highlight color for matchparen 2021-10-09 12:10:09 +05:30
siduck76 e8bbe1e4a1 Revert "update : capabalities cmp stuff in lspconfig | load cmp_lsp after lspconfig"
This reverts commit 86d92a2fd2.
2021-10-09 11:17:21 +05:30
siduck76 d221504482 add: cmp highlight groups 2021-10-09 10:03:49 +05:30
max397574 1ec9f80bdb fixed formatting 2021-10-09 10:23:10 +05:30
max397574 1af5510d03 fix cmp use correct function 2021-10-09 10:23:10 +05:30
max397574 8a426b9e62 fix cmp use new function 2021-10-09 10:23:10 +05:30
max397574 40554c80ad fix: new function to check for cmp completitions 2021-10-09 10:23:10 +05:30
peppapig450 5799af49e2 Fix another grammar mistake in example_init.lua 2021-10-08 05:43:10 +05:30
Sravanth C d47fcda9ef add: ttf, woff, woff2 icons 2021-10-07 06:25:28 +05:30
Sravanth C 5aa370e375 feat: robots.txt icon
- added robots.txt font glyph for nvim-web-dev-icons
2021-10-07 06:25:28 +05:30
peppapig450 7449c9e4f6 fix spelling/grammar in the example files 2021-10-07 06:23:42 +05:30
ashincoder e0ac314fab chore: Remove unsupported featurs from README.md 2021-10-06 21:09:53 +05:30
siduck76 86d92a2fd2 update : capabalities cmp stuff in lspconfig | load cmp_lsp after lspconfig 2021-10-05 06:59:00 +05:30
4a349a3b45 fix(CI): CI bug fixed | docs: Added charity contribution link (#532) (#533)
* fix: Fix stylua CI formatter | add charity link

Update format.yml

* chore: format with stylua

Co-authored-by: Ashin Antony <83629316+ashincoder@users.noreply.github.com>
Signed-off-by: Vladislav Doster <mvdoster@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-04 14:56:36 +05:30
Ashin Antonyandgithub-actions[bot] 7d5a15f7ce fix(CI): CI bug fixed | docs: Added charity contribution link (#532)
* fix: Fix stylua CI formatter | add charity link

Update format.yml

* chore: format with stylua

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2021-10-04 10:11:57 +05:30
ashincoder 6fb97be55c chore: Removed superLinter 2021-10-02 12:16:21 +05:30
Ashin Antony b2cd5e38f5 fix: fix issue #455.
1. Show line diagnostics have been changed to `ge`. Since there are keybindings starting with g. Also `ge` is fast very useful for this reason.
2021-10-02 12:16:21 +05:30
Akianonymus 2356ba069e fix: #501 | delay when use d in visual mode
only if copy_del = false
2021-10-02 12:13:56 +05:30
Akianonymus 585266dcef fix: Packer blank window on PackerSync 2021-10-02 11:24:14 +05:30
Akianonymus d810cc35a7 chore: format files 2021-10-02 11:24:14 +05:30
Akianonymus 317eedd9b2 feat: Make short statusline toggleable from chadrc 2021-10-02 11:24:14 +05:30
siduck76 a1c234e001 clean : debloat config | rm un-needed plugins 2021-10-02 10:41:50 +05:30
Nathan Wallace ba3af27de0 add config option to disable nvimtree 2021-10-02 08:30:14 +05:30
siduck76 bd1319895d rm : unused function in bufferline config 2021-10-02 07:52:46 +05:30
siduck76 cd9b2c4810 Revert "fix : packer blank window on PackerSync"
This reverts commit 9a2430132f.
2021-10-01 19:34:18 +05:30
siduck76 9a2430132f fix : packer blank window on PackerSync 2021-10-01 17:15:23 +05:30
siduck76 1c9b5b46e4 rm : outdated lspconfig in example_chadrc 2021-10-01 05:14:02 +05:30
github-actions[bot] bcb4b15669 chore: format source code 2021-09-30 04:23:09 +00:00
siduck76 1756c92609 refactor : separate lspconfig setups 2021-09-30 09:51:00 +05:30
siduck76 0b55d45845 rm neoformat plugin 2021-09-29 22:34:22 +05:30
Ashin Antony 5db8d84515 Update init.lua 2021-09-29 22:03:29 +05:30
siduck76 e137fddf6e add : cmp-path plugin 2021-09-29 18:16:43 +05:30
siduck76 5bf92c5246 chore : dont gitignore custom dir contents 2021-09-29 15:17:41 +05:30
Ashin Antony 3d7f0159f5 fix: Fixes telescope issue where requiring telescope module
this fixes the following issue https://github.com/nvim-telescope/telescope.nvim/issues/1276
2021-09-29 06:55:19 +05:30
siduck76 92a9e13e7c Update init.lua 2021-09-28 15:11:03 +05:30
github-actions[bot] 7cab4295ee chore: format source code 2021-09-28 15:11:03 +05:30
Ashin Antony 8726de1faa chore: Clean init.lua
Why do we have a table to require a single module. We had this when we had plugins, colors etc. 
But we only have one module now. So why bother a list and looping through for a single module ?
2021-09-28 15:11:03 +05:30
Jeevan Shah dc80ae5795 chore: Dev pr template (#495)
* chore: add pr templates

* Move title formatting and make speed optional
2021-09-27 23:01:45 +10:00
Galen Rowell 94b01be483 fix: default_config var plugin -> plugins instead 2021-09-27 13:41:31 +05:30
siduck76 f2a0051aa9 fix : clean nvim-tree config 2021-09-27 12:07:32 +05:30
siduck76 548e4e4a9d fix : typo of nvimtree size 2021-09-27 11:19:19 +05:30
github-actions[bot] 962c2bfe69 chore: format source code 2021-09-27 11:19:19 +05:30
Justin MacCarthy 1cd3faffb3 Moved more setting into the setup, in line with the changes in NvimTree 2021-09-27 11:19:19 +05:30
siduck76 cb3c5682a8 fix : make inactive statuslines as thin lines 2021-09-26 23:48:25 +05:30
Sravanth 98ec153e8f fix: ignore unwanted files custom dir
- since it's pointless to track user specific files, added the custom dir to the ignore list except for the example files.
2021-09-27 00:11:37 +10:00
Galen Rowell 54d5c13d38 docs: move the README & CONTRIBUTING to the '.github.' folder,
this will keep user's nvim configs cleaner,
this is specifically a GitHub standard, not base Git
2021-09-26 23:53:49 +10:00
siduck76 f65338092d feat : window title option 2021-09-26 18:47:12 +05:30
marvelman3284 5bb7cd3360 chore: add contributing.md 2021-09-26 23:33:06 +10:00
marvelman3284 d6e08ba2aa fix: Replace Website Link in README.md 2021-09-26 18:28:51 +05:30
siduck76 ac28a9f99e fix : shortline for small screens (#468) 2021-09-26 15:53:50 +05:30
siduck76 7051afe43c fix : update nvimtree config 2021-09-26 15:40:12 +05:30
siduck76 555f61493a fix : update image links 2021-09-26 09:57:33 +05:30
siduck76 a41ab8b830 fix : Add option to disable cmp (#482) 2021-09-26 07:21:07 +05:30
siduck76 8e0dfc1de6 fix : add path for luasnip snippets (#483) 2021-09-26 07:03:00 +05:30
siduck76 50a5bcc870 rm : vim-fugitive plugin 2021-09-25 23:11:59 +05:30
siduck76 2685ad8e30 fix : update nvimtree config 2021-09-25 22:11:27 +05:30
siduck76 e408a1168f feat: update conf for gitsigns | format stuff 2021-09-24 21:55:44 +05:30
siduck76 9e8fb9db74 feat: add overrides for more plugins | disable some by default 2021-09-24 20:47:53 +05:30
siduck76 a820c3cafd fix : typo in default_config.lua 2021-09-24 19:12:44 +05:30
siduck76 595be18680 feat : option to disable git status on nvimtree (#487) 2021-09-24 19:07:24 +05:30
siduck76 cc48bfb5c8 remove cheatsheet.nvim 2021-09-24 18:57:36 +05:30
github-actions[bot] 3d0a0e53f7 chore: format source code 2021-09-24 19:11:55 +05:30
Galen Rowell ee586047e5 feat: improve mappings, move custom/init.lua & chadrc.lua -> custom/example_init.lua & example_chadrc.lua 2021-09-24 19:11:55 +05:30
Galen Rowell 9961cc0113 refactor: clean & re-organise default_config + chadrc
this completely overhauls the design of the two configuration files,
aiming to move options & various tables into a more sensible table structure

BREAKING CHANGE: this will break any user modificiations to the current
config
2021-09-24 19:11:55 +05:30
Galen Rowell 80c8bf4243 feat: allow packaged plugin config overrides within chadrc 2021-09-24 19:11:55 +05:30
Galen Rowell a5a5a8220c refactor: clean & small reorgnaisation of default_config 2021-09-24 19:11:55 +05:30
Galen Rowell a5ae8899d5 fix: merge_tables bug caught 2021-09-24 19:11:55 +05:30
Morten Olsen eced5f2ec4 feat: Hook based overrides 2021-09-24 19:11:55 +05:30
Morten Olsen bfc10e6034 feat: Add custom scripts and hook based setup
This commit introduces a hook system that allows the user to add custom
modules which can use these hooks to invoke function af specific NvChad
events to allow for extending og functionality
2021-09-24 19:11:55 +05:30
Galen Rowell ca1ad15ad2 refactor: Cleaning chadrc, moved to custom & moved default_config to core 2021-09-24 19:11:55 +05:30
siduck76 22f89cfeef Revert "remove cheatsheet.nvim for now"
This reverts commit f3fe3d46c8.
2021-09-24 18:31:42 +05:30
siduck76 f3fe3d46c8 remove cheatsheet.nvim for now 2021-09-24 18:22:04 +05:30
siduck76 0b30ed27d5 replace better-escape.vim with better-escape.nvim 2021-09-22 21:26:30 +05:30
github-actions[bot] 1658bf9fc6 chore: format source code 2021-09-19 14:36:13 +00:00
ayushjaipuriyar21@gmail.com c84f3cd6cf ignore node_module folder in telescope 2021-09-19 20:05:58 +05:30
Ay355 31d605608f docs: fix grammer in README 2021-09-18 11:43:03 +05:30
github-actions[bot] 1b2473bb9c chore: format source code 2021-09-17 13:06:32 +00:00
siduck76 62538e0b37 clean dashboard config 2021-09-17 18:15:06 +05:30
siduck76 61b6eda6af add light theme in theme toggler 2021-09-16 14:20:13 +05:30
siduck76 a52382c6fa fix dashboard ascii spacing 2021-09-14 23:47:37 +05:30
siduck76 256ba205e1 rm un-needed separator from statusline 2021-09-14 09:31:48 +05:30
siduck76 67e1038b59 update felin.nvim config 2021-09-11 11:07:04 +05:30
mxzel d0980b7109 fix typo 2021-09-10 21:06:13 +05:30
siduck76 cafd078e8f fix esc_insertmode settings not getting applied in chadrc (#422) 2021-09-10 16:21:54 +05:30
siduck76 4fcf9524ee rm lspinstall from readme 2021-09-10 16:34:06 +05:30
siduck76 4c025cd1bf debloat config | remove lspinstall 2021-09-10 15:40:54 +05:30
bruhtus 14f0460317 Remove duplicate nvim-tree images in readme 2021-09-09 17:20:10 +05:30
siduck76 2309f7c249 Update statusline.lua 2021-09-09 08:45:15 +05:30
Akianonymus 85117ef95e statusline: feline: Use default git provider
now it handles dirs too

https://github.com/famiu/feline.nvim/commit/092442db0c7eb6087f0ae2cbeb776781bcc16176
2021-09-09 08:45:15 +05:30
siduck76 f73ba68c08 move highlight themes to base16 repo 2021-09-09 08:10:12 +05:30
Ashin Antony 3d6d429793 feat: Move treesitter branch to compat-0.5
If you want to use this plugin with Neovim 0.5, please use the 0.5-compat branch. Be aware though that most improvements will require neovim nightly.
https://github.com/nvim-treesitter/nvim-treesitter
2021-09-09 07:15:31 +05:30
siduck76 fe84f3952d add onejelly theme 2021-09-08 19:03:29 +05:30
siduck76 d53761839d use pretty colors for jellybean theme 2021-09-08 17:56:54 +05:30
boppyt 8056b07cdc use jellybeans colors for bg 2021-09-08 16:48:28 +05:30
boppyt f6f13908fc jellybeans: increase overall readability 2021-09-08 16:48:28 +05:30
boppyt 5c22354817 fix jellybeans theme 2021-09-08 16:48:28 +05:30
boppyt 094ad61785 add jellybeans theme 2021-09-08 16:48:28 +05:30
boppyt ddb11c6bc1 add lfgruv theme 2021-09-07 22:06:56 +05:30
Kyle daa05d6688 add: collapsible sections 2021-09-07 16:18:40 +05:30
Kyle 72812acb76 revert: Support section but with better wording 2021-09-07 16:18:40 +05:30
Kyle 62fc276f8c add: plugin developers to support section 2021-09-07 16:18:40 +05:30
Kyle b515097dce fix: chadrc 2021-09-07 16:18:40 +05:30
Kyle 803143c2e9 add: collapsible themes, support refactor 2021-09-07 16:18:40 +05:30
Kyle 562a3b2824 refactor: warning, bloat & previous things 2021-09-07 16:18:40 +05:30
Kyle fed72bd15d add: links to features section 2021-09-07 16:18:40 +05:30
siduck76 f016bf634e fix lazyloading for autosave.nvim 2021-09-07 15:18:33 +05:30
github-actions[bot] 299ce1cde3 chore: format source code 2021-09-07 10:00:34 +00:00
Marco Mayer 1107be6417 Update feline config to new format 2021-09-07 15:30:18 +05:30
VULKAN 2ac6931c69 Auto close Nvimtree incase of quitting last buffer 2021-09-07 14:46:34 +05:30
curtain 9ee56ce229 use_lspsaga deprecated, see lsp_signature upstream commit 2021-09-07 08:56:27 +05:30
siduck76 d1777dfbdf load friendly-snippets before nvim-cmp 2021-09-07 07:07:39 +05:30
siduck76 0fece65c3f update readme 2021-09-04 17:07:36 +05:30
siduck76 53b7498d64 remove un-needed config 2021-09-04 16:59:19 +05:30
siduck76 5c71f1421b chadify blossom theme colors 2021-09-03 20:28:12 +05:30
github-actions[bot] 98b531682e chore: format source code 2021-09-03 13:57:49 +00:00
Dazai-san 472fab40cf fixed & cleaned blossom theme 2021-09-03 19:27:35 +05:30
Dazai-san 69718c7138 added bunny's blossom theme
adding rayes0's(githubname) blossom theme
2021-09-03 18:27:35 +05:30
Matthew Wareing 13abea4340 Update README.md
Lua should be stylized with a capital L, see: https://www.lua.org/about.html What's in a name?
2021-09-03 05:31:55 +05:30
siduck76 287b4bae9a fix typo in blankline config 2021-09-02 16:16:19 +05:30
siduck76 ba6592c4a9 use better colors for vertsplit/statuslineNc 2021-09-02 13:41:43 +05:30
siduck76 873b846d50 disable dashboard by default 2021-09-02 09:45:28 +05:30
siduck76 5742567630 avoid using globals in blankline config 2021-09-02 08:45:05 +05:30
siduck76 19e17eac58 add uwu theme 2021-09-01 19:03:34 +05:30
siduck76 a3e436d16d update blankline config 2021-09-01 10:09:02 +05:30
Marwan Mustafa ec7b15fead fix(plugin): indentline using config instead of setup 2021-09-01 09:51:09 +05:30
github-actions[bot] a125c388c3 chore: format source code 2021-08-31 19:02:03 +00:00
Prescott Murphy 2cf3e2cac5 Set colors for lsp diagnostics
Fixes a small issue with coloring when `diagnostics = "nvim_lsp"` is set to enhance color consistency.
2021-09-01 00:31:48 +05:30
mxzel a12455509b fix typo 2021-08-31 21:09:01 +05:30
siduck76 56ea1714f6 fix packer compile spam on startup (#325) 2021-08-30 11:48:52 +05:30
siduck76 ad35d6b6e2 use the default close_icon in bufferline 2021-08-30 11:40:58 +05:30
siduck76 e1dfaa7a45 add default config for nvim-colorizer 2021-08-30 05:54:31 +05:30
siduck76 60db2ec626 disable some plugins by default 2021-08-29 12:20:15 +05:30
JoakoV3 7ddd394172 Changed mappings to move between windows/terminals with Ctrl+h,j,k,l 2021-08-29 10:42:15 +05:30
siduck76 28015f639c change keys for lsp signature help mapping 2021-08-29 10:04:50 +05:30
siduck76 146c0ed54f improve aquarium theme colors 2021-08-29 10:01:41 +05:30
Frenzy 1dacbeb462 Added Aquarium 2021-08-29 09:46:28 +05:30
siduck76 df9a780846 change mapping keys for nvimtreefocus 2021-08-29 08:07:02 +05:30
siduck76 5db010e870 mv luasnip config to others.lua 2021-08-28 09:39:38 +05:30
siduck76 d5f4c04424 add original gruvbox theme 2021-08-28 06:48:51 +05:30
siduck76 2efac1cd67 add original nord theme | rename norchad 2021-08-28 06:22:26 +05:30
Akianonymus e800122b45 plugins/configs/cmp: Enclose in pcall 2021-08-27 18:23:48 +05:30
Akianonymus d90747415f plugins/configs/statusline: Fix branch seperator 2021-08-27 18:23:48 +05:30
Akianonymus cdf9250636 Hide statusline in help too 2021-08-27 18:23:48 +05:30
siduck76 6b31861aeb remove custom area from bufferline 2021-08-27 16:00:44 +05:30
ashincoder b63e1502a5 fix: Fixing the luasnip error while tabbing 2021-08-27 15:23:20 +05:30
Ashin Antony 57d0714362 format on pushes only not PR's. 2021-08-27 14:09:02 +05:30
siduck76 0e09c3f471 rm extra space from statusline icons 2021-08-27 13:48:04 +05:30
Akianonymus 2c33e3dd38 mappings: Fix strange delete/yank/cut behaviour | Resolve #379
use mode() to detect if currently in operator pending mode, if then use normal j otherwise gj
2021-08-27 10:20:57 +05:30
Akianonymus a1c103b6a8 lsp: Reload current buffer after startup
so lsp aftually starts for the current buffer, rest buffers are fine
2021-08-27 10:20:57 +05:30
siduck76 97e155f3a2 use nerdfont glyphs for lsp progress spinners 2021-08-27 09:58:54 +05:30
Ashin Antony f7ff16e84e Update format.yml
A document of yaml must not have a indent in the start of the line.
2021-08-27 09:39:21 +05:30
siduck76 130b2bfe00 Update format.yml 2021-08-27 09:16:10 +05:30
ashincoder 828217b9da feat: Added gh action formatter 2021-08-27 09:01:59 +05:30
siduck76 c87482f107 lazy load luasnip after cmp 2021-08-27 08:11:46 +05:30
siduck76 647c3730ae clean up 2021-08-27 07:56:44 +05:30
siduck76 253047747a remove lspkind 2021-08-27 07:53:06 +05:30
siduck76 475a4c5f38 replace compe with cmp 2021-08-27 06:44:58 +05:30
Prescott Murphy 59ec5a5fed Correct bufferline diagnostics alternate setting
Tiny change: the correct setting is `nvim_lsp` with an underscore, not a hyphen.

https://github.com/akinsho/bufferline.nvim#lsp-indicators
2021-08-27 06:00:34 +05:30
siduck76 3c7de7a890 keep chadreload on hold for now 2021-08-26 22:59:05 +05:30
siduck76 e107e1aaf7 add space between lsp text/icon in statusline 2021-08-26 20:07:48 +05:30
Akianonymus 4e645c3c9f mappings: Change reload_config function name
changed in nvchad/extensions repo
2021-08-26 19:41:27 +05:30
Akianonymus 780142b150 plugins/configs/bufferline: Use a more unique func name quit all, to avoid conflicts
format file
2021-08-26 19:41:27 +05:30
Akianonymus adf0168dcc plugins: More lazy load, yay
use vim.defer_fn to load the plugins after entering the ui

add the lazy load to setup

lazy load gitsigns, neoscroll, lspinstall and vim-matchup using this method

rearrange according to startup sequence
2021-08-26 19:41:27 +05:30
Akianonymus 66de975543 plugins/configs/statusline: Fix % icon for page position 2021-08-26 19:41:27 +05:30
Akianonymus af597372ec plugins/configs/statusline: Remove extra space in lsp indicator 2021-08-26 19:41:27 +05:30
ee981f4f4a plugins/configs/statusline: Fix git branch not appearing without opening files
* the default provider given by feline uses gitsigns which only updates when a file is opened

* code taken from: https://github.com/hoob3rt/lualine.nvim/blob/master/lua/lualine/components/branch.lua

* use gitsigns var when available

Co-authored-by: Famiu Haque <famiuhaque@gmail.com>
Co-authored-by: hoob3rt <pelczarskihubert@gmail.com>
Co-authored-by: Shadman <shadmansaleh3@gmail.com>
2021-08-26 19:41:27 +05:30
siduck76 8a21e73cc5 avoid using q! for quitting vim 2021-08-26 16:28:21 +05:30
siduck76 8f733755e8 add clickable btn for exiting nvim 2021-08-26 15:01:48 +05:30
ashincoder 80b632ee95 feat: Added lsp radial progress 2021-08-26 14:05:02 +05:30
siduck76 2f2389a31b statusline add lsp status 2021-08-26 10:59:37 +05:30
siduck76 21b2680e56 Merge branch 'main' of github.com:NvChad/NvChad 2021-08-26 10:48:17 +05:30
ashincoder 7d8f6b85c7 feat: Load lspkind on insert event. 2021-08-26 10:51:16 +05:30
siduck76 80d36cca00 move to feline.nvim 2021-08-26 10:48:13 +05:30
siduck76 9635b45404 clean mappings conf 2021-08-25 20:13:47 +05:30
ashincoder c02b1a063f feat: Added cmd for ChadReload 2021-08-25 20:10:23 +05:30
Akianonymus 9b4b288d01 utils: load_config: Use filereadable to check if file exists 2021-08-25 11:41:15 +05:30
Akianonymus 753f144d3f packerInit: Print error on clone failed 2021-08-25 11:41:15 +05:30
Akianonymus 1b2ec94b75 feat: Add copy_del and copy_cut options to config 2021-08-25 11:41:15 +05:30
Akianonymus 49216a9c93 feat: Support for custom user mappings | Improve map function
move map function to utils

rearrange utils, was missed
2021-08-25 11:41:15 +05:30
siduck76 4828cfd282 add mapping for finding hidden files with telescope (#360) 2021-08-25 05:36:44 +05:30
siduck76 3dc1db884c disable some plugins by default 2021-08-25 05:11:55 +05:30
siduck76 c66fb4ff3d add diagnostics options to bufferline/nvimtree 2021-08-24 21:15:05 +05:30
siduck76 cd5433d24b fix incorrect bg in tokyonight theme 2021-08-24 15:58:33 +05:30
siduck76 bf3e9a323f make gitsigns plugin load on dir containing .git only 2021-08-24 15:37:38 +05:30
ashincoder 2f61dbfcd8 feat: Added border for lsp hover doc 2021-08-24 13:32:11 +05:30
siduck76 7d74ca4767 use default lspconfig 2021-08-24 11:01:01 +05:30
Galen Rowell a3dbef5872 fix statusline bug, handle all Vim modes 2021-08-24 10:43:43 +05:30
Cam Cope bce7e624e2 Add LSP code action mappings
Tested with rust-analyzer
2021-08-24 09:27:21 +05:30
Noah Lidell fba26a3a40 commands to load fugitive 2021-08-24 09:05:06 +05:30
Kévin Dunglas 09f6c4c067 fix: don't hide dot files by default 2021-08-23 20:45:53 +05:30
siduck76 6fbb503a16 use ascending sorting : telescope (#346) 2021-08-23 17:15:29 +05:30
siduck76 ac83f1d580 add mapping to focus nvimtree (349) 2021-08-23 16:44:52 +05:30
siduck76 b2ec48ef30 avoid using global function : lspconfig 2021-08-23 16:06:02 +05:30
Charlie Strawn 49c809b6be fix contribute link in readme 2021-08-23 09:49:09 +05:30
Nicolas Dermine a65368aed9 fix typo 2021-08-23 00:30:28 +05:30
Niels Mentink f97490d179 Added a command to quickly spin up a working NvChad docker container 2021-08-22 20:12:12 +05:30
Akianonymus bf3d4b31a6 Missed in previous commit 2021-08-22 17:58:48 +05:30
Akianonymus a28a838c06 NvChad/core -> Nvchad/extensions 2021-08-22 17:54:10 +05:30
Akianonymus a82f71334f telescope-media: Check if ueberzug is available before loading the extension 2021-08-22 17:54:10 +05:30
Akianonymus ef40dfcbc1 plugins: Properly lazy load telescope
from packer docs

module = string or list      -- Specifies Lua module names for require. When requiring a string which starts
                               -- with one of these module names, the plugin will be loaded.
2021-08-22 17:54:10 +05:30
Akianonymus 3ee3b0368a config: Seperate plugin and non-plugin configs 2021-08-22 17:54:10 +05:30
Akianonymus e08a460543 config: Expose tabstop option 2021-08-22 17:54:10 +05:30
Akianonymus aa95c05179 Remove some unneeded events when hiding statusline
dunno why cmdwinenter was there

term enter is not needed as it will handled with Buf events

use filetype events as a buffer may not trigger other events but change
the filetype
2021-08-22 17:54:10 +05:30
Akianonymus 3719521d9a Disable statusline in dashboard
need here because out custom statusline hide function doesn't care about dashboard settings
2021-08-22 17:54:10 +05:30
Akianonymus e1d0678f6e mappings: Add PackerClean command 2021-08-22 17:54:10 +05:30
Akianonymus 9ffddb6b52 Restructure config | Move some to a packer plugin | Lot of cleanup
* move teleacope files, updater and related utils to
  https://github.com/NvChad/core

* restructure config file and directory structure

* expose mappings for better escape

* allow multiple mappings for some

* improve merge table function for the same

* move autocommands to a seperate file

* rearrange everything alphabetically where sanely possible

* rearrange packer plugin list on the basis of trigerred state

config structure now

 .
├──  init.lua
├──  LICENSE
├──  lua
│  ├──  chadrc.lua
│  ├──  colors
│  │  ├──  highlights.lua
│  │  ├──  init.lua
│  │  └──  themes
│  │     ├──  chadracula.lua
│  │     ├──  everforest.lua
│  │     ├──  gruvchad.lua
│  │     ├──  javacafe.lua
│  │     ├──  mountain.lua
│  │     ├──  norchad.lua
│  │     ├──  one-light.lua
│  │     ├──  onedark.lua
│  │     ├──  tokyonight.lua
│  │     └──  tomorrow-night.lua
│  ├──  core
│  │  ├──  autocmds.lua
│  │  ├──  init.lua
│  │  ├──  mappings.lua
│  │  ├──  options.lua
│  │  └──  utils.lua
│  ├──  default_config.lua
│  └──  plugins
│     ├──  configs
│     │  ├──  autopairs.lua
│     │  ├──  autosave.lua
│     │  ├──  bufferline.lua
│     │  ├──  chadsheet.lua
│     │  ├──  compe.lua
│     │  ├──  dashboard.lua
│     │  ├──  gitsigns.lua
│     │  ├──  icons.lua
│     │  ├──  lspconfig.lua
│     │  ├──  luasnip.lua
│     │  ├──  nvimtree.lua
│     │  ├──  others.lua
│     │  ├──  statusline.lua
│     │  ├──  telescope.lua
│     │  ├──  treesitter.lua
│     │  └──  zenmode.lua
│     ├──  init.lua
│     └──  packerInit.lua
└──  README.md
2021-08-22 17:54:10 +05:30
ashincoder 44ae0178f4 Change dest of bufferline since commit https://github.com/akinsho/bufferline.nvim/commit/720555e 2021-08-22 13:04:41 +05:30
Pablo Acuña ce5d33a93b Fix installation link 2021-08-22 09:13:51 +05:30
siduck76 dceb6a70d4 rm mappings var from bufferline conf 2021-08-21 17:36:55 +05:30
siduck76 7a06fbb0be disable autocwd by default 2021-08-21 17:19:11 +05:30
siduck76 18705c4da4 fix plenary.nvim not installed (#307) 2021-08-21 15:45:24 +05:30
siduck76 c60df482e9 open dir with nvim (#316)
opening dir with nvim will work by default but since we have lazy loaded nvimtree , it doesnt update the cwd in nvimtree. This will fix that.
2021-08-21 13:57:15 +05:30
siduck76 83992378a4 treesitter : keep only lua parser installed by default 2021-08-21 11:28:25 +05:30
siduck76 cbb0ddc0a5 clean lspconfig 2021-08-21 11:23:20 +05:30
siduck76 b5668a037a avoid setting root_dir for lspservers 2021-08-21 11:04:07 +05:30
siduck76 6206a9e27b rm popup.nvim 2021-08-20 23:20:12 +05:30
siduck76 513a279788 format charity links 2021-08-20 22:03:25 +05:30
siduck76 aca4353902 Replace personal donate links with charity stuff
Many have contributed to NvChad , I would feel very bad if I get the all the donation alone. So I removed links for my paypal , buy my a coffee etc and replaced it with some gofundme links.
2021-08-20 22:02:41 +05:30
ashincoder b57cb6cdc0 fix: fixed error of statusline. 2021-08-20 16:49:32 +05:30
Akianonymus b817c55542 mappings: Close buffer -> leader+x | Resolve #6
move theme toggle to leader+tt
2021-08-20 16:27:29 +05:30
Akianonymus 4c04160b87 dashboard: Fix alignment 2021-08-20 16:27:29 +05:30
Akianonymus e15e79b519 options.lua: Merge the TermOpen autocommands 2021-08-20 16:27:29 +05:30
Akianonymus 1f6dbed26b Improve hiding/showing statusline via config 2021-08-20 16:27:29 +05:30
Galen Rowell dbf0b56059 quickfix for not properly closing unlisted buffers, should be revised again 2021-08-20 13:02:52 +05:30
Galen Rowell fd5d50f194 fix Dashboard docs, fix default_config issue 2021-08-20 09:29:13 +05:30
Akianonymus 3ccd804da9 utils/update_nvchad: Use --rebase instead of --ff-only 2021-08-20 01:00:46 +05:30
Akianonymus 5fab35f2e1 utils/load_config: Implement force reload of config 2021-08-20 01:00:46 +05:30
Akianonymus f7d2bacb51 Fix theme switcher statusline reload 2021-08-20 01:00:46 +05:30
siduck76 d84b2d5ee1 Merge branch 'main' of github.com:NvChad/NvChad 2021-08-20 00:28:53 +05:30
siduck76 44182c0ca1 1.0v screenshots! 2021-08-20 00:40:45 +05:30
siduck76 89c371397f better colors 2021-08-20 00:28:42 +05:30
siduck76 06c324a1a7 Update README.md 2021-08-19 22:28:55 +05:30
siduck76 2c0a094442 Update README.md 2021-08-19 21:08:47 +05:30
Dhruv Jain b97d9a8f85 Very minor typos in plugin sections 2021-08-19 18:38:27 +05:30
Dhruv Jain 3ec8c80abe Fix typos in Feature section 2021-08-19 18:38:27 +05:30
Dhruv Jain 9b719a6db6 Fix typos in Bloat section 2021-08-19 18:38:27 +05:30
Dhruv Jain 6bfd2043e8 fix typos in TODO section 2021-08-19 18:38:27 +05:30
godspeed-x df00e8ba51 link image to nvchad's contributor page 2021-08-19 18:38:27 +05:30
siduck76 47ab9c28a1 add no buffer icon to statusline 2021-08-19 18:13:58 +05:30
ashincoder a49f62d3c6 feat: Added option for italic_comments 2021-08-19 18:05:54 +05:30
siduck76 112d3866a5 improve various theme colors 2021-08-19 17:44:48 +05:30
siduck76 5ae6fba20d make statusline more pretty 2021-08-19 17:35:24 +05:30
Akianonymus 7244492b36 utils/merge_table: Handle another edgecase 2021-08-19 16:52:46 +05:30
Akianonymus 224873b937 Missed in 67c6ec6 and 575dc10 2021-08-19 16:52:46 +05:30
siduck76 114d699fc5 change nvimtree rootfolder fg 2021-08-19 16:09:24 +05:30
siduck76 e75fbed322 disable transparency by default 2021-08-19 14:39:27 +05:30
siduck76 f10fb47637 add transparency option to user config 2021-08-19 14:36:49 +05:30
Akianonymus 880d4dc312 NvChadUpdater: Make update repo and url configurable | Improve logging 2021-08-19 14:19:12 +05:30
Akianonymus 4801ec86f1 Add NvChadUpdate command and shortcut for it
map leader+uu to it

summary of what it does:

first ask the user for confirmation and tell that the updater is gonna run git reset --hard in config repo and chadrc will be restored

take backup of chadrc in a lua string and locally in a file with chadrc.bak.(random numbers)

git reset on config dir and git pull

whether success or error, restore the chadrc file

if restore fails, then print backup file path

for more deep understanding, read the comments in utils.lua
2021-08-19 14:19:12 +05:30
Akianonymus 7753e03b9e feat: Do not depend on user config | Fix merging of configs
because it is a user config, so our config shoudn't break even we if dont have it

use our own table merge function

move loading config to a function

use a global variable to store the config, so no need to call the table function everytime
2021-08-19 14:19:12 +05:30
Akianonymus 02f0122ab4 mappings|init: Move init mappings to a function, only call when required | Show err message for init
because mappings.lua is called from multiple places, so there should't be any code that executes without calling a specific function

show error message when something fails in init.lua
makes no sense to not

rearrange plugin functions alphabetically, but keep misc at top
2021-08-19 14:19:12 +05:30
Akianonymus e3f0429a72 tree-wide: Format files
ugh why do people don't push formatted stuff
2021-08-19 14:19:12 +05:30
siduck76 6224ed6283 Revert "chore: update path_display (#285)"
This reverts commit 1d78add91e.
2021-08-19 13:24:35 +05:30
siduck76 32a6fd8d29 add statusline_style to chadrc 2021-08-19 12:38:50 +05:30
siduck76 aa8df57cae Revert "NvChad Updater | Chadrc Fixes | Cleanup and Formatting | Misc (#288)"
This reverts commit 36cb57ecce.
2021-08-19 12:36:01 +05:30
Aki 36cb57ecce NvChad Updater | Chadrc Fixes | Cleanup and Formatting | Misc (#288)
* tree-wide: Format files

ugh why do people don't push formatted stuff

* mappings|init: Move init mappings to a function, only call when required | Show err message for init

because mappings.lua is called from multiple places, so there should't be any code that executes without calling a specific function

show error message when something fails in init.lua
makes no sense to not

rearrange plugin functions alphabetically, but keep misc at top

* feat: Do not depend on user config | Fix merging of configs

because it is a user config, so our config shoudn't break even we if dont have it

use our own table merge function

move loading config to a function

use a global variable to store the config, so no need to call the table function everytime

* Add NvChadUpdate command and shortcut for it

map leader+uu to it

summary of what it does:

first ask the user for confirmation and tell that the updater is gonna run git reset --hard in config repo and chadrc will be restored

take backup of chadrc in a lua string and locally in a file with chadrc.bak.(random numbers)

git reset on config dir and git pull

whether success or error, restore the chadrc file

if restore fails, then print backup file path

for more deep understanding, read the comments in utils.lua

* NvChadUpdater: Make update repo and url configurable | Improvr logging
2021-08-19 12:33:11 +05:30
siduck76 623a2a0d1a default_config : add statusline separators style 2021-08-19 11:59:42 +05:30
siduck76 88ff5595ad Update README.md 2021-08-19 10:25:22 +05:30
Tuan Nguyen 1d78add91e chore: update path_display (#285) 2021-08-19 09:36:32 +05:30
siduck76 fdb2fa115d update readme 2021-08-19 08:40:08 +05:30
Galen Rowell f82b390aba make cheatsheet enabled by default (#281) 2021-08-18 19:31:02 +05:30
Galen Rowellandsiduck76 1fac41047d add a quick install section to NvChad & removed 2 showcase photos (#280)
* add a quick install section to NvChad & removed 2 showcase photos

* Update README.md

Co-authored-by: siduck76 <siduck13@gmail.com>
2021-08-18 19:05:51 +05:30
Galen Rowell fa965c9797 added relativenumber option & statusline option (#279) 2021-08-18 17:43:56 +05:30
siduck76 e663122638 add bg to Floating window 2021-08-18 15:25:58 +05:30
Galen Rowell 575dc10ddc Greatly improve terminal features! Persistent terminals (#275)
* remove toggleTerm plugin

* Adding term binds, term hider & Telescope terms to bring them back

* Adding many term features!
2021-08-18 15:43:35 +05:30
siduck76 51760c21f5 Add important notes for user , default config 2021-08-18 11:10:13 +05:30
siduck76 056fcb51f5 User config works 2021-08-18 00:33:37 +05:30
siduck76 b571fd9d40 test user config xD 2021-08-18 00:08:38 +05:30
Pocco81 0d35b9ddac feat: added default conf and deep extension capabilities (#269) 2021-08-18 00:02:48 +05:30
Aki 98086892a7 tree-wide: Format files | Reformat chadrc | Misc (#268)
chadrc: looks cleaner this way

move close buffer to misc as it is not dependent on buffer plugin
2021-08-17 23:21:10 +05:30
siduck76 29f3259c42 Update README.md 2021-08-17 20:13:58 +05:30
siduck76 9cee2c0921 Update README.md 2021-08-17 19:41:43 +05:30
siduck76 e25f30899d rename mountaineer 2021-08-17 19:13:03 +05:30
sprlptr48 9c3f9adb22 Fix wrong link in README (#266) 2021-08-17 18:40:41 +05:30
siduck76 cf4e0a2c53 fix plenary.nvim not loading (#256) 2021-08-17 12:12:33 +05:30
siduck76 00e76c72ec rm install script 2021-08-17 10:11:58 +05:30
siduck76 c62e94923a add mapping cheatsheet (#244) 2021-08-16 22:18:08 +05:30
siduck76 eaaefc236d add one-light (#243) 2021-08-16 19:04:09 +05:30
Galen Rowell 86903ab982 chore: stylua formatting update (#261)
* addded stylua config file

* chore: formatted with stylua
2021-08-16 13:19:09 +05:30
Aki 4abf43aa99 Fixes (#259)
* Missed in 154ba7d

* utils/change-theme: Check theme name for magic chars
2021-08-16 09:18:31 +05:30
siduck76 9c134872fb rename theme name 2021-08-16 08:57:25 +05:30
siduck76 aabc3e692f update tomorrow night theme name 2021-08-16 08:43:39 +05:30
siduck76 c251f88567 update nvim-base16 repo link 2021-08-16 08:14:16 +05:30
ashincoder 7b796294a4 refact: move false to true in plugins and change disable to 'not' so that the user does'nt be confused (#257) 2021-08-16 06:16:14 +05:30
siduck76 27031acd08 Update README.md 2021-08-15 13:22:41 +05:30
siduck76 49120177ce Update theme.lua 2021-08-15 01:10:05 +05:30
siduck76 154ba7d419 add theme toggler (#245) 2021-08-15 00:44:55 +05:30
ea0a221230 (feat) add filename edit/lock icons provider (#253)
* (feat) add filename edit/lock icons provider

* Update statusline.lua

Co-authored-by: Sage Baram <sagebaram@gamil.com>
Co-authored-by: siduck76 <siduck13@gmail.com>
2021-08-14 23:56:34 +05:30
siduck76 ebdcd4cae1 fix luasnip creating statusline errors (#250) 2021-08-14 22:35:10 +05:30
siduck76 05e587cfc0 Clean up utils 2021-08-14 22:32:32 +05:30
siduck76 e0feea9407 cleanup ! 2021-08-14 22:31:32 +05:30
Aki c656d6a3bd Fix theme switcher reload | Move reload_theme to utils (#252)
* rearrange functions in utils.lua alphabetically
2021-08-14 22:11:20 +05:30
Galen Rowell e80a6935d6 Now have 3 separate terms, window, vert & hori, renamed some variables (#251) 2021-08-14 19:28:24 +05:30
siduck76 c80d79a7cc set completeopt for compe 2021-08-14 18:12:28 +05:30
siduck76 59359943eb show chadributors in the readme 2021-08-14 16:12:44 +05:30
siduck76 fd2aa6095f improve nav_in insertmode (#240) 2021-08-14 13:44:28 +05:30
curtainandcurtain 2b331e7fa1 add some useful keymap in insert/command mode with switch to toggle (#240)
Co-authored-by: curtain <kaleidoscope@163.com>
2021-08-14 13:26:54 +05:30
siduck76 f805cb1cbd user_config : add option to disable telescope media plugin 2021-08-14 13:00:01 +05:30
Galen Rowell 91c8736146 WIP - Added toggleterm, based upon curtanips work (#237)
* Added toggleterm, based upon curtanips work
Also other various term fixes & changed term mappings

* new NvChad config to hide statusline by filetype
2021-08-13 21:29:17 +05:30
siduck76 3f44f0761a fix statusline missing after termclose (#236) 2021-08-13 13:17:41 +05:30
siduck76 c7fdd68072 statusline : add vimode colors 2021-08-13 12:12:43 +05:30
curtainandcurtain f832195a81 fix luasnip complete and move it to reasonable place (#235)
Co-authored-by: curtain <kaleidoscope@163.com>
2021-08-13 10:05:31 +05:30
siduck76 f884caa606 everforest theme : better dark color 2021-08-12 23:14:28 +05:30
siduck76 2884254afe add everforest theme (#219) 2021-08-12 23:10:00 +05:30
siduck76 0df87e4e72 fix telescope commands not working! (#230) 2021-08-12 22:23:43 +05:30
siduck76 a21ef38dc5 fix comment toggle mapping (#233) 2021-08-12 18:37:02 +05:30
siduck76 0efa21c9c9 add user_config 2021-08-12 17:28:03 +05:30
siduck76 d5c64d335e add chadracula theme 2021-08-10 20:09:55 +05:30
Iorvethe ae30324ed4 Add theme: Dracula (#225)
* Add theme: Dracula

* Dracula theme: make black2 lighter
2021-08-10 16:49:33 +05:30
Aki 0423da189c base16: Change syntax for new changes in base16 repo (#226) 2021-08-10 16:49:18 +05:30
siduck76 f22366eac9 truezen.nvim : update var 2021-08-09 21:30:17 +05:30
siduck76 62841e3dc2 update discord server invite link
the previous one expired after 7 days
2021-08-08 09:33:57 +05:30
siduck76 98e2957234 add mountaineer theme 2021-08-07 20:30:17 +05:30
ashincoder 605cbdf585 Merge for a clean repo (#220) 2021-08-07 17:49:57 +05:30
siduck76 b16e2bf29c load signature.nvim after lspconfig only
https://github.com/siduck76/NvChad/pull/218#issuecomment-894633359
2021-08-07 15:33:10 +05:30
ashincoder 2795ed4fb3 Added .gitignore and lazy load lsp_signature more (#218) 2021-08-07 15:24:31 +05:30
siduck76 ea992308f1 disable tilde on end of buffer 2021-08-07 11:48:13 +05:30
siduck76 d390966b4d disable indentline in packer float window 2021-08-07 11:42:56 +05:30
siduck76 d4193727bd add lsp-signature.nvim (#142) 2021-08-07 11:25:23 +05:30
siduck76 232bb5fd7c add tokyonight theme (#215) 2021-08-06 21:25:24 +05:30
Pocco81 ef16aa7f1c replaced 'bin/bash' with 'usr/bin/env bash' for better compatibility (#216) 2021-08-06 08:01:49 +05:30
siduck76 ccca491acd Merge pull request #214 from Pocco81/dev-script
Improvement and fixes:  improve install script.
2021-08-05 05:08:29 +05:30
Pocco81 9e7bec1198 changed nvchad_path 2021-08-04 17:19:38 -05:00
Pocco81 45bf74bc03 Merge branch 'main' into dev-script 2021-08-04 17:14:57 -05:00
Pocco81 c5fd109a2d done 2021-08-04 14:49:33 -05:00
Pocco81 af1aa860da remove and install cmds 2021-08-04 00:11:15 -05:00
Pocco81 a49c54fc41 refactor 2021-08-03 23:17:40 -05:00
Pocco81 acceccda87 accept both args and flags 2021-08-03 23:09:18 -05:00
Pocco81 bbbd73fc56 basic parser 2021-08-03 22:38:03 -05:00
siduck76 3ed108b4ea update todo 2021-08-04 08:39:43 +05:30
siduck76 927bde7187 Merge pull request #211 from Akianonymus/main
Theme switcher improvements | Packer Shenanigans
2021-08-03 11:41:05 +05:30
Akianonymus a25f4fca70 Just packer shenanigans 2021-08-03 09:38:50 +05:30
Akianonymus e0f1cb3687 theme_switcher: Handle some edgecases | Clear cmdline after default theme prompt 2021-08-03 09:00:29 +05:30
Pocco81 668f1d5623 skeleton for new install script 2021-08-02 21:23:20 -05:00
siduck76 6468de54c1 Create README.md 2021-08-02 07:10:08 +05:30
siduck76 0ea1bcb6f1 Update README.md 2021-08-02 07:10:02 +05:30
siduck76 f172cc8362 rm vim-startuptime 2021-08-02 06:48:11 +05:30
siduck76 021cf9c6f4 Merge pull request #201 from G-Rowell/dev-chadThemeSwitcher
Chad theme switcher
2021-08-01 10:35:08 +05:30
Akianonymus af783670e4 mappings: leader+th for Telescope themes 2021-08-01 15:04:04 +10:00
AkianonymusandGalen Rowell a6ab121d12 Implement theme switcher
using telescope picker

ask if want to change default theme, change value in user_config.lua

load it as a telescope extension

live preview of themes

Co-authored-by: Galen Rowell <growell3@gmail.com>
2021-08-01 15:04:04 +10:00
Akianonymus 7affb8cbfb Move from utils.lua to their respective places | Format all files 2021-08-01 15:04:04 +10:00
siduck76 12085f495c replace bufread event with bufenter ( lspinstall/lspkind ) 2021-08-01 10:09:51 +05:30
siduck76 5236893e5e add permanent undo (#197) 2021-08-01 09:55:28 +05:30
siduck76 8ac85a03af Create user_config.lua 2021-07-31 21:04:53 +05:30
siduck76 e9aa4b5234 Update user_config.lua 2021-07-31 21:04:47 +05:30
siduck76 bcbde0e1a2 add theme to user_config 2021-07-31 20:44:42 +05:30
siduck76 29f04fcc9d Merge pull request #199 from ashincoder/main
Added invite link
2021-07-29 15:48:06 +05:30
ashincoder 202c62a2d3 Added invite link
I've added the invite link of NvChad discord and Changed the badge alt name to discord
2021-07-29 15:32:28 +05:30
siduck76 5d1156ddb2 Merge pull request #195 from mmatongo/xdg
add XDG_CONFIG_HOME
2021-07-29 12:47:08 +05:30
Daniel M. Matongo 9ba08bf788 update _CONFIG_PATH 2021-07-29 05:27:08 +00:00
Daniel M. Matongo dcf5d64437 add XDG_CONFIG_HOME
I tried installing it on my system and it failed mostly because the NvChad was by default installed to the `.config` directory. I use a custom dir for my `XDG_CONFIG_HOME` so I figured if anyone has the same issue this would be an easy way to have it not work for them, the fallback dir here is `.config` if the user has not set a custom one.
2021-07-28 19:16:32 +00:00
siduck76 9089232ec7 Merge pull request #194 from ashincoder/main
Added Discord Badge
2021-07-28 21:48:09 +05:30
ashincoder d9c7a1b504 Added Discord Badge
Replaced gitter badge
2021-07-28 21:46:39 +05:30
siduck76 87f3415f6f Update mappings.lua 2021-07-28 19:53:19 +05:30
siduck76 f27f7b1502 add hl to nvimtree_rootdir 2021-07-28 19:18:03 +05:30
siduck76 f4d24e35ae Merge pull request #193 from G-Rowell/dev-fixTerm
fix mapping error
2021-07-28 18:45:41 +05:30
Galen Rowell 462a20d66a fix mapping error 2021-07-28 14:42:55 +10:00
siduck76 7f34fee4a4 Merge pull request #179 from vladdoster/patch-1
(maint): update conditional check and log message
2021-07-28 05:10:59 +05:30
vlad doster e197049a59 Merge branch 'main' into patch-1 2021-07-27 16:30:24 -05:00
siduck76 b49ba0a254 Merge pull request #187 from Akianonymus/main
statusline: Show lsp icon only if client is active for current buffer
2021-07-26 21:40:27 +05:30
Akianonymus 3f1e9cf37a statusline: Show lsp icon only if client is active for current buffer 2021-07-26 16:57:00 +05:30
siduck76 22ea576682 Merge pull request #186 from Akianonymus/main
Use jdhao/better-escape.vim | Allow moving the cursor through wrapped lines normally
2021-07-26 15:26:21 +05:30
G-Rowell 3b05354337 Use jdhao/better-escape.vim to handle jk as escape mappings
only for insert mode ( so also works on terminal too )

remove visual mode key binding, till we find a proper solution, because it is super annoying right now

Original pr here: https://github.com/siduck76/NvChad/pull/160
2021-07-26 15:14:49 +05:30
Akianonymus 268c37e52f mappings: Allow moving the cursor through wrapped lines normally
This doesn't affect any other stuff like 10j or 10k
2021-07-26 14:32:29 +05:30
siduck76 11d75cf597 better colors for javacafe theme 2021-07-25 14:53:43 +05:30
siduck76 33422b0f3a better colors for javacafe theme 2021-07-25 13:18:48 +05:30
siduck76 cf46fc09a5 Merge pull request #184 from JavaCafe01/javacafe-colorscheme
Added javacafe color scheme
2021-07-25 11:06:24 +05:30
gokul edbd88fdb7 Added javacafe color scheme
The javacafe color scheme is my custom smash of nord and pastel colors.
2021-07-24 16:43:38 -07:00
siduck76 9157cafb61 Update telescope.lua 2021-07-25 01:31:50 +05:30
siduck76 a31d8fb228 fix telescope media files mapping #183 2021-07-24 10:11:21 +05:30
siduck76 bdd63eeedc Delete nn.lua 2021-07-24 10:25:33 +05:30
siduck76 c98334ae08 lspconfig : update diagnostics in insert mode 2021-07-24 09:59:39 +05:30
siduck76 17b5336254 Merge pull request #181 from kilpkonn/vim-fugitive
Add git integration
2021-07-23 23:31:29 +05:30
Tavo Annus 021b5c07f5 Merge branch 'main' of github.com:siduck76/NvChad into vim-fugitive 2021-07-23 20:57:32 +03:00
siduck76 b0adf7a565 Merge pull request #180 from Akianonymus/main
Remove placebo async stuff | Replace startuptime plugin with actually working one | Do not load packer
2021-07-23 23:04:43 +05:30
Tavo Annus 472278f2e3 Add vim-fugitive plugin 2021-07-23 20:22:09 +03:00
Akianonymus 92eb5ca740 Do not load packer on startup
Actually saved some milliseconds, can be observed in benchmarks too

from packer readme

```
To optimize startup time, packer.nvim compiles code to perform the lazy-loading operations you specify. This means that you do not need to load packer.nvim unless you want to perform some plugin management operations.
```

Add packer commands manually to mappings.lua, but with basic functionalty

By this, we don't losr the packer commands and don't even load at startup

After some command is actually executed, it will load the PackerCommands as they were
2021-07-23 21:58:14 +05:30
Akianonymus 6b4435caef Don't use new_async
It doesn't seem to be improving stuff as it is not supposed to

Due to the half baked stats of the startuptime plugin, people were fooled

no point in disabling filetype and whatenot

See some discussion here: https://github.com/siduck76/NvChad/issues/175
2021-07-23 21:57:14 +05:30
Akianonymus 936f368036 Replace tweekmonster/startuptime.vim with dstein64/vim-startuptime
because it's broken now
2021-07-23 20:23:02 +05:30
siduck76 e01aafeea5 Merge pull request #178 from Akianonymus/main
install.sh: Use chsh instead of grep /etc/shells | init: Move bufferline config to pluginList | Misc improvements
2021-07-23 18:38:32 +05:30
siduck76 559acbd135 rm unneeded error landing
nvim by default shows stackrace path so I dont think we should be having this.
2021-07-23 18:17:31 +05:30
Akianonymus bb04ba07cb mappings.lua: Code style fixes | Cleanup options.lua 2021-07-23 18:15:13 +05:30
Akianonymus fcfb814594 init: Move bufferline config to pluginList.lua
plugins.bufferline should be as config of nvim-bufferline

and pluginList for packer
2021-07-23 18:14:52 +05:30
Akianonymus 3fc587b54d install.sh: Use chsh instead of grep /etc/shells 2021-07-23 18:07:30 +05:30
siduck76 766d52db12 Merge pull request #174 from G-Rowell/dev-terminalAndScript
Fix term crash bug, no auto-close finished term anymore
2021-07-23 18:04:59 +05:30
siduck76 f8727f1659 Update utils.lua 2021-07-23 18:03:04 +05:30
vlad doster 756713b9c3 (maint): update conditional check and log message
- Use more appropriate `-n` flag
- Reword log message
2021-07-23 04:17:57 -05:00
Galen Rowell 0d69a528a8 Fix statusline issue 2021-07-22 18:04:21 +10:00
Galen Rowell 652f703767 Fix term crash bug, no auto-close finished term anymore 2021-07-22 17:45:47 +10:00
siduck76 020daec5fc disable matchit
matchit was already disabled by default but a recent PR enabled it again , sorry for that! Since vim matchup already does what matchit does , I'll remove it.
2021-07-21 23:06:28 +05:30
siduck76 845ac0e615 Merge pull request #171 from Pocco81/dev-init
Securely call modules and disable all builtin plugin
2021-07-21 23:00:42 +05:30
siduck76 b54c4ca5de better error message 2021-07-21 23:00:19 +05:30
siduck76 fec301504f clean stuff 2021-07-21 22:37:48 +05:30
siduck76 c1544dd020 Merge pull request #170 from Pocco81/dev-lsp
Lang servers error suppression and better "publish diagnostics" glyph
2021-07-21 22:48:44 +05:30
siduck76 08dfe17678 clean stuff | map new tab 2021-07-21 11:26:25 +05:30
siduck76 f72c36f4ab Merge pull request #167 from G-Rowell/dev-terminalAndScript
Fix buffers/tab terminal issues, improve terminal install scripting
2021-07-21 10:02:51 +05:30
Pocco81 5531edf8e4 fix: formatted code with luafmt 2021-07-20 23:20:00 -05:00
Pocco81 355178a7bb feat: secure calls + disabled all builtin plugins 2021-07-20 13:19:31 -05:00
Pocco81 1e2d299bf9 feat: suppressed error messages from lang servers and added better glyph for publish diagnostics 2021-07-20 12:38:51 -05:00
Galen Rowell f35aa3c604 automatically close a terminal buffer if it has exited/returned 2021-07-20 20:18:10 +10:00
Galen Rowell 15f20e8437 better shell setup scripting 2021-07-20 19:41:50 +10:00
Galen Rowell a6ea40d7ba open default shell terminal with proper neovim commands, fix buffer tabline issue 2021-07-20 19:38:43 +10:00
Galen Rowell ff14ba61f9 open new buffers, instead of tabs 2021-07-20 19:36:06 +10:00
siduck76 665fa24783 Merge pull request #166 from Akianonymus/main
Fixes
2021-07-19 21:32:50 +05:30
Akianonymus 2e1d53971e install.sh: More automation 2021-07-19 20:35:10 +05:30
Akianonymus 2567ebaee4 telescope: Fix a bug introduced in 0023233
PackerCompile at the same time conflicts with packer sync because packer always runs in bg
2021-07-19 20:35:10 +05:30
siduck76 3669af3517 Merge pull request #165 from Akianonymus/main
Even faster startup time | Fix formatting | Misc
2021-07-19 08:54:01 +05:30
Akianonymus 1e658562f0 install.sh: Run PackerSync from script after install too
as the corresponding code for that was removed from init.lua
2021-07-19 07:20:22 +05:30
AkianonymusandVhyrro 6b507c3368 init: Asynchronously load filetype and syntax
lots of improvement for startup time

Co-authored-by: Vhyrro <vhyrro@gmail.com>
2021-07-19 07:20:22 +05:30
Akianonymus 0023233eef Fix formatting | Handle a edgecase in telescope config | Misc
* fix formatting in pluginList, luasnip

* don't use pcall on highlights

* sync and compile fzf and media files only when the error occurs, add a
  help text telling tbe user to restart neovim
2021-07-19 07:19:53 +05:30
Akianonymus 05d57bba29 packerInit: Clone packer at opt path as we are lazy loading
move packadd to packerInit
2021-07-19 06:19:36 +05:30
siduck76 d257c4dd85 Update README.md 2021-07-18 23:35:25 +05:30
siduck76 4ff7208c66 lazy loading 100%!! 2021-07-18 22:11:52 +05:30
siduck76 9f1dc90269 Create README.md 2021-07-18 18:27:11 +05:30
siduck76 18a050d54f Update README.md 2021-07-18 18:27:06 +05:30
siduck76 036fb6cd66 update readme 2021-07-18 18:23:29 +05:30
siduck76 2a9d24b4a8 Update README.md 2021-07-18 17:50:21 +05:30
siduck76 3be058da26 more lazy loaddd 2021-07-18 16:32:03 +05:30
siduck76 79f8c39dd2 Merge branch 'main' of github.com:siduck76/NvChad 2021-07-18 16:06:48 +05:30
siduck76 18f3b8b93e map jk escape from terminal buffer 2021-07-18 16:10:23 +05:30
siduck76 6d98a11dfe lazy load more plugins! 2021-07-18 16:06:33 +05:30
siduck76 cb3f7538e8 Merge pull request #162 from G-Rowell/dev-fixTerm
Fix terminal config issues
2021-07-18 11:45:12 +05:30
Galen Rowell 1bedbbe5c4 Fix terminal buffer format bug, & enable escape from terminal & visual mdoes 2021-07-18 15:42:54 +10:00
siduck76 cf8b2ce1cb Merge pull request #161 from Akianonymus/main
Code style fixes | Some saner defaults
2021-07-18 09:46:09 +05:30
Akianonymus 9c1a3ad2a2 Use a different saner syntax for pcall
takes less lines, looks much better

remove neoscroll.lua, missed in 2952f4d5c7
2021-07-17 22:10:25 +05:30
Akianonymus 1d7602e3e4 mappings: Don't yank the text after pasting in visual mode 2021-07-17 19:09:12 +05:30
Akianonymus dbc4979ebd Go to next/previous line with h,l,left and right 2021-07-17 19:09:12 +05:30
Akianonymus 72b9fa5018 mappings: Use ESC to clear search highlighting and to get out of terminal insert mode 2021-07-17 19:09:07 +05:30
siduck76 8be8d36474 Update README.md 2021-07-17 16:44:39 +05:30
siduck76 2c74abe936 map escape to normal mode 2021-07-17 16:13:42 +05:30
siduck76 82f07879f3 better nord colors 2021-07-17 14:20:36 +05:30
siduck76 5f7f2df2b7 minor changes 2021-07-17 14:15:14 +05:30
siduck76 c6857e2a72 modded nord theme added 2021-07-17 14:07:27 +05:30
siduck76 f0b491cd94 update truezen config 2021-07-17 01:04:13 +05:30
siduck76 5bb85b8176 trim default ts parsers list 2021-07-16 23:40:52 +05:30
siduck76 75aa73762f Update README.md 2021-07-16 23:55:40 +05:30
siduck76 2952f4d5c7 clean stuff 2021-07-16 23:22:36 +05:30
siduck76 6f2b358d3a Merge pull request #156 from Akianonymus/main
Major perf improvements | Handle errors | Better configs | Misc
2021-07-16 23:34:57 +05:30
Akianonymus 35b210b46a install.sh: Don't ask for terminal shell when updating | Misc
Handle a edgecase for config copying

Remove an unnecessary print
2021-07-16 21:00:28 +05:30
Akianonymus d1f23d1bc3 [4/4] Refactor: install.sh: Don't handle packer
use +":lua require 'pluginList' vim.cmd('PackerSync')"
only for update as PackerSync should trigger on fresh install automatically
2021-07-16 20:59:17 +05:30
Akianonymus 643d1bd7d8 [3/4] Refactor: init: Use async | Move theme stuff to theme.lua
third commit of refactor

perf improvements due to async

run packer sync if base16 not found

this is not perfect error handling for initial run, but something

handle require errors
2021-07-16 20:11:08 +05:30
Akianonymus 3e83ec5314 [2/4] Refactor: plugins: Handle packer seperatly | Changes for configs
eg: require "plugins.neoscroll" instead of require "plugins.neoscroll".config()

second commit of refactor

handle require errors

handle cloning of packer
2021-07-16 20:08:46 +05:30
Akianonymus d16ffabcfd [1/4] Refactor: plugins: Add seperate config for each plugins
first commit of Refactor

handle require errors

move config from other places to proper files

don't create a pseudo config function for no reason

https://github.com/siduck76/NvChad/pull/156#issuecomment-881453546
2021-07-16 19:36:54 +05:30
Akianonymus 0d7345bc44 Move options from init.lua => options.lua
use a local g = vim.g
2021-07-15 23:10:53 +05:30
Akianonymus 42bf581337 Disable nvim intro and tilde chars on end of buffer
This avoids the situation when the initial screen looks out of place
because there is some pre rendered text

https://github.com/neovim/neovim/pull/8546
2021-07-15 23:10:53 +05:30
siduck76 4a934e9a82 use better char for gitsigns 2021-07-15 11:09:58 +05:30
siduck76 c4a8ecf47f add bufferline highlights 2021-07-15 10:18:10 +05:30
siduck76 7658c3d978 Update README.md 2021-07-14 06:54:14 +05:30
siduck76 6d0150ab0b Merge pull request #155 from Akianonymus/main
Use shallow clone for packer | set bg colour | Fix visual selection color | Misc improvements
2021-07-13 19:43:02 +05:30
Akianonymus e6ae79127f Increase timeoutlen to 400
sometimes 200 ms is way too for 3 key mappings
2021-07-13 16:16:57 +05:30
Akianonymus 10ddd491c1 highlights.lua: fix comments not visible in visual selection mode 2021-07-13 16:06:31 +05:30
Akianonymus 605c9e0458 highlights.lua: set neovim bg colour 2021-07-13 14:16:27 +05:30
Akianonymus c38c4ec0cf install.sh: Do shallow clone for packer.nvim 2021-07-13 14:13:33 +05:30
siduck76 484751c422 Merge pull request #150 from maitesin/patch-1
Remove quotes from jpeg icon color
2021-07-11 21:09:36 +05:30
Oscar Forner Martinez 734562cc36 Remove quotes from jpeg icon color 2021-07-11 17:29:55 +02:00
siduck76 5ff50c63e9 fix LspInstall lazy loading (#149) 2021-07-11 17:28:10 +05:30
siduck76 df4ff8dc6f lazy load some plugins 2021-07-11 12:20:15 +05:30
siduck76 4dbb1a71e2 lazy load lsp-install 2021-07-10 19:06:41 +05:30
siduck76 9627b5e6b4 add highlights for packer.nvim 2021-07-10 11:53:47 +05:30
siduck76 f6ace73656 minor changes 2021-07-10 09:41:10 +05:30
siduck76 0bbb88f6db typo 2021-07-09 16:54:40 +05:30
siduck76 1aef7e9a97 Merge pull request #145 from Akianonymus/main
Refactor Install script
2021-07-09 17:11:08 +05:30
siduck76 3a209318bb rm duplicate mapping 2021-07-09 17:10:28 +05:30
Akianonymus 2988a22eb8 mappings.lua: Fix ctrl + q when vertical/horizontal split buffer is open
currently when a vertical or horizontal split buffer is open and ctrl + q is used, then it removes the buffer content but not the actual buffer, further it duplicates an existing buffer content.

This commit fixes that
2021-07-09 15:26:09 +05:30
Akianonymus e71b9bbece install.sh: Refactor install script, Add new flags
Giving either --install or --update flag is neccessary for the script to proceed

    -i | --install       => Install the config.

    -u | --update        => Update the existing config without removing existing stuff.

    -b | --backup 'path' => Custom config backup path.

    -nb | --no-backup    => Don't take existing config backup. Use with caution.

Update formatting using following command
    shfmt -i 2 -sr -p -bn -ci -w install.sh
2021-07-09 14:31:47 +05:30
siduck76 a75d59a2bf Merge branch 'main' of github.com:siduck76/NvChad 2021-07-09 10:26:27 +05:30
siduck76 61778b20f1 Merge pull request #144 from Akianonymus/main
telescope.lua: Use path_display instead of shorten_path
2021-07-09 10:38:40 +05:30
siduck76 0a55de407e add git clone_timeout for packer 2021-07-09 10:25:26 +05:30
Akianonymus a5bd221680 telescope.lua: Use path_display instead of shorten_path
shorten_path is deprecated now

Reference: https://github.com/nvim-telescope/telescope.nvim/wiki/Path-Display-Configuration
2021-07-09 10:12:57 +05:30
siduck76 9f8ce72e55 add preload sizes for lua lsp (#143) 2021-07-09 09:19:24 +05:30
siduck76 c6084220de improve config structure 2021-07-09 09:14:04 +05:30
siduck76 e219b04e82 better colors 2021-07-07 22:19:51 +05:30
siduck76 b16c5a2f70 autopairs parenthesis autoinsert after function completion 2021-07-06 13:39:23 +05:30
siduck76 8b4118605b add parenthesis for function completion 2021-07-05 23:27:41 +05:30
siduck76 7db1fb75b9 use better colors for tomorrow-night theme 2021-07-05 23:03:38 +05:30
siduck76 3ee8f9876c Merge pull request #125 from alternateved/append-to-highlights
Add bg colors for all nvchad themes
2021-07-05 22:25:12 +05:30
siduck76 02b4194e1e Update highlights.lua 2021-07-05 22:24:30 +05:30
siduck76 45f940f3fb Merge pull request #123 from alternateved/add-theme
Add tomorrow-night theme
2021-07-05 22:18:19 +05:30
alternateved 20c3eca0b6 Make darker_black less dark 2021-07-05 18:41:37 +02:00
alternateved 07d3192f6f Remove blue-ish tint from darker_black 2021-07-05 18:32:38 +02:00
siduck76 1399a0c762 Merge pull request #130 from ashincoder/main
Made some changes in mappings and settings
2021-07-05 18:40:23 +05:30
siduck76 1aed70921e Merge pull request #129 from Akianonymus/main
install.sh: Fix all shellcheck warnings | Misc improvements
2021-07-05 18:38:43 +05:30
ashincoder c5703f2d03 Merge branch 'siduck76:main' into main 2021-07-05 18:38:28 +05:30
siduck76 0914c33ab8 Merge pull request #132 from alternateved/fix-zen
Update TrueZen.nvim configuration file
2021-07-05 18:38:03 +05:30
alternateved 8355a055d1 Rework TrueZen.nvim configuration file 2021-07-05 15:01:50 +02:00
alternateved ac069fd543 Update TrueZen.nvim configuration file 2021-07-05 14:57:27 +02:00
ashincoder 6d864a62bf Merge branch 'siduck76:main' into main 2021-07-05 17:19:36 +05:30
ashincoder 7f6cf1bc4b seperate prefix for zen mappings and timeoutlen in settings 2021-07-05 17:19:12 +05:30
alternateved d7729017c1 Merge branch 'siduck76:main' into append-to-highlights 2021-07-05 12:49:12 +02:00
alternateved 0e6f3c81b9 Merge branch 'siduck76:main' into add-theme 2021-07-05 12:49:04 +02:00
siduck76 4730350ca8 Update README.md 2021-07-05 15:30:53 +05:30
siduck76 30e7c8cefe Delete FUNDING.yml
Since this is just a config , who'd even pay for it lol? Also it having a sponsor button might've create bad image for some people and make them think that NvChad's just created to make some cash! So I'll be removing "the sponsor slap" from here :))
2021-07-05 15:25:11 +05:30
Akianonymus 27e3cf69bc install.sh: Fix all shellcheck warnings | Misc improvements
* modify sed command to work in both gnu sed and mac os sed

    https://stackoverflow.com/a/4247319

* use printf everywhere for more compatibility

* add some error checking
2021-07-05 15:00:12 +05:30
siduck76 1f89919d27 Merge pull request #122 from ashincoder/main
Fixed relative number
2021-07-05 06:29:06 +05:30
ashincoder a3df1f4cc4 Update highlights.lua 2021-07-05 05:52:55 +05:30
alternateved e8574170f5 Remove tomorrow-night theme 2021-07-04 20:14:12 +02:00
alternateved 6881fdfefb Add background colors in case of different terminal colors 2021-07-04 16:29:16 +02:00
alternateved 327c067fd2 Add tomorrow-night theme 2021-07-04 16:19:46 +02:00
ashincoder 57f9d0dbd3 fixed error #121 2021-07-04 19:25:37 +05:30
ashincoder d50d11435d changed relative number format to current way 2021-07-04 14:38:08 +05:30
siduck76 f3f3e51d0f Merge pull request #120 from ashincoder/main
updated indent-blankline branch to master
2021-07-03 13:32:03 +05:30
ashincoder c721db661f updated 2021-07-03 13:09:00 +05:30
ashincoder 0d9ae5f497 updated indent-blankline branch to master
In the commit of 17a83ea765831cb0cc64f768b8c3f43479b90bbe the branch of lua was merged to master.
2021-07-03 13:06:24 +05:30
siduck76 135249e19e Merge branch 'main' of github.com:siduck76/NvChad 2021-07-02 15:21:30 +05:30
siduck76 50b00f4737 replace vim-auto-save with AutoSave.nvim 2021-07-02 15:17:36 +05:30
siduck76 82eb17d95b Merge pull request #118 from ashincoder/main
added nice badges c:
2021-07-02 14:08:37 +05:30
ashincoder 81ce6877ae made changes 2021-07-02 13:23:01 +05:30
ashincoder da0b4df3c5 Update README.md 2021-07-02 13:21:42 +05:30
ashincoder 48ad79cd93 added made with lua badge in readme 2021-07-02 13:21:18 +05:30
ashincoder 4005cbc854 updated readme.md
Made label colors default and changed some colors
2021-07-02 11:57:02 +05:30
ashincoder 8ddf78a9af Updated the links of the badges 2021-07-02 10:26:07 +05:30
ashincoder c2f857cb9e update hyperlink of issue badge 2021-07-02 10:19:17 +05:30
ashincoder 4647da671b changed color of issues label to red 2021-07-02 07:38:32 +05:30
ashincoder 45a9c806a2 updated colors of readme
updated colors added Neovim logo.
2021-07-02 07:36:20 +05:30
ashincoder 0b842db789 added logos in badges
I added some more logos for soothness
2021-07-02 06:33:12 +05:30
siduck76 76cdd5a29b Merge pull request #116 from ashincoder/main
Updated telescope config #115
2021-07-01 21:39:20 +05:30
siduck76 dfe707d6db Update telescope-nvim.lua 2021-07-01 21:38:46 +05:30
ashincoder 9dbc9e6880 Updated telescope config
fixes issue #115.
2021-07-01 21:30:03 +05:30
siduck76 eacc481b08 Merge pull request #114 from ashincoder/main
added more badges
2021-07-01 21:27:35 +05:30
ashincoder 1895d1f771 centered the badges 2021-07-01 20:36:57 +05:30
siduck76 10d7b892c9 Update README.md 2021-07-01 20:13:57 +05:30
ashincoder 0ecde48940 Update README.md 2021-07-01 20:09:00 +05:30
ashincoder 113c9b5a6d full clear 2021-07-01 20:08:31 +05:30
ashincoder a1645954aa made flat all 2021-07-01 20:06:53 +05:30
ashincoder dbb87a304d made badges flat 2021-07-01 19:37:18 +05:30
siduck76 1f3a5fd233 Update README.md 2021-07-01 19:29:51 +05:30
ashincoder 799f2e0b6f Update README.md 2021-07-01 19:16:04 +05:30
ashincoder 940f344e0e added more badges
The badges added:
   - Stars
   - Issues
2021-07-01 19:15:29 +05:30
siduck76 3b1d43fcc4 Merge pull request #112 from ashincoder/main
updated config.yml
2021-07-01 18:48:42 +05:30
siduck76 ea3b090566 Update config.yml 2021-07-01 18:48:31 +05:30
ashincoder 311a01da44 Merge branch 'siduck76:main' into main 2021-07-01 18:43:23 +05:30
ashincoder 6e5d2940d7 updated config.yml
added some help links
2021-07-01 18:43:06 +05:30
siduck76 9d7c11e6bd Merge pull request #111 from alternateved/update-plugin-list
Update TrueZen.nvim after repository changed address
2021-07-01 18:42:30 +05:30
alternateved f1662951d1 Update TrueZen.nvim after repository changed address 2021-07-01 13:44:56 +02:00
siduck76 9b2d36b767 update nvimtree config and highlights 2021-07-01 11:55:38 +05:30
siduck76 2d4172fd98 Merge branch 'main' of github.com:siduck76/NvChad 2021-07-01 06:27:01 +05:30
siduck76 d073e01117 fix typo in mappings #109 2021-07-01 06:26:51 +05:30
siduck76 67a8d2b9df Merge pull request #108 from ashincoder/main
created config.yml in issue templates
2021-06-30 18:11:06 +05:30
ashincoder 7e69cb8ac9 created config.yml
created config.yml so that blank issues are not enabled
2021-06-30 17:41:33 +05:30
siduck76 8e389776dc Merge pull request #107 from ashincoder/main
added bug report template
2021-06-30 08:12:23 +05:30
ashincoder a465ea7239 created feature request template 2021-06-30 06:07:28 +05:30
ashincoder 602835d637 created bug report template 2021-06-30 06:03:22 +05:30
siduck76 168054cd05 Merge pull request #106 from ashincoder/main
removed -e flags in script
2021-06-29 15:29:12 +05:30
ashincoder 4631fbcf4c removed -e flags in script
I removed -e flags of echoes as it not useful in the posix script
2021-06-29 15:09:03 +05:30
siduck76 97370f36ca Merge pull request #104 from kingavatar/main
Fix Check Git Workspace Condition
2021-06-29 11:03:59 +05:30
kingavatar 4159c5370f Fix Check Git Workspace Condition 2021-06-29 10:50:37 +05:30
siduck76 69e790eeb3 Create README.md 2021-06-29 08:53:30 +05:30
siduck76 2b628f1729 Update README.md 2021-06-29 08:53:01 +05:30
siduck76 e9e2dd3f14 Update README.md 2021-06-29 08:52:28 +05:30
siduck76 4dde80f315 Update install.sh 2021-06-28 21:23:50 +05:30
siduck76 bd6014d60d Merge pull request #101 from Vanderscycle/patch-1
Update install.sh
2021-06-28 07:53:28 +05:30
Henri 087e4e8acc Update install.sh
Gave up and decided to clone the config and reinstall over my previous install to add later. Made the following modifications:
1 - removed the extra echos (use echo -e "\n some line " in the future)
2 - packer doesn't install if there's a previously installed packer folder. So the bash script purges the previous packer folder and starts anew.


tested the config correctly
2021-06-27 12:02:56 -07:00
siduck76 50321ad4a0 change some mappings 2021-06-27 22:08:47 +05:30
siduck76 da50d99462 load colorizer on bufread event only 2021-06-27 21:58:35 +05:30
siduck76 ca29b38478 lazy load colorizer 2021-06-27 20:59:39 +05:30
siduck76 7d23b8c24e add some mappings 2021-06-27 18:15:58 +05:30
siduck76 89ab7f7be9 add donate link 2021-06-26 21:18:33 +05:30
siduck76 6d4d73c7f7 Merge branch 'main' of github.com:siduck76/NvChad 2021-06-26 18:20:36 +05:30
siduck76 9da869feee replace vsnip with luasnip,clean some confs 2021-06-26 18:20:25 +05:30
siduck76 ae2461a46f Update README.md 2021-06-26 17:51:11 +05:30
siduck76 3523eb277b Update README.md 2021-06-26 12:49:12 +05:30
siduck76 aa1a1af099 Update README.md 2021-06-26 12:48:04 +05:30
siduck76 c671acb112 Update README.md 2021-06-26 12:42:02 +05:30
siduck76 45afa83629 Update README.md 2021-06-26 12:39:30 +05:30
siduck76 36aa25ba49 Update README.md 2021-06-26 12:35:13 +05:30
siduck76 a6d2ccbb22 Update README.md 2021-06-26 12:33:02 +05:30
siduck76 3e1cf53fd6 set default theme 2021-06-26 08:16:23 +05:30
siduck76 c5f5709f10 lazy loading telescope! 2021-06-26 08:11:39 +05:30
siduck76 fc76cb3f52 global theme option 2021-06-26 08:08:12 +05:30
siduck76 7758c086e2 clean up 2021-06-26 08:06:26 +05:30
siduck76 40a63f67c8 add gruvbox theme 2021-06-26 08:05:24 +05:30
siduck76 685044335b use fzf for telescope 2021-06-26 08:03:29 +05:30
siduck76 47e062eb73 rm lazy loading for colorizer 2021-06-26 08:01:09 +05:30
siduck76 900fb9e8f1 rm whichkey 2021-06-26 07:59:33 +05:30
siduck76 0e9b3832ae lazy load lspconfig :D 2021-06-26 07:57:09 +05:30
siduck76 2f238742d2 add vim-matchup , lazy load some plugins 2021-06-26 07:54:10 +05:30
siduck76 193a852335 lazy load truezen.nvim 2021-06-26 07:52:48 +05:30
siduck76 f900ecaed3 lazy load colorizer , nvim-commet 2021-06-26 07:50:10 +05:30
siduck76 247e6e06c5 lazy load gitsigns 2021-06-26 07:45:42 +05:30
siduck76 4c96c28c2d lazy load blankline 2021-06-26 07:43:35 +05:30
siduck76 b42f4778f9 lazy load dashboard 2021-06-26 07:40:23 +05:30
siduck76 dcc04837d4 disable some inbuilt plugins 2021-06-26 07:38:44 +05:30
siduck76 e2717401fe lazy load neoformat + lspkind ( run :PackerSync and :PackerCompile ) 2021-06-26 07:31:15 +05:30
siduck76 5f676ffbdb Update install.sh 2021-06-26 07:35:33 +05:30
siduck76 4e23587ca3 lazy loading : nvimtree and autopairs 2021-06-25 23:06:17 +05:30
siduck76 922089fc07 lazy loading : treesitter 2021-06-25 21:36:13 +05:30
siduck76 7464358bbf lazy loading : vsnip 2021-06-24 22:51:39 +05:30
siduck76 e771a32ab8 lazy loading : compe 2021-06-24 22:49:42 +05:30
siduck76 bbadee53ad Update README.md 2021-06-19 20:24:28 +05:30
siduck76 7c0b6bac22 Update README.md 2021-06-19 20:24:02 +05:30
siduck76 8f6780f09f Update pluginList.lua 2021-06-19 19:24:24 +05:30
siduck76 18ff27d6b1 add dashboard footer & disable statusline in dashboard 2021-06-19 12:50:35 +05:30
siduck76 36474baab2 Merge branch 'main' of github.com:siduck76/NvChad 2021-06-19 07:08:33 +05:30
siduck76 c995595509 rm unneeded spaces after nvimtree default icons 2021-06-19 07:08:22 +05:30
siduck76 ffa008f148 Update README.md 2021-06-18 11:42:25 +05:30
siduck76 671ed7d090 Update README.md 2021-06-18 11:39:40 +05:30
siduck76 6c272e7313 disable showmode 2021-06-18 08:41:14 +05:30
siduck76 a9816eed42 hide statusline in NvimTree and terminal buffers 2021-06-18 08:40:01 +05:30
siduck76 74a97956bb Merge pull request #78 from ashincoder/main
cmd instead of vim.cmd
2021-06-16 18:56:26 +05:30
siduck76 fdd32cfcab Update highlights.lua 2021-06-16 18:56:12 +05:30
ashincoder 35343e8b96 cmd instead of vim.cmd 2021-06-16 18:53:16 +05:30
siduck76 a80de385f2 Update highlights.lua 2021-06-16 18:00:23 +05:30
siduck76 fe0fc44f77 Merge pull request #74 from ashincoder/main
Added relative numbers option and changed bookmark icon
2021-06-16 06:44:03 +05:30
ashincoder 20cc14e584 removed 2 repeated lines 2021-06-16 06:42:23 +05:30
ashincoder 9d35626a56 Merge branch 'main' of github.com:ashincoder/NvChad 2021-06-16 06:20:58 +05:30
ashincoder c3a447a471 commented relative number setting and changed bookmark icon 2021-06-16 06:20:47 +05:30
siduck76 61022dd971 Update README.md 2021-06-15 23:52:11 +05:30
siduck76 9bbd2b5d69 update todo and some stuff 2021-06-15 23:39:40 +05:30
siduck76 9aea4d08e5 minor changes in treesitter conf 2021-06-15 21:54:05 +05:30
siduck76 62f4ce0912 enable smartindent 2021-06-15 21:44:11 +05:30
siduck76 f87772e559 Merge pull request #66 from ashincoder/main
Added commenter support.
2021-06-15 16:32:50 +05:30
siduck76 19763665e6 Delete commenter.lua 2021-06-15 16:32:07 +05:30
siduck76 e31e74e0da Update init.lua 2021-06-15 16:31:54 +05:30
ashincoder c0369c7130 added commenting keybinding 2021-06-15 15:57:55 +05:30
ashincoder 0350571803 added commenting support 2021-06-15 15:55:32 +05:30
siduck76 e48da3491d Merge pull request #64 from ashincoder/main
backup old nvim config in install script
2021-06-15 14:52:59 +05:30
ashincoder 3879718cea changed script to mv nvim to nvim.bak instead of deleting it 2021-06-15 14:35:23 +05:30
siduck76 3552dcffb9 fix conflicting mappings 2021-06-14 23:21:16 +05:30
52 changed files with 3254 additions and 1390 deletions

No files matched your search

+161
View File
@@ -0,0 +1,161 @@
# [CONTRIBUTING](https://nvchad.github.io/contribute)
## NvChad install for contributors
If you wish to contribute to NvChad, you should:
1. [create a fork on GitHub](https://docs.github.com/en/get-started/quickstart/fork-a-repo)
2. clone your fork to your machine
- For ssh:
```shell
$ git clone git@github.com:<YOUR GITHUB USERNAME>/NvChad.git ~/.config/nvim
```
- For https:
```shell
$ git clone https://github.com/<YOUR GITHUB USERNAME>/NvChad.git ~/.config/nvim
```
3. [add a new remote repo to track](https://www.atlassian.com/git/tutorials/git-forks-and-upstreams)
- this means you can push/pull as normal to your own repo, but also easily track & update from the NvChad repo
- for ssh:
```shell
$ git remote add upstream git@github.com:NvChad/NvChad.git
```
- for https:
```shell
$ git remote add upstream https://github.com/NvChad/NvChad.git
```
4. any time you create a branch to do some work, use
```shell
$ git fetch upstream && git checkout -b dev-myFEAT upstream/main
```
5. only use the **--rebase** flag to update your dev branch
- this means that there are no `Merge NvChad/main into devBranch` commits, which are to be avoided
```shell
$ git pull upstream --rebase
```
## Things to know before contributing
- When making a PR (pull request), please be very descriptive about what you've done!
- PR titles should be formatted with 'fix', 'chore' or 'feat'. ex: `feat: add new plugin`
- PRs should follow the pull request formats where applicable
- We are open to all PRs, but may decline some for a myriad of reasons. Though don't be discouraged! We'll still be open to discussions.
- PR's are always welcomed however NvChad aims to be less bloated. So PR's regarding existing plugin's enhancement and creating new features with existing plugins itself ( without adding a new plugin), bug fixes and corrections are more encouraged.
- NvChad won't keep adding more and more features (like adding new plugins most likely) as requested if they feel unneeded and aren't usable by the majority!! If you think the plugin you want to be added is very useful and many NvChaders would find it useful, then such feature's PR is welcomed!
- But adding specific features like adding config for [wakatime](https://github.com/wakatime/vim-wakatime) etc will be added in this [chad user configs](https://github.com/NvChad/NvChad/wiki/Chad-user-configs). This lets the user select the things only they want ( adding configs from extra configs ).
## How to remove or edit commits from your PR
> You may have been directed here to remove a commit such as a merge commit: `Merge NvChad/main into devBranch` from your PR
> As these commands edit your git history, you may need to **force push** with `git push origin --force`
1. Run the following:
```
$ git rebase -i HEAD~<NUMBER OF COMMITS TO GO BACK>
```
<details><summary>Example</summary>
<p>
```shell
$ git rebase -i HEAD~4
```
```shell
pick 28b2dcb statusline add lsp status
pick dad9a39 feat: Added lsp radial progress
pick 68f72f1 add clickable btn for exiting nvim
pick b281b53 avoid using q! for quitting vim
# Rebase 52b655b..b281b53 onto 52b655b (4 commands)
#
# Commands:
# p, pick <commit> = use commit
# r, reword <commit> = use commit, but edit the commit message
# e, edit <commit> = use commit, but stop for amending
# s, squash <commit> = use commit, but meld into previous commit
# f, fixup <commit> = like "squash", but discard this commit's log message
# x, exec <command> = run command (the rest of the line) using shell
# b, break = stop here (continue rebase later with 'git rebase --continue')
# d, drop <commit> = remove commit
# l, label <label> = label current HEAD with a name
# t, reset <label> = reset HEAD to a label
# m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]
# . create a merge commit using the original merge commit's
# . message (or the oneline, if no original merge commit was
# . specified). Use -c <commit> to reword the commit message.
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#
# Note that empty commits are commented out
```
</p>
</details>
2. Change the `pick` commands to whatever you wish, you may wish to `d` `drop` or `e` `edit` a commit. Then save & quit this git file to run it.
<details><summary>Example</summary>
<p>
```shell {3,4}
pick 28b2dcb statusline add lsp status
pick dad9a39 feat: Added lsp radial progress
edit 68f72f1 add clickable btn for exiting nvim
d b281b53 avoid using q! for quitting vim
# Rebase 52b655b..b281b53 onto 52b655b (4 commands)
#
# Commands:
# p, pick <commit> = use commit
# r, reword <commit> = use commit, but edit the commit message
# e, edit <commit> = use commit, but stop for amending
# s, squash <commit> = use commit, but meld into previous commit
# f, fixup <commit> = like "squash", but discard this commit's log message
# x, exec <command> = run command (the rest of the line) using shell
# b, break = stop here (continue rebase later with 'git rebase --continue')
# d, drop <commit> = remove commit
# l, label <label> = label current HEAD with a name
# t, reset <label> = reset HEAD to a label
# m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]
# . create a merge commit using the original merge commit's
# . message (or the oneline, if no original merge commit was
# . specified). Use -c <commit> to reword the commit message.
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#
# Note that empty commits are commented out
```
</p>
</details>
3. If you picked `drop` you are done, if you picked `edit` then edit your files, then run:
```shell
$ git add <files>
```
4. Once you have edited & added your files, run:
```shell
$ git rebase --continue
```
5. You will likely need to push using:
```shell
$ git push origin --force
```
## Help
For help with contributing and anything else nvChad related join the [discord](https://discord.gg/VyPxsGArXc)
+32
View File
@@ -0,0 +1,32 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- Operating System
- Terminal
- Version of Neovim
**Additional context**
Add any other context about the problem here.
+8
View File
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Wiki
url: https://github.com/siduck76/NvChad/wiki
about: "Walks you through how to use and Configure NvChad."
- name: Visit our gitter chat
url: https://gitter.im/neovim-dotfiles/community
about: "A place where we dicuss NvChad related stuff."
+23
View File
@@ -0,0 +1,23 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem was.
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.
**Screenshot**
Maybe a screenshot of the feature
+14
View File
@@ -0,0 +1,14 @@
Fixes Issue # (If it doesn't fix an issue then delete this line)
Features Added:
- Plugin Name (Add links if possible too)
Reasoning:
List why the feature is needed
Speed (If applicable):
Show the impact on the speed of nvChad
Other:
Anything else relevant goes here
+16
View File
@@ -0,0 +1,16 @@
(Make sure your title is either: 'fix', 'chore', or 'feat' then your title. ex: `fix: add new plugin`)
Fixes Issue # (If it doesn't fix an issue then delete this line)
Plugins Added:
- [Plugin Name](Plugin Link)
- [Plugin Name](Plugin Link)
Reasoning:
List why the plugin(s) should be added
Speed:
Show the impact on the speed of nvChad
Other:
Anything else relevant goes here
+175
View File
@@ -0,0 +1,175 @@
<h1 align="center">NvChad</h1>
<div align="center">
<a href="https://nvchad.github.io/">Home</a>
<span> • </span>
<a href="https://nvchad.github.io/getting-started/setup">Install</a>
<span> • </span>
<a href="https://nvchad.github.io/contribute">Contribute</a>
<span> • </span>
<a href="https://github.com/NvChad/NvChad#gift_heart-support">Support</a>
<span> • </span>
<a href="https://nvchad.github.io/Extras">Extras</a>
<p></p>
</div>
<div align="center">
[![Super Linter](https://img.shields.io/github/workflow/status/NvChad/NvChad/Super-Linter/main?style=flat-square&logo=github&label=Build&color=8DBBE9)]()
<a href="https://github.com/NvChad/NvChad/blob/main/LICENSE"
><img
src="https://img.shields.io/github/license/NvChad/NvChad?style=flat-square&logo=GNU&label=License&color=df967f"
alt="License"
/>
[![Neovim Minimum Version](https://img.shields.io/badge/Neovim-0.6.1-blueviolet.svg?style=flat-square&logo=Neovim&color=90E59A&logoColor=white)](https://github.com/neovim/neovim)
[![GitHub Issues](https://img.shields.io/github/issues/NvChad/NvChad.svg?style=flat-square&label=Issues&color=d77982)](https://github.com/NvChad/NvChad/issues)
[![Discord](https://img.shields.io/discord/869557815780470834?color=738adb&label=Discord&logo=discord&logoColor=white&style=flat-square)](https://discord.gg/gADmkJb9Fb)
[![Matrix](https://img.shields.io/badge/Matrix-40aa8b.svg?style=flat-square&logo=Matrix&logoColor=white)](https://matrix.to/#/#nvchad:matrix.org)
[![Telegram](https://img.shields.io/badge/Telegram-blue.svg?style=flat-square&logo=Telegram&logoColor=white)](https://t.me/DE_WM)
</div>
## Showcase
<img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/dashboard-nvim.png"><hr>
<img src="https://cdn.discordapp.com/attachments/610012460828852229/853933487295299584/unknown.png"><hr>
<img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/initialNvim1.png"><hr>
<img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/initialNvim.png"><hr>
## Theme Showcase
<details><summary> <b>Images (Click to expand!)</b></summary>
![onedark](https://user-images.githubusercontent.com/59060246/130129880-59ab1ad5-9aa6-4f50-9ddd-d8dde0c16257.png)
![nord](https://user-images.githubusercontent.com/59060246/130129890-c01117df-ac3d-40dd-b95d-2681c2461bb4.png)
![gruvchad](https://user-images.githubusercontent.com/59060246/130129897-a68b1585-f42d-4325-8482-102dd2fe1e9e.png)
![everforest](https://user-images.githubusercontent.com/59060246/130129901-5e582f3e-b776-4d0c-9790-be5ae738b5a8.png)
</details>
## Very useful plugins used
<details><summary> <b>Images (Click to expand!)</b></summary>
<h3> Nvim-tree.lua </h3>
Fast file tree:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/nvimtree.png"></kbd><hr>
<h3> Telescope-nvim </h3>
A fuzzy file finder, picker, sorter, previewer and much more:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/tel.png"></kbd>
<h3> Indent-blankline.nvim </h3>
Adds indentline:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/blanklineNvim.png"></kbd><hr>
<h3> Feline.nvim </h3>
Highly configurable statusline plugin:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/statusline.png"></kbd><hr>
<h3> Nvim-bufferline.lua </h3>
Better tab implementation:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/bufferline.png"></kbd><hr>
<h3> Nvim-web-devicons </h3>
Lua fork of Vim Devicons which offers more file icon customisability:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/image.png"></kbd><hr>
<h3> Nvim-treesitter </h3
Better syntax highlighting for programming languages (NvChad by default comes with Lua/bash treesitter parsers).
Without/with Treesitter:
<kbd><img src="https://raw.githubusercontent.com/siduck/dotfiles/all/rice%20flex/woTree.png"></kbd><hr>
</details>
## Credits
- [Elianiva](https://github.com/elianiva) helped me with NeoVim Lua related issues many times, NvChad wouldn't exist without his help at all.
- @lorvethe for making the beautiful NvChad logo.
## Features
- Many beautiful themes to choose from.
- Fast plugin loading.
- File navigation with [nvim-tree.lua](https://github.com/kyazdani42/nvim-tree.lua).
- Managing tabs, buffers with [bufferline.nvim](https://github.com/akinsho/bufferline.nvim).
- Beautiful and configurable icons with [nvim-web-devicons](https://github.com/kyazdani42/nvim-web-devicons).
- Pretty and functional statusline with [feline.nvim](https://github.com/Famiu/feline.nvim).
- Git diffs and more with [gitsigns.nvim](https://github.com/lewis6991/gitsigns.nvim) .
- NeoVim Lsp configuration with [nvim-lspconfig](https://github.com/neovim/nvim-lspconfig).
- Autocompletion with [nvim-cmp](https://github.com/hrsh7th/nvim-cmp).
- File searching, previewing image and text files and more with [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim).
- Syntax highlighting with [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter).
- Autoclosing braces and html tags with [nvim-autopairs](https://github.com/windwp/nvim-autopairs).
- Indentlines with [indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim).
- Useful snippets with [LuaSnip](https://github.com/L3MON4D3/LuaSnip).
## Bloat
To everyone who thinks that NvChad is bloat: Bloat means different things to everyone.
NvChad has 38 plugins installed by default, yet it is still very fast because it uses the Packer plugin manager. Packer.nvim allows you to lazy load plugins, meaning they only get loaded when absolutely required. Furthermore, you can disable plugins you don't use in `chadrc.lua`.
<img src = "https://chadpaste.com/f/kdmxdabxbk.png">
# TODO
NvChad is focusing more on improving its already existing plugins and features instead of adding more plugins. Things you can do to help currently are:
- Improving base plugins configurations
- Debloating the config.
- Adding more themes.
## Try NvChad in a Docker container
This will leave your current Neovim configuration untouched. Once you exit Neovim, the image is deleted.
```zsh
docker run -w /root -it --rm alpine:edge sh -uelic '
apk add git nodejs neovim ripgrep alpine-sdk --update
git clone https://github.com/NvChad/NvChad ~/.config/nvim
nvim -c "autocmd User PackerComplete quitall" -c "PackerSync"
nvim
'
```
## Chadributors
<a href="https://github.com/NvChad/NvChad/graphs/contributors">
<img src="https://contrib.rocks/image?repo=NvChad/NvChad"/>
</a>
## Warning
If you have an issue with a plugin in NvChad, first you should report it to NvChad to see if it's an issue with it.
## :gift_heart: Support
I would happily accept donations but would feel awful since I'm not the only one who has worked on NvChad. The project has only been made possible by the many great contributors and plugin developers, thus taking the donations just for me feels unjustified. If you enjoy using NvChad and would like to show your support then try to be a better you! Help the people in need whenever possible and do charity work. Be nice to loved ones and strangers alike. Do not be rude, always try to be helpful and caring for one another. It's easy to hate but hard to care. Be respectful to any software/work done by other people rather than making fun of them. Do not compare software (In a bad way). I'm grateful to even be able to use NeoVim! But I still cannot be fully happy when I know that there are people who barely have any food to eat, starve for weeks, don't have access to proper education, computers, basic health care facilities and more. Here are some charities and gofundme links you can donate to instead:
- https://www.gofundme.com/f/WeCareAboutSyria
- https://www.gofundme.com/f/Burundi-Nutrition
- https://charity.gofundme.com/o/en/campaign/feedingyemen
- https://www.gofundme.com/f/6p8ea-give-ghanaian-orphans-the-gift-of-a-ride-to-school
- https://www.isupportmyanmar.com
- https://www.justgiving.com/campaign/somaliawater
- https://www.justgiving.com/crowdfunding/acaappeal
- https://www.justgiving.com/fundraising/muslim-chat
- https://www.gofundme.com/f/help-kids-in-mali-have-warm-clothing-in-winter
- https://www.justgiving.com/crowdfunding/carevenezuela
- https://www.justgiving.com/campaign/yemen
-31
View File
@@ -1,31 +0,0 @@
name: Super-Linter
# Run this workflow every time a new commit pushed to your repository
on: push
jobs:
# Set the job key. The key is displayed as the job name
# when a job name is not provided
super-lint:
# Name the Job
name: Lint code base
# Set the type of machine to run on
runs-on: ubuntu-latest
steps:
# Checks out a copy of your repository on the ubuntu-latest machine
- name: Checkout code
uses: actions/checkout@v2
# Runs the Super-Linter action
- name: Run Super-Linter
uses: github/super-linter@v3
env:
VALIDATE_YAML: true
VALIDATE_BASH_EXEC: true
#VALIDATE_LUA: true #removed because the lua gets caught with all the vim
OUTPUT_FOLDER: super-linter.report
OUTPUT_DETAILS: detailed
DEFAULT_BRANCH: main
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+3
View File
@@ -0,0 +1,3 @@
plugin
custom
spell
+6
View File
@@ -0,0 +1,6 @@
column_width = 120
line_endings = "Unix"
indent_type = "Spaces"
indent_width = 3
quote_style = "AutoPreferDouble"
no_call_parentheses = true
-103
View File
@@ -1,103 +0,0 @@
[![Super-Linter](https://github.com/siduck76/NvChad/actions/workflows/superLinter.yml/badge.svg)](https://github.com/siduck76/NvChad/actions/workflows/superLinter.yml)
An attempt to make neovim (cli version) as functional as an IDE while being very eyecandy.
# Screenshots -
<img src ="https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/dashboard-nvim.png"><hr>
<img src ="https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/initialNvim1.png"><hr>
<img src ="https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/initialNvim.png"><hr>
<kbd><img src ="https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/nvimRice2.png"></kbd><hr>
# Very Useful lua plugins used in my config -
#### lspkind-nvim
This tiny plugin adds vscode-like pictograms to neovim built-in lsp completion items :
<kbd><img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/lspkind.png"></kbd><hr>
#### nvim-tree.lua
fast file tree :
<kbd><img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/nvimtree.png"></kbd><hr>
### telescope-nvim -
A fuzzy file finder, picker, sorter, previewer and much more:
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/tel.png"></kbd>
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/telmedia.png"></kbd><hr>
### indent-blankline.nvim -
adds indentline :
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/blanklineNvim.png"></kbd>
### galaxyline -
fastest statusline plugin I've used so far:
<kbd><img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/statusline.png"></kbd><hr>
<hr>
### nvim-bufferline.lua -
As a top bufferline like thing which lets me handle tabs like switching, closing tabs.
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/bufferline.png"></kbd>
<hr>
### nvim-web-devicons -
Lua fork of vim devicons which lets me change icons of filetypes
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/image.png"></kbd><hr>
### nvim-treesitter
Better syntax highlighting for programming languages ( my config just has html,css,js support for now ).
without / with Treesitter :
<kbd> <img src = "https://raw.githubusercontent.com/siduck76/dotfiles/master/rice%20flex/woTree.png"></kbd>
# Features
- File navigation with Nvimtree
- mouse works
- managing tabs with bufferline
- autosave
- icons on nvimtree , telescope , bufferline/statusline and almost everywhere! with nvim-web-devicons
- minimal status line ( galaxyline)
- gitsigns (colored bars for git in my config)
- using nvim-lsp
- nvim-lspconfig for nvim-lps configuration
- nvim-compe for autocompletion
- lspkind to show pictograms on autocompletion items
- telescope for file finding , picking , previewing (files and even images)
- nvim-treesitter for syntax highlighting
- nvim-autopairs , for autolosing braces and stuffs
- neoformat for prettifying / formatting code
- packer.nvim as package manager
- indent-blankline.Nvim for indentlines
- smooth scrolling
- Snip support from VSCode through vsnip supporting custom and predefined snips (friendly-snippets)
# Requirements
- neovim 0.5
- A terminal that supports [nerdfonts](https://github.com/ryanoasis/nerd-fonts)
- Set terminal's inner padding to 0.
# Wiki
- [config-structure](https://github.com/siduck76/NvChad/wiki#config-structure)
- [Install](https://github.com/siduck76/NvChad/wiki#clone-my-setup)
- [mappings](https://github.com/siduck76/NvChad/wiki/mappings)
# TODO
- Add more themes.
- Add a theme switcher
# Contact -
- My linux / unix related ricing community: https://t.me/DE_WM (telegram)
- Me: @siduck (telegram)
+12
View File
@@ -0,0 +1,12 @@
-- Just an example, supposed to be placed in /lua/custom/
local M = {}
-- make sure you maintain the structure of `core/default_config.lua` here,
-- example of changing theme:
M.ui = {
theme = "gruvchad",
}
return M
+11
View File
@@ -0,0 +1,11 @@
-- Please check NvChad docs if you're totally new to nvchad + dont know lua!!
-- This is an example init file in /lua/custom/
-- this init.lua can load stuffs etc too so treat it like your ~/.config/nvim/
-- MAPPINGS
local map = require("core.utils").map
map("n", "<leader>cc", ":Telescope <CR>")
map("n", "<leader>q", ":q <CR>")
-- NOTE: the 4th argument in the map function is be a table i.e options but its most likely un-needed so dont worry about it
+26 -54
View File
@@ -1,59 +1,31 @@
-- load all plugins
require "pluginList"
require "misc-utils"
local present, impatient = pcall(require, "impatient")
require "top-bufferline"
require "statusline"
if present then
impatient.enable_profile()
end
require("colorizer").setup()
require("neoscroll").setup() -- smooth scroll
local core_modules = {
"core.options",
"core.autocmds",
"core.mappings",
}
-- lsp stuff
require "nvim-lspconfig"
require "compe-completion"
for _, module in ipairs(core_modules) do
local ok, err = pcall(require, module)
if not ok then
error("Error loading " .. module .. "\n\n" .. err)
end
end
local cmd = vim.cmd
local g = vim.g
-- non plugin mappings
require("core.mappings").misc()
g.mapleader = " "
g.auto_save = 0
-- colorscheme related stuff
cmd "syntax on"
local base16 = require "base16"
base16(base16.themes["onedark"], true)
require "highlights"
-- blankline
g.indentLine_enabled = 1
g.indent_blankline_char = "▏"
g.indent_blankline_filetype_exclude = {"help", "terminal", "dashboard"}
g.indent_blankline_buftype_exclude = {"terminal"}
g.indent_blankline_show_trailing_blankline_indent = false
g.indent_blankline_show_first_indent_level = false
require "treesitter-nvim"
require "mappings"
require "telescope-nvim"
require "nvimTree" -- file tree stuff
require "file-icons"
-- git signs , lsp symbols etc
require "gitsigns-nvim"
require("nvim-autopairs").setup()
require("lspkind").init()
-- hide line numbers in terminal windows
vim.api.nvim_exec([[
au BufEnter term://* setlocal nonumber
]], false)
require "zenmode"
require "whichkey"
require "dashboard"
-- check if custom init.lua file exists
if vim.fn.filereadable(vim.fn.stdpath "config" .. "/lua/custom/init.lua") == 1 then
-- try to call custom init, if not successful, show error
local ok, err = pcall(require, "custom")
if not ok then
vim.notify("Error loading custom/init.lua\n\n" .. err)
end
return
end
-49
View File
@@ -1,49 +0,0 @@
#!/bin/sh
get_platform() {
case "$(uname -s)" in
Linux*) platform=Linux ;;
Darwin*) platform=Mac ;;
CYGWIN*) platform=Cygwin ;;
MINGW*) platform=MinGw ;;
*) platform="UNKNOWN:${unameOut}" ;;
esac
echo $platform
}
echo "installing packer"
if [ ! -d ~/.local/share/nvim/site/pack/packer ]; then
echo "Installing packer"
git clone https://github.com/wbthomason/packer.nvim \
~/.local/share/nvim/site/pack/packer/start/packer.nvim
echo
echo "packer installed!"
echo
fi
echo "Linking config"
echo "old nvim config will be deleted so watchout! :0"
echo
# copying config
rm -rf ~/.config/nvim/ && mkdir -p ~/.config/nvim
cp -r init.lua ~/.config/nvim && cp -r lua ~/.config/nvim
# change shell in nvim config
read -p "which shell do you use?: " shellname
echo "$shellname"
if [ "$(get_platform)" = "Mac" ]; then
gsed -i "s/bash/$shellname/g" ~/.config/nvim/lua/mappings.lua
else
sed -i "s/bash/$shellname/g" ~/.config/nvim/lua/mappings.lua
fi
echo "shell changed to $shellname on nvim successfully!"
echo
echo "neovim will open with some errors , just press enter" && sleep 1
# install all plugins
nvim +PackerInstall
+168
View File
@@ -0,0 +1,168 @@
local cmd = vim.cmd
local colors = require("colors").get()
local ui = require("core.utils").load_config().ui
local black = colors.black
local black2 = colors.black2
local blue = colors.blue
local darker_black = colors.darker_black
local folder_bg = colors.folder_bg
local green = colors.green
local grey = colors.grey
local grey_fg = colors.grey_fg
local light_grey = colors.light_grey
local line = colors.line
local nord_blue = colors.nord_blue
local one_bg = colors.one_bg
local one_bg2 = colors.one_bg2
local pmenu_bg = colors.pmenu_bg
local purple = colors.purple
local red = colors.red
local white = colors.white
local yellow = colors.yellow
local orange = colors.orange
local one_bg3 = colors.one_bg3
-- functions for setting highlights
local fg = require("core.utils").fg
local fg_bg = require("core.utils").fg_bg
local bg = require("core.utils").bg
-- Comments
if ui.italic_comments then
fg("Comment", grey_fg .. " gui=italic")
else
fg("Comment", grey_fg)
end
-- Disable cursor line
cmd "hi clear CursorLine"
-- Line number
fg("cursorlinenr", white)
-- same it bg, so it doesn't appear
fg("EndOfBuffer", black)
-- For floating windows
fg("FloatBorder", blue)
bg("NormalFloat", darker_black)
-- Pmenu
bg("Pmenu", one_bg)
bg("PmenuSbar", one_bg2)
bg("PmenuSel", pmenu_bg)
bg("PmenuThumb", nord_blue)
fg("CmpItemAbbr", white)
fg("CmpItemAbbrMatch", white)
fg("CmpItemKind", white)
fg("CmpItemMenu", white)
-- misc
-- inactive statuslines as thin lines
fg("StatusLineNC", one_bg3 .. " gui=underline")
fg("LineNr", grey)
fg("NvimInternalError", red)
fg("VertSplit", one_bg2)
if ui.transparency then
bg("Normal", "NONE")
bg("Folded", "NONE")
fg("Folded", "NONE")
fg("Comment", grey)
end
-- [[ Plugin Highlights
-- Dashboard
fg("AlphaHeader", grey_fg)
fg("AlphaButtons", light_grey)
-- Git signs
fg_bg("DiffAdd", blue, "NONE")
fg_bg("DiffChange", grey_fg, "NONE")
fg_bg("DiffChangeDelete", red, "NONE")
fg_bg("DiffModified", red, "NONE")
fg_bg("DiffDelete", red, "NONE")
-- Indent blankline plugin
fg("IndentBlanklineChar", line)
fg("IndentBlanklineSpaceChar", line)
-- Lsp diagnostics
fg("DiagnosticHint", purple)
fg("DiagnosticError", red)
fg("DiagnosticWarn", yellow)
fg("DiagnosticInformation", green)
-- NvimTree
fg("NvimTreeEmptyFolderName", folder_bg)
fg("NvimTreeEndOfBuffer", darker_black)
fg("NvimTreeFolderIcon", folder_bg)
fg("NvimTreeFolderName", folder_bg)
fg("NvimTreeGitDirty", red)
fg("NvimTreeIndentMarker", one_bg2)
bg("NvimTreeNormal", darker_black)
bg("NvimTreeNormalNC", darker_black)
fg("NvimTreeOpenedFolderName", folder_bg)
fg("NvimTreeRootFolder", red .. " gui=underline") -- enable underline for root folder in nvim tree
fg_bg("NvimTreeStatuslineNc", darker_black, darker_black)
fg_bg("NvimTreeVertSplit", darker_black, darker_black)
fg_bg("NvimTreeWindowPicker", red, black2)
-- Telescope
fg_bg("TelescopeBorder", darker_black, darker_black)
fg_bg("TelescopePromptBorder", black2, black2)
fg_bg("TelescopePromptNormal", white, black2)
fg_bg("TelescopePromptPrefix", red, black2)
bg("TelescopeNormal", darker_black)
fg_bg("TelescopePreviewTitle", black, green)
fg_bg("TelescopePromptTitle", black, red)
fg_bg("TelescopeResultsTitle", darker_black, darker_black)
bg("TelescopeSelection", black2)
-- keybinds cheatsheet
fg_bg("CheatsheetBorder", black, black)
bg("CheatsheetSectionContent", black)
fg("CheatsheetHeading", white)
local section_title_colors = {
white,
blue,
red,
green,
yellow,
purple,
orange,
}
for i, color in ipairs(section_title_colors) do
vim.cmd("highlight CheatsheetTitle" .. i .. " guibg = " .. color .. " guifg=" .. black)
end
-- Disable some highlight in nvim tree if transparency enabled
if ui.transparency then
bg("NormalFloat", "NONE")
bg("NvimTreeNormal", "NONE")
bg("NvimTreeNormalNC", "NONE")
bg("NvimTreeStatusLineNC", "NONE")
fg_bg("NvimTreeVertSplit", grey, "NONE")
-- telescope
bg("TelescopeBorder", "NONE")
bg("TelescopePrompt", "NONE")
bg("TelescopeResults", "NONE")
bg("TelescopePromptBorder", "NONE")
bg("TelescopePromptNormal", "NONE")
bg("TelescopeNormal", "NONE")
bg("TelescopePromptPrefix", "NONE")
fg("TelescopeBorder", one_bg)
fg_bg("TelescopeResultsTitle", black, blue)
end
+52
View File
@@ -0,0 +1,52 @@
local colors = require("core.utils").load_config().ui.colors
local override = require("core.utils").load_config().ui.hl_override
local M = {}
-- if theme given, load given theme if given, otherwise nvchad_theme
M.init = function(theme)
if not theme then
theme = require("core.utils").load_config().ui.theme
end
-- set the global theme, used at various places like theme switcher, highlights
vim.g.nvchad_theme = theme
local present, base16 = pcall(require, "base16")
if present then
-- first load the base16 theme
local ok, array = pcall(base16.themes, theme)
if ok then
base16(array, true)
-- unload to force reload
package.loaded["colors.highlights" or false] = nil
-- then load the highlights
require "colors.highlights"
else
pcall(vim.cmd, "colo " .. theme)
end
else
pcall(vim.cmd, "colo " .. theme)
end
if #override ~= 0 then
package.loaded[override] = nil
require(override)
end
end
-- returns a table of colors for given or current theme
M.get = function(theme)
if #colors ~= 0 then
return require(colors)
else
if not theme then
theme = vim.g.nvchad_theme
end
return require("hl_themes." .. theme)
end
end
return M
-74
View File
@@ -1,74 +0,0 @@
vim.o.completeopt = "menuone,noselect"
require "compe".setup {
enabled = true,
autocomplete = true,
debug = false,
min_length = 1,
preselect = "enable",
throttle_time = 80,
source_timeout = 200,
incomplete_delay = 400,
max_abbr_width = 100,
max_kind_width = 100,
max_menu_width = 100,
documentation = true,
source = {
buffer = {kind = "﬘", true},
vsnip = {kind = "﬌"}, --replace to what sign you prefer
nvim_lsp = true
}
}
local t = function(str)
return vim.api.nvim_replace_termcodes(str, true, true, true)
end
local check_back_space = function()
local col = vim.fn.col(".") - 1
if col == 0 or vim.fn.getline("."):sub(col, col):match("%s") then
return true
else
return false
end
end
-- tab completion
_G.tab_complete = function()
if vim.fn.pumvisible() == 1 then
return t "<C-n>"
elseif check_back_space() then
return t "<Tab>"
else
return vim.fn["compe#complete"]()
end
end
_G.s_tab_complete = function()
if vim.fn.pumvisible() == 1 then
return t "<C-p>"
elseif vim.fn.call("vsnip#jumpable", {-1}) == 1 then
return t "<Plug>(vsnip-jump-prev)"
else
return t "<S-Tab>"
end
end
-- mappings
vim.api.nvim_set_keymap("i", "<Tab>", "v:lua.tab_complete()", {expr = true})
vim.api.nvim_set_keymap("s", "<Tab>", "v:lua.tab_complete()", {expr = true})
vim.api.nvim_set_keymap("i", "<S-Tab>", "v:lua.s_tab_complete()", {expr = true})
vim.api.nvim_set_keymap("s", "<S-Tab>", "v:lua.s_tab_complete()", {expr = true})
function _G.completions()
local npairs = require("nvim-autopairs")
if vim.fn.pumvisible() == 1 then
if vim.fn.complete_info()["selected"] ~= -1 then
return vim.fn["compe#confirm"]("<CR>")
end
end
return npairs.check_break_line_char()
end
vim.api.nvim_set_keymap("i", "<CR>", "v:lua.completions()", {expr = true})
+22
View File
@@ -0,0 +1,22 @@
local settings=require("core.utils").load_config().options.nvChad
-- uncomment this if you want to open nvim with a dir
-- vim.cmd [[ autocmd BufEnter * if &buftype != "terminal" | lcd %:p:h | endif ]]
-- Use relative & absolute line numbers in 'n' & 'i' modes respectively
-- vim.cmd[[ au InsertEnter * set norelativenumber ]]
-- vim.cmd[[ au InsertLeave * set relativenumber ]]
-- Don't show any numbers inside terminals
if not settings.terminal_numbers then
vim.cmd [[ au TermOpen term://* setlocal nonumber norelativenumber | setfiletype terminal ]]
end
-- Don't show status line on certain windows
if not require("core.utils").load_config().plugins.options.statusline.hide_disable then
vim.cmd [[ autocmd BufEnter,BufRead,BufWinEnter,FileType,WinEnter * lua require("core.utils").hide_statusline() ]]
end
-- Open a file from its last left off position
-- vim.cmd [[ au BufReadPost * if expand('%:p') !~# '\m/\.git/' && line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif ]]
-- File extension specific tabbing
-- vim.cmd [[ autocmd Filetype python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4 ]]
+279
View File
@@ -0,0 +1,279 @@
-- IMPORTANT NOTE : This is default config, so dont change anything here.
-- use custom/chadrc.lua instead
local M = {}
M.options = {
-- custom = {}
-- general nvim/vim options , check :h optionname to know more about an option
clipboard = "unnamedplus",
cmdheight = 1,
ruler = false,
hidden = true,
ignorecase = true,
smartcase = true,
mapleader = " ",
mouse = "a",
number = true,
numberwidth = 2,
relativenumber = false,
expandtab = true,
shiftwidth = 2,
smartindent = true,
tabstop = 8,
timeoutlen = 400,
updatetime = 250,
undofile = true,
fillchars = { eob = " " },
shadafile = vim.opt.shadafile,
-- NvChad options
nvChad = {
copy_cut = true, -- copy cut text ( x key ), visual and normal mode
copy_del = true, -- copy deleted text ( dd key ), visual and normal mode
insert_nav = true, -- navigation in insertmode
window_nav = true,
terminal_numbers = false,
-- updater
update_url = "https://github.com/NvChad/NvChad",
update_branch = "main",
},
terminal = {
behavior = {
close_on_exit = true,
},
window = {
vsplit_ratio = 0.5,
split_ratio = 0.4,
},
location = {
horizontal = "rightbelow",
vertical = "rightbelow",
float = {
relative = 'editor',
row = 0.3,
col = 0.25,
width = 0.5,
height = 0.4,
border = "single",
}
},
},
}
---- UI -----
M.ui = {
hl_override = "", -- path of your file that contains highlights
colors = "", -- path of your file that contains colors
italic_comments = false,
theme = "onedark", -- default theme
-- Change terminal bg to nvim theme's bg color so it'll match well
-- For Ex : if you have onedark set in nvchad, set onedark's bg color on your terminal
transparency = false,
}
---- PLUGIN OPTIONS ----
M.plugins = {
-- builtin nvim plugins are disabled
builtins = {
"2html_plugin",
"getscript",
"getscriptPlugin",
"gzip",
"logipat",
"netrw",
"netrwPlugin",
"netrwSettings",
"netrwFileHandlers",
"matchit",
"tar",
"tarPlugin",
"rrhelper",
"spellfile_plugin",
"vimball",
"vimballPlugin",
"zip",
"zipPlugin",
},
-- enable/disable plugins (false for disable)
status = {
blankline = true, -- indentline stuff
bufferline = true, -- manage and preview opened buffers
colorizer = false, -- color RGB, HEX, CSS, NAME color codes
comment = true, -- easily (un)comment code, language aware
alpha = false, -- dashboard
better_escape = true, -- map to <ESC> with no lag
feline = true, -- statusline
gitsigns = true,
lspsignature = true, -- lsp enhancements
vim_matchup = true, -- improved matchit
cmp = true,
nvimtree = true,
autopairs = true,
},
options = {
packer = {
init_file = "plugins.packerInit",
},
autopairs = { loadAfter = "nvim-cmp" },
cmp = {
lazy_load = true,
},
lspconfig = {
setup_lspconf = "", -- path of file containing setups of different lsps
},
nvimtree = {
-- packerCompile required after changing lazy_load
lazy_load = true,
},
luasnip = {
snippet_path = {},
},
statusline = {
hide_disable = false,
-- hide, show on specific filetypes
hidden = {
"help",
"NvimTree",
"terminal",
"alpha",
},
shown = {},
-- truncate statusline on small screens
shortline = true,
style = "default", -- default, round , slant , block , arrow
},
esc_insertmode_timeout = 300,
},
default_plugin_config_replace = {},
default_plugin_remove = {},
install = nil,
}
-- Don't use a single keymap twice
--- MAPPINGS ----
-- non plugin
M.mappings = {
-- custom = {}, -- custom user mappings
misc = {
cheatsheet = "<leader>ch",
close_buffer = "<leader>x",
cp_whole_file = "<C-c>", -- copy all contents of current buffer
lineNR_toggle = "<leader>n", -- toggle line number
lineNR_rel_toggle = "<leader>rn",
update_nvchad = "<leader>uu",
new_buffer = "<S-t>",
new_tab = "<C-t>b",
save_file = "<C-s>", -- save file using :w
},
-- navigation in insert mode, only if enabled in options
insert_nav = {
backward = "<C-h>",
end_of_line = "<C-e>",
forward = "<C-l>",
next_line = "<C-j>",
prev_line = "<C-k>",
beginning_of_line = "<C-a>",
},
-- better window movement
window_nav = {
moveLeft = "<C-h>",
moveRight = "<C-l>",
moveUp = "<C-k>",
moveDown = "<C-j>",
},
-- terminal related mappings
terminal = {
-- multiple mappings can be given for esc_termmode, esc_hide_termmode
-- get out of terminal mode
esc_termmode = { "jk" },
-- get out of terminal mode and hide it
esc_hide_termmode = { "JK" },
-- show & recover hidden terminal buffers in a telescope picker
pick_term = "<leader>W",
-- spawn a single terminal and toggle it
-- this just works like toggleterm kinda
new_horizontal = "<leader>h",
new_vertical = "<leader>v",
new_float = "<A-i>",
-- spawn new terminals
spawn_horizontal = "<A-h>",
spawn_vertical = "<A-v>",
spawn_window = "<leader>w",
},
}
-- plugins related mappings
-- To disable a mapping, equate the variable to "" or false or nil in chadrc
M.mappings.plugins = {
bufferline = {
next_buffer = "<TAB>",
prev_buffer = "<S-Tab>",
},
comment = {
toggle = "<leader>/",
},
-- map to <ESC> with no lag
better_escape = { -- <ESC> will still work
esc_insertmode = { "jk" }, -- multiple mappings allowed
},
lspconfig = {
declaration = "gD",
definition = "gd",
hover = "K",
implementation = "gi",
signature_help = "gk",
add_workspace_folder = "<leader>wa",
remove_workspace_folder = "<leader>wr",
list_workspace_folders = "<leader>wl",
type_definition = "<leader>D",
rename = "<leader>ra",
code_action = "<leader>ca",
references = "gr",
float_diagnostics = "ge",
goto_prev = "[d",
goto_next = "]d",
set_loclist = "<leader>q",
formatting = "<leader>fm",
},
nvimtree = {
toggle = "<C-n>",
focus = "<leader>e",
},
telescope = {
buffers = "<leader>fb",
find_files = "<leader>ff",
find_hiddenfiles = "<leader>fa",
git_commits = "<leader>cm",
git_status = "<leader>gt",
help_tags = "<leader>fh",
live_grep = "<leader>fw",
oldfiles = "<leader>fo",
themes = "<leader>th", -- NvChad theme picker
},
}
return M
+207
View File
@@ -0,0 +1,207 @@
local utils = require "core.utils"
local config = utils.load_config()
local map_wrapper = utils.map
local maps = config.mappings
local plugin_maps = maps.plugins
local nvChad_options = config.options.nvChad
local terminal_options = config.options.terminal
local cmd = vim.cmd
-- This is a wrapper function made to disable a plugin mapping from chadrc
-- If keys are nil, false or empty string, then the mapping will be not applied
-- Useful when one wants to use that keymap for any other purpose
local map = function(...)
local keys = select(2, ...)
if not keys or keys == "" then
return
end
map_wrapper(...)
end
local M = {}
-- these mappings will only be called during initialization
M.misc = function()
local function non_config_mappings()
-- Don't copy the replaced text after pasting in visual mode
map_wrapper("v", "p", "p:let @+=@0<CR>")
-- Allow moving the cursor through wrapped lines with j, k, <Up> and <Down>
-- http://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/
-- empty mode is same as using :map
-- also don't use g[j|k] when in operator pending mode, so it doesn't alter d, y or c behaviour
map_wrapper({ "n", "x", "o" }, "j", 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', { expr = true })
map_wrapper({ "n", "x", "o" }, "k", 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', { expr = true })
map_wrapper("", "<Down>", 'v:count || mode(1)[0:1] == "no" ? "j" : "gj"', { expr = true })
map_wrapper("", "<Up>", 'v:count || mode(1)[0:1] == "no" ? "k" : "gk"', { expr = true })
-- use ESC to turn off search highlighting
map_wrapper("n", "<Esc>", ":noh <CR>")
-- center cursor when moving (goto_definition)
end
local function optional_mappings()
-- don't yank text on cut ( x )
if not nvChad_options.copy_cut then
map_wrapper({ "n", "v" }, "x", '"_x')
end
-- don't yank text on delete ( dd )
if not nvChad_options.copy_del then
map_wrapper({ "n", "v" }, "d", '"_d')
end
-- navigation within insert mode
if nvChad_options.insert_nav then
local inav = maps.insert_nav
map("i", inav.backward, "<Left>")
map("i", inav.end_of_line, "<End>")
map("i", inav.forward, "<Right>")
map("i", inav.next_line, "<Down>")
map("i", inav.prev_line, "<Up>")
map("i", inav.beginning_of_line, "<ESC>^i")
end
-- easier navigation between windows
if nvChad_options.window_nav then
local wnav = maps.window_nav
map("n", wnav.moveLeft, "<C-w>h")
map("n", wnav.moveRight, "<C-w>l")
map("n", wnav.moveUp, "<C-w>k")
map("n", wnav.moveDown, "<C-w>j")
end
end
local function required_mappings()
map("n", maps.misc.cheatsheet, ":lua require('nvchad.cheatsheet').show() <CR>") -- show keybinds
map("n", maps.misc.close_buffer, ":lua require('core.utils').close_buffer() <CR>") -- close buffer
map("n", maps.misc.cp_whole_file, ":%y+ <CR>") -- copy whole file content
map("n", maps.misc.new_buffer, ":enew <CR>") -- new buffer
map("n", maps.misc.new_tab, ":tabnew <CR>") -- new tabs
map("n", maps.misc.lineNR_toggle, ":set nu! <CR>")
map("n", maps.misc.lineNR_rel_toggle, ":set rnu! <CR>") -- relative line numbers
map("n", maps.misc.save_file, ":w <CR>") -- ctrl + s to save file
-- terminal mappings --
local term_maps = maps.terminal
-- get out of terminal mode
map("t", term_maps.esc_termmode, "<C-\\><C-n>")
-- hide a term from within terminal mode
map("t", term_maps.esc_hide_termmode, "<CMD>lua require('nvchad.terminal').hide() <CR>")
-- pick a hidden term
map("n", term_maps.pick_term, ":Telescope terms <CR>")
-- Open terminals
-- TODO this opens on top of an existing vert/hori term, fixme
map(
{ "n", "t" },
term_maps.new_horizontal,
"<CMD>lua require('nvchad.terminal').new_or_toggle('horizontal', "
.. tostring(terminal_options.window.split_height)
.. ")<CR>"
)
map(
{ "n", "t" },
term_maps.new_vertical,
"<CMD>lua require('nvchad.terminal').new_or_toggle('vertical', "
.. tostring(terminal_options.window.vsplit_width)
.. ")<CR>"
)
map(
{ "n", "t" },
term_maps.new_float,
"<CMD>lua require('nvchad.terminal').new_or_toggle('float')<CR>"
)
-- spawns terminals
map(
"n",
term_maps.spawn_horizontal,
":execute 15 .. 'new +terminal' | let b:term_type = 'hori' | startinsert <CR>"
)
map("n", term_maps.spawn_vertical, ":execute 'vnew +terminal' | let b:term_type = 'vert' | startinsert <CR>")
map("n", term_maps.spawn_window, ":execute 'terminal' | let b:term_type = 'wind' | startinsert <CR>")
-- terminal mappings end --
-- Add Packer commands because we are not loading it at startup
cmd "silent! command PackerClean lua require 'plugins' require('packer').clean()"
cmd "silent! command PackerCompile lua require 'plugins' require('packer').compile()"
cmd "silent! command PackerInstall lua require 'plugins' require('packer').install()"
cmd "silent! command PackerStatus lua require 'plugins' require('packer').status()"
cmd "silent! command PackerSync lua require 'plugins' require('packer').sync()"
cmd "silent! command PackerUpdate lua require 'plugins' require('packer').update()"
-- add NvChadUpdate command and mapping
cmd "silent! command! NvChadUpdate lua require('nvchad').update_nvchad()"
map("n", maps.misc.update_nvchad, ":NvChadUpdate <CR>")
end
non_config_mappings()
optional_mappings()
required_mappings()
end
-- below are all plugin related mappings
M.bufferline = function()
local m = plugin_maps.bufferline
map("n", m.next_buffer, ":BufferLineCycleNext <CR>")
map("n", m.prev_buffer, ":BufferLineCyclePrev <CR>")
end
M.comment = function()
local m = plugin_maps.comment.toggle
map("n", m, ":lua require('Comment.api').toggle_current_linewise()<CR>")
map("v", m, ":lua require('Comment.api').toggle_linewise_op(vim.fn.visualmode())<CR>")
end
M.lspconfig = function()
local m = plugin_maps.lspconfig
-- See `:help vim.lsp.*` for documentation on any of the below functions
map("n", m.declaration, "<cmd>lua vim.lsp.buf.declaration()<CR>")
map("n", m.definition, "<cmd>lua vim.lsp.buf.definition()<CR>")
map("n", m.hover, "<cmd>lua vim.lsp.buf.hover()<CR>")
map("n", m.implementation, "<cmd>lua vim.lsp.buf.implementation()<CR>")
map("n", m.signature_help, "<cmd>lua vim.lsp.buf.signature_help()<CR>")
map("n", m.add_workspace_folder, "<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>")
map("n", m.remove_workspace_folder, "<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>")
map("n", m.list_workspace_folders, "<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>")
map("n", m.type_definition, "<cmd>lua vim.lsp.buf.type_definition()<CR>")
map("n", m.rename, "<cmd>lua vim.lsp.buf.rename()<CR>")
map("n", m.code_action, "<cmd>lua vim.lsp.buf.code_action()<CR>")
map("n", m.references, "<cmd>lua vim.lsp.buf.references()<CR>")
map("n", m.float_diagnostics, "<cmd>lua vim.diagnostic.open_float()<CR>")
map("n", m.goto_prev, "<cmd>lua vim.diagnostic.goto_prev()<CR>")
map("n", m.goto_next, "<cmd>lua vim.diagnostic.goto_next()<CR>")
map("n", m.set_loclist, "<cmd>lua vim.diagnostic.setloclist()<CR>")
map("n", m.formatting, "<cmd>lua vim.lsp.buf.formatting()<CR>")
end
M.nvimtree = function()
map("n", plugin_maps.nvimtree.toggle, ":NvimTreeToggle <CR>")
map("n", plugin_maps.nvimtree.focus, ":NvimTreeFocus <CR>")
end
M.telescope = function()
local m = plugin_maps.telescope
map("n", m.buffers, ":Telescope buffers <CR>")
map("n", m.find_files, ":Telescope find_files <CR>")
map("n", m.find_hiddenfiles, ":Telescope find_files follow=true no_ignore=true hidden=true <CR>")
map("n", m.git_commits, ":Telescope git_commits <CR>")
map("n", m.git_status, ":Telescope git_status <CR>")
map("n", m.help_tags, ":Telescope help_tags <CR>")
map("n", m.live_grep, ":Telescope live_grep <CR>")
map("n", m.oldfiles, ":Telescope oldfiles <CR>")
map("n", m.themes, ":Telescope themes <CR>")
end
return M
+63
View File
@@ -0,0 +1,63 @@
local opt = vim.opt
local g = vim.g
local options = require("core.utils").load_config().options
opt.title = true
opt.clipboard = options.clipboard
opt.cmdheight = options.cmdheight
opt.cul = true -- cursor line
-- Indentline
opt.expandtab = options.expandtab
opt.shiftwidth = options.shiftwidth
opt.smartindent = options.smartindent
-- disable tilde on end of buffer: https://github.com/neovim/neovim/pull/8546#issuecomment-643643758
opt.fillchars = options.fillchars
opt.hidden = options.hidden
opt.ignorecase = options.ignorecase
opt.smartcase = options.smartcase
opt.mouse = options.mouse
-- Numbers
opt.number = options.number
opt.numberwidth = options.numberwidth
opt.relativenumber = options.relativenumber
opt.ruler = options.ruler
-- disable nvim intro
opt.shortmess:append "sI"
opt.signcolumn = "yes"
opt.splitbelow = true
opt.splitright = true
opt.tabstop = options.tabstop
opt.termguicolors = true
opt.timeoutlen = options.timeoutlen
opt.undofile = options.undofile
-- interval for writing swap file to disk, also used by gitsigns
opt.updatetime = options.updatetime
-- go to previous/next line with h,l,left arrow and right arrow
-- when cursor reaches end/beginning of line
opt.whichwrap:append "<>[]hl"
g.mapleader = options.mapleader
-- disable some builtin vim plugins
local disabled_built_ins = require("core.utils").load_config().plugins.builtins
for _, plugin in pairs(disabled_built_ins) do
g["loaded_" .. plugin] = 1
end
--Defer loading shada until after startup_
vim.opt.shadafile = "NONE"
vim.schedule(function()
vim.opt.shadafile = require("core.utils").load_config().options.shadafile
vim.cmd [[ silent! rsh ]]
end)
+321
View File
@@ -0,0 +1,321 @@
local M = {}
local cmd = vim.cmd
M.close_buffer = function(force)
-- This is a modification of a NeoVim plugin from
-- Author: ojroques - Olivier Roques
-- Src: https://github.com/ojroques/nvim-bufdel
-- (Author has okayed copy-paste)
-- Options
local opts = {
next = "cycle", -- how to retrieve the next buffer
quit = false, -- exit when last buffer is deleted
--TODO make this a chadrc flag/option
}
-- ----------------
-- Helper functions
-- ----------------
-- Switch to buffer 'buf' on each window from list 'windows'
local function switch_buffer(windows, buf)
local cur_win = vim.fn.winnr()
for _, winid in ipairs(windows) do
winid = tonumber(winid) or 0
vim.cmd(string.format("%d wincmd w", vim.fn.win_id2win(winid)))
vim.cmd(string.format("buffer %d", buf))
end
vim.cmd(string.format("%d wincmd w", cur_win)) -- return to original window
end
-- Select the first buffer with a number greater than given buffer
local function get_next_buf(buf)
local next = vim.fn.bufnr "#"
if opts.next == "alternate" and vim.fn.buflisted(next) == 1 then
return next
end
for i = 0, vim.fn.bufnr "$" - 1 do
next = (buf + i) % vim.fn.bufnr "$" + 1 -- will loop back to 1
if vim.fn.buflisted(next) == 1 then
return next
end
end
end
-- ----------------
-- End helper functions
-- ----------------
local buf = vim.fn.bufnr()
if vim.fn.buflisted(buf) == 0 then -- exit if buffer number is invalid
vim.cmd "close"
return
end
if #vim.fn.getbufinfo { buflisted = 1 } < 2 then
if opts.quit then
-- exit when there is only one buffer left
if force then
vim.cmd "qall!"
else
vim.cmd "confirm qall"
end
return
end
local chad_term, _ = pcall(function()
return vim.api.nvim_buf_get_var(buf, "term_type")
end)
if chad_term then
-- Must be a window type
vim.cmd(string.format("setlocal nobl", buf))
vim.cmd "enew"
return
end
-- don't exit and create a new empty buffer
vim.cmd "enew"
vim.cmd "bp"
end
local next_buf = get_next_buf(buf)
local windows = vim.fn.getbufinfo(buf)[1].windows
-- force deletion of terminal buffers to avoid the prompt
if force or vim.fn.getbufvar(buf, "&buftype") == "terminal" then
local chad_term, type = pcall(function()
return vim.api.nvim_buf_get_var(buf, "term_type")
end)
-- TODO this scope is error prone, make resilient
if chad_term then
if type == "wind" then
-- hide from bufferline
vim.cmd(string.format("%d bufdo setlocal nobl", buf))
-- switch to another buff
-- TODO switch to next buffer, this works too
vim.cmd "BufferLineCycleNext"
else
local cur_win = vim.fn.winnr()
-- we can close this window
vim.cmd(string.format("%d wincmd c", cur_win))
return
end
else
switch_buffer(windows, next_buf)
vim.cmd(string.format("bd! %d", buf))
end
else
switch_buffer(windows, next_buf)
vim.cmd(string.format("silent! confirm bd %d", buf))
end
-- revert buffer switches if user has canceled deletion
if vim.fn.buflisted(buf) == 1 then
switch_buffer(windows, buf)
end
end
-- hide statusline
-- tables fetched from load_config function
M.hide_statusline = function()
local hidden = require("core.utils").load_config().plugins.options.statusline.hidden
local shown = require("core.utils").load_config().plugins.options.statusline.shown
local api = vim.api
local buftype = api.nvim_buf_get_option(0, "ft")
-- shown table from config has the highest priority
if vim.tbl_contains(shown, buftype) then
api.nvim_set_option("laststatus", 2)
return
end
if vim.tbl_contains(hidden, buftype) then
api.nvim_set_option("laststatus", 0)
return
end
api.nvim_set_option("laststatus", 2)
end
M.load_config = function()
local conf = require "core.default_config"
-- attempt to load and merge a user config
local chadrc_exists = vim.fn.filereadable(vim.fn.stdpath "config" .. "/lua/custom/chadrc.lua") == 1
if chadrc_exists then
-- merge user config if it exists and is a table; otherwise display an error
local user_config = require "custom.chadrc"
if type(user_config) == 'table' then
conf = vim.tbl_deep_extend("force", conf, user_config)
else
error("User config (chadrc.lua) *must* return a table!")
end
end
return conf
end
M.map = function(mode, keys, command, opt)
local options = { noremap = true, silent = true }
if opt then
options = vim.tbl_extend("force", options, opt)
end
-- all valid modes allowed for mappings
-- :h map-modes
local valid_modes = {
[""] = true,
["n"] = true,
["v"] = true,
["s"] = true,
["x"] = true,
["o"] = true,
["!"] = true,
["i"] = true,
["l"] = true,
["c"] = true,
["t"] = true,
}
-- helper function for M.map
-- can gives multiple modes and keys
local function map_wrapper(sub_mode, lhs, rhs, sub_options)
if type(lhs) == "table" then
for _, key in ipairs(lhs) do
map_wrapper(sub_mode, key, rhs, sub_options)
end
else
if type(sub_mode) == "table" then
for _, m in ipairs(sub_mode) do
map_wrapper(m, lhs, rhs, sub_options)
end
else
if valid_modes[sub_mode] and lhs and rhs then
vim.api.nvim_set_keymap(sub_mode, lhs, rhs, sub_options)
else
sub_mode, lhs, rhs = sub_mode or "", lhs or "", rhs or ""
print(
"Cannot set mapping [ mode = '" .. sub_mode .. "' | key = '" .. lhs .. "' | cmd = '" .. rhs .. "' ]"
)
end
end
end
end
map_wrapper(mode, keys, command, options)
end
-- load plugin after entering vim ui
M.packer_lazy_load = function(plugin, timer)
if plugin then
timer = timer or 0
vim.defer_fn(function()
require("packer").loader(plugin)
end, timer)
end
end
-- Highlights functions
-- Define bg color
-- @param group Group
-- @param color Color
M.bg = function(group, col)
cmd("hi " .. group .. " guibg=" .. col)
end
-- Define fg color
-- @param group Group
-- @param color Color
M.fg = function(group, col)
cmd("hi " .. group .. " guifg=" .. col)
end
-- Define bg and fg color
-- @param group Group
-- @param fgcol Fg Color
-- @param bgcol Bg Color
M.fg_bg = function(group, fgcol, bgcol)
cmd("hi " .. group .. " guifg=" .. fgcol .. " guibg=" .. bgcol)
end
-- Override default config of a plugin based on the path provided in the chadrc
-- Arguments:
-- 1st - name of plugin
-- 2nd - default config path
-- 3rd - optional function name which will called from default_config path
-- e.g: if given args - "telescope", "plugins.configs.telescope", "setup"
-- then return "require('plugins.configs.telescope').setup()"
-- if 3rd arg not given, then return "require('plugins.configs.telescope')"
-- if override is a table, mark set the override flag for the default config to true
-- override flag being true tells the plugin to call tbl_override_req as part of configuration
M.override_req = function(name, default_config, config_function)
local override, apply_table_override =
require("core.utils").load_config().plugins.default_plugin_config_replace[name], "false"
local result = default_config
if type(override) == "string" and override ~= "" then
return "require('" .. override .. "')"
elseif type(override) == "table" then
apply_table_override = "true"
elseif type(override) == "function" then
return override
end
result = "('" .. result .. "')"
if type(config_function) == "string" and config_function ~= "" then
-- add the . to call the functions and concatenate true or false as argument
result = result .. "." .. config_function .. "(" .. apply_table_override .. ")"
end
return "require" .. result
end
-- Override parts of default config of a plugin based on the table provided in the chadrc
-- FUNCTION: tbl_override_req, use `chadrc` plugin config override to modify default config if present
-- name = name inside `default_config` / `chadrc`
-- default_table = the default configuration table of the plugin
-- returns the modified configuration table
M.tbl_override_req = function(name, default_table)
local override = require("core.utils").load_config().plugins.default_plugin_config_replace[name] or {}
return vim.tbl_deep_extend("force", default_table, override)
end
--provide labels to plugins instead of integers
M.label_plugins = function(plugins)
local plugins_labeled = {}
for _, plugin in ipairs(plugins) do
plugins_labeled[plugin[1]] = plugin
end
return plugins_labeled
end
-- remove plugins specified by user from the plugins table
M.remove_default_plugins = function(plugins)
local removals = require("core.utils").load_config().plugins.default_plugin_remove or {}
if not vim.tbl_isempty(removals) then
for _, plugin in pairs(removals) do
plugins[plugin] = nil
end
end
return plugins
end
-- append user plugins to default plugins
M.add_user_plugins = function(plugins)
local user_Plugins = require("core.utils").load_config().plugins.install or {}
if type(user_Plugins) == "string"
then user_Plugins=require(user_Plugins)
end
if not vim.tbl_isempty(user_Plugins) then
for _, v in pairs(user_Plugins) do
plugins[v[1]] = v
end
end
return plugins
end
return M
-28
View File
@@ -1,28 +0,0 @@
local g = vim.g
g.dashboard_default_executive = "telescope"
g.dashboard_custom_header = {
" ",
" ",
" ⣴⣶⣤⡤⠦⣤⣀⣤⠆ ⣈⣭⣿⣶⣿⣦⣼⣆ ",
" ⠉⠻⢿⣿⠿⣿⣿⣶⣦⠤⠄⡠⢾⣿⣿⡿⠋⠉⠉⠻⣿⣿⡛⣦ ",
" ⠈⢿⣿⣟⠦ ⣾⣿⣿⣷ ⠻⠿⢿⣿⣧⣄ ",
" ⣸⣿⣿⢧ ⢻⠻⣿⣿⣷⣄⣀⠄⠢⣀⡀⠈⠙⠿⠄ ",
" ⢠⣿⣿⣿⠈ ⣻⣿⣿⣿⣿⣿⣿⣿⣛⣳⣤⣀⣀ ",
" ⢠⣧⣶⣥⡤⢄ ⣸⣿⣿⠘ ⢀⣴⣿⣿⡿⠛⣿⣿⣧⠈⢿⠿⠟⠛⠻⠿⠄ ",
" ⣰⣿⣿⠛⠻⣿⣿⡦⢹⣿⣷ ⢊⣿⣿⡏ ⢸⣿⣿⡇ ⢀⣠⣄⣾⠄ ",
" ⣠⣿⠿⠛ ⢀⣿⣿⣷⠘⢿⣿⣦⡀ ⢸⢿⣿⣿⣄ ⣸⣿⣿⡇⣪⣿⡿⠿⣿⣷⡄ ",
" ⠙⠃ ⣼⣿⡟ ⠈⠻⣿⣿⣦⣌⡇⠻⣿⣿⣷⣿⣿⣿ ⣿⣿⡇ ⠛⠻⢷⣄ ",
" ⢻⣿⣿⣄ ⠈⠻⣿⣿⣿⣷⣿⣿⣿⣿⣿⡟ ⠫⢿⣿⡆ ",
" ⠻⣿⣿⣿⣿⣶⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⡟⢀⣀⣤⣾⡿⠃ ",
" "
}
g.dashboard_custom_section = {
a = {description = {" Find File SPC f f"}, command = "Telescope find_files"},
b = {description = {" Recents SPC f o"}, command = "Telescope oldfiles"},
c = {description = {" Find Word SPC f w"}, command = "Telescope live_grep"},
d = {description = {"洛 New File SPC f n"}, command = "DashboardNewFile"},
e = {description = {"󰓏 Bookmarks SPC f b"}, command = "Telescope marks"},
f = {description = {" Load Last Session SPC f s"}, command = "SessionLoad"}
}
-111
View File
@@ -1,111 +0,0 @@
local colors = require "themes/onedark"
require "nvim-web-devicons".setup {
override = {
html = {
icon = "",
color = colors.baby_pink,
name = "html"
},
css = {
icon = "",
color = colors.blue,
name = "css"
},
js = {
icon = "",
color = colors.sun,
name = "js"
},
ts = {
icon = "ﯤ",
color = colors.teal,
name = "ts"
},
kt = {
icon = "󱈙",
color = colors.orange,
name = "kt"
},
png = {
icon = "",
color = colors.dark_purple,
name = "png"
},
jpg = {
icon = "",
color = colors.dark_purple,
name = "jpg"
},
jpeg = {
icon = "",
color = "colors.dark_purple",
name = "jpeg"
},
mp3 = {
icon = "",
color = colors.white,
name = "mp3"
},
mp4 = {
icon = "",
color = colors.white,
name = "mp4"
},
out = {
icon = "",
color = colors.white,
name = "out"
},
Dockerfile = {
icon = "",
color = colors.cyan,
name = "Dockerfile"
},
rb = {
icon = "",
color = colors.pink,
name = "rb"
},
vue = {
icon = "﵂",
color = colors.vibrant_green,
name = "vue"
},
py = {
icon = "",
color = colors.cyan,
name = "py"
},
toml = {
icon = "",
color = colors.blue,
name = "toml"
},
lock = {
icon = "",
color = colors.red,
name = "lock"
},
zip = {
icon = "",
color = colors.sun,
name = "zip"
},
xz = {
icon = "",
color = colors.sun,
name = "xz"
},
deb = {
icon = "",
color = colors.cyan,
name = "deb"
},
rpm = {
icon = "",
color = colors.orange,
name = "rpm"
}
}
}
-27
View File
@@ -1,27 +0,0 @@
require("gitsigns").setup {
signs = {
add = {hl = "DiffAdd", text = "▌", numhl = "GitSignsAddNr"},
change = {hl = "DiffChange", text = "▌", numhl = "GitSignsChangeNr"},
delete = {hl = "DiffDelete", text = "_", numhl = "GitSignsDeleteNr"},
topdelete = {hl = "DiffDelete", text = "‾", numhl = "GitSignsDeleteNr"},
changedelete = {hl = "DiffChange", text = "~", numhl = "GitSignsChangeNr"}
},
numhl = false,
keymaps = {
-- Default keymap options
noremap = true,
buffer = true,
["n ]c"] = {expr = true, '&diff ? \']c\' : \'<cmd>lua require"gitsigns".next_hunk()<CR>\''},
["n [c"] = {expr = true, '&diff ? \'[c\' : \'<cmd>lua require"gitsigns".prev_hunk()<CR>\''},
["n <leader>hs"] = '<cmd>lua require"gitsigns".stage_hunk()<CR>',
["n <leader>hu"] = '<cmd>lua require"gitsigns".undo_stage_hunk()<CR>',
["n <leader>hr"] = '<cmd>lua require"gitsigns".reset_hunk()<CR>',
["n <leader>hp"] = '<cmd>lua require"gitsigns".preview_hunk()<CR>',
["n <leader>hb"] = '<cmd>lua require"gitsigns".blame_line()<CR>'
},
watch_index = {
interval = 100
},
sign_priority = 5,
status_formatter = nil -- Use default
}
-137
View File
@@ -1,137 +0,0 @@
local cmd = vim.cmd
local colors = require "themes/onedark"
local white = colors.white
local darker_black = colors.darker_black
local black = colors.black
local black2 = colors.black2
local one_bg = colors.one_bg
local one_bg2 = colors.one_bg2
local one_bg3 = colors.one_bg3
local light_grey = colors.light_grey
local grey = colors.grey
local grey_fg = colors.grey_fg
local red = colors.red
local line = colors.line
local green = colors.green
local nord_blue = colors.nord_blue
local blue = colors.blue
local yellow = colors.yellow
local purple = colors.purple
-- for guifg , bg
local function fg(group, color)
cmd("hi " .. group .. " guifg=" .. color)
end
local function bg(group, color)
cmd("hi " .. group .. " guibg=" .. color)
end
local function fg_bg(group, fgcol, bgcol)
cmd("hi " .. group .. " guifg=" .. fgcol .. " guibg=" .. bgcol)
end
-- blankline
fg("IndentBlanklineChar", line)
-- misc --
fg("LineNr", grey)
fg("Comment", grey)
fg("NvimInternalError", red)
fg("VertSplit", line)
fg("EndOfBuffer", black)
-- Pmenu
bg("Pmenu", one_bg)
bg("PmenuSbar", one_bg2)
bg("PmenuSel", green)
bg("PmenuThumb", nord_blue)
-- inactive statuslines as thin splitlines
cmd("hi! StatusLineNC gui=underline guifg=" .. line)
-- line n.o
cmd "hi clear CursorLine"
fg("cursorlinenr", white)
-- git signs ---
fg_bg("DiffAdd", nord_blue, "none")
fg_bg("DiffChange", one_bg2, "none")
fg_bg("DiffModified", nord_blue, "none")
-- NvimTree
fg("NvimTreeFolderIcon", blue)
fg("NvimTreeFolderName", blue)
fg("NvimTreeIndentMarker", one_bg2)
fg("NvimTreeVertSplit", darker_black)
bg("NvimTreeVertSplit", darker_black)
fg("NvimTreeRootFolder", darker_black)
bg("NvimTreeNormal", darker_black)
fg_bg("NvimTreeStatuslineNc", darker_black, darker_black)
-- telescope
fg("TelescopeBorder", line)
fg("TelescopePromptBorder", line)
fg("TelescopeResultsBorder", line)
fg("TelescopePreviewBorder", grey)
-- LspDiagnostics ---
-- error / warnings
fg("LspDiagnosticsSignError", red)
fg("LspDiagnosticsVirtualTextError", red)
fg("LspDiagnosticsSignWarning", yellow)
fg("LspDiagnosticsVirtualTextWarning", yellow)
-- info
fg("LspDiagnosticsSignInformation", green)
fg("LspDiagnosticsVirtualTextInformation", green)
-- hint
fg("LspDiagnosticsSignHint", purple)
fg("LspDiagnosticsVirtualTextHint", purple)
-- bufferline
fg_bg("BufferLineFill", grey_fg, black2)
fg_bg("BufferLineBackground", light_grey, black2)
fg_bg("BufferLineBufferVisible", light_grey, black2)
fg_bg("BufferLineBufferSelected", white, black)
cmd "hi BufferLineBufferSelected gui=bold"
-- tabs
fg_bg("BufferLineTab", light_grey, one_bg3)
fg_bg("BufferLineTabSelected", black2, nord_blue)
fg_bg("BufferLineTabClose", red, black)
fg_bg("BufferLineIndicator", black2, black2)
fg_bg("BufferLineIndicatorSelected", black, black)
-- separators
fg_bg("BufferLineSeparator", line, black2)
fg_bg("BufferLineSeparatorVisible", line, black2)
fg_bg("BufferLineSeparatorSelected", black, black2)
-- modified buffers
fg_bg("BufferLineModified", red, black2)
fg_bg("BufferLineModifiedVisible", red, black2)
fg_bg("BufferLineModifiedSelected", green, black)
-- close buttons
fg_bg("BufferLineCLoseButtonVisible", light_grey, black2)
fg_bg("BufferLineCLoseButton", light_grey, black2)
fg_bg("BufferLineCLoseButtonSelected", red, black)
-- dashboard
fg("DashboardHeader", grey_fg)
fg("DashboardCenter", grey_fg)
fg("DashboardShortcut", grey_fg)
fg("DashboardFooter", black)
-35
View File
@@ -1,35 +0,0 @@
local function map(mode, lhs, rhs, opts)
local options = {noremap = true}
if opts then
options = vim.tbl_extend("force", options, opts)
end
vim.api.nvim_set_keymap(mode, lhs, rhs, options)
end
local opt = {}
-- dont copy any deleted text , this is disabled by default so uncomment the below mappings if you want them!
--[[ remove this line
map("n", "dd", [=[ "_dd ]=], opt)
map("v", "dd", [=[ "_dd ]=], opt)
map("v", "x", [=[ "_x ]=], opt)
this line too ]]
-- OPEN TERMINALS --
map("n", "<C-l>", [[<Cmd>vnew term://bash <CR>]], opt) -- term over right
map("n", "<C-x>", [[<Cmd> split term://bash | resize 10 <CR>]], opt) -- term bottom
map("n", "<C-t>t", [[<Cmd> tabnew | term <CR>]], opt) -- term newtab
-- COPY EVERYTHING --
map("n", "<C-a>", [[ <Cmd> %y+<CR>]], opt)
-- toggle numbers ---
map("n", "<leader>n", [[ <Cmd> set nu!<CR>]], opt)
-- toggle truezen.nvim's ataraxis and minimalist mode
map("n", "<leader>z", [[ <Cmd> TZAtaraxis<CR>]], opt)
map("n", "<leader>m", [[ <Cmd> TZMinimalist<CR>]], opt)
map("n", "<C-s>", [[ <Cmd> w <CR>]], opt)
-- vim.cmd("inoremap jh <Esc>")
-45
View File
@@ -1,45 +0,0 @@
local scopes = {o = vim.o, b = vim.bo, w = vim.wo}
local function opt(scope, key, value)
scopes[scope][key] = value
if scope ~= "o" then
scopes["o"][key] = value
end
end
opt("o", "hidden", true)
opt("o", "ignorecase", true)
opt("o", "splitbelow", true)
opt("o", "splitright", true)
opt("o", "termguicolors", true)
opt("w", "number", true)
opt("o", "numberwidth", 2)
opt("w", "cul", true)
opt("o", "mouse", "a")
opt("w", "signcolumn", "yes")
opt("o", "cmdheight", 1)
opt("o", "updatetime", 250) -- update interval for gitsigns
opt("o", "clipboard", "unnamedplus")
opt("o", "timeoutlen", 500)
-- for indenline
opt("b", "expandtab", true)
opt("b", "shiftwidth", 2)
local M = {}
function M.is_buffer_empty()
-- Check whether the current buffer is empty
return vim.fn.empty(vim.fn.expand("%:t")) == 1
end
function M.has_width_gt(cols)
-- Check if the windows width is greater than a given number of columns
return vim.fn.winwidth(0) / 2 > cols
end
-- file extension specific tabbing
vim.cmd([[autocmd Filetype python setlocal expandtab tabstop=4 shiftwidth=4 softtabstop=4]])
return M
-90
View File
@@ -1,90 +0,0 @@
function on_attach(client, bufnr)
local function buf_set_keymap(...)
vim.api.nvim_buf_set_keymap(bufnr, ...)
end
local function buf_set_option(...)
vim.api.nvim_buf_set_option(bufnr, ...)
end
buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
-- Mappings.
local opts = {noremap = true, silent = true}
buf_set_keymap("n", "gD", "<Cmd>lua vim.lsp.buf.declaration()<CR>", opts)
buf_set_keymap("n", "gd", "<Cmd>lua vim.lsp.buf.definition()<CR>", opts)
buf_set_keymap("n", "K", "<Cmd>lua vim.lsp.buf.hover()<CR>", opts)
buf_set_keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts)
buf_set_keymap("n", "<C-k>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts)
buf_set_keymap("n", "<space>wa", "<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>", opts)
buf_set_keymap("n", "<space>wr", "<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>", opts)
buf_set_keymap("n", "<space>wl", "<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>", opts)
buf_set_keymap("n", "<space>D", "<cmd>lua vim.lsp.buf.type_definition()<CR>", opts)
buf_set_keymap("n", "<space>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
buf_set_keymap("n", "gr", "<cmd>lua vim.lsp.buf.references()<CR>", opts)
buf_set_keymap("n", "<space>e", "<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>", opts)
buf_set_keymap("n", "[d", "<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>", opts)
buf_set_keymap("n", "]d", "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts)
buf_set_keymap("n", "<space>q", "<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>", opts)
-- Set some keybinds conditional on server capabilities
if client.resolved_capabilities.document_formatting then
buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.formatting()<CR>", opts)
elseif client.resolved_capabilities.document_range_formatting then
buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.range_formatting()<CR>", opts)
end
end
-- lspInstall + lspconfig stuff
local function setup_servers()
require "lspinstall".setup()
local lspconf = require("lspconfig")
local servers = require "lspinstall".installed_servers()
for _, lang in pairs(servers) do
if lang ~= "lua" then
lspconf[lang].setup {
on_attach = on_attach,
root_dir = vim.loop.cwd
}
elseif lang == "lua" then
lspconf[lang].setup {
root_dir = function()
return vim.loop.cwd()
end,
settings = {
Lua = {
diagnostics = {
globals = {"vim"}
},
workspace = {
library = {
[vim.fn.expand("$VIMRUNTIME/lua")] = true,
[vim.fn.expand("$VIMRUNTIME/lua/vim/lsp")] = true
}
},
telemetry = {
enable = false
}
}
}
}
end
end
end
setup_servers()
-- Automatically reload after `:LspInstall <server>` so we don't have to restart neovim
require "lspinstall".post_install_hook = function()
setup_servers() -- reload installed servers
vim.cmd("bufdo e") -- this triggers the FileType autocmd that starts the server
end
-- replace the default lsp diagnostic letters with prettier symbols
vim.fn.sign_define("LspDiagnosticsSignError", {text = "", numhl = "LspDiagnosticsDefaultError"})
vim.fn.sign_define("LspDiagnosticsSignWarning", {text = "", numhl = "LspDiagnosticsDefaultWarning"})
vim.fn.sign_define("LspDiagnosticsSignInformation", {text = "", numhl = "LspDiagnosticsDefaultInformation"})
vim.fn.sign_define("LspDiagnosticsSignHint", {text = "", numhl = "LspDiagnosticsDefaultHint"})
-93
View File
@@ -1,93 +0,0 @@
local g = vim.g
vim.o.termguicolors = true
g.nvim_tree_side = "left"
g.nvim_tree_width = 25
g.nvim_tree_ignore = {".git", "node_modules", ".cache"}
g.nvim_tree_auto_open = 0
g.nvim_tree_auto_close = 0
g.nvim_tree_quit_on_open = 0
g.nvim_tree_follow = 1
g.nvim_tree_indent_markers = 1
g.nvim_tree_hide_dotfiles = 1
g.nvim_tree_git_hl = 1
g.nvim_tree_root_folder_modifier = ":t"
g.nvim_tree_tab_open = 0
g.nvim_tree_allow_resize = 1
g.nvim_tree_show_icons = {
git = 1,
folders = 1,
files = 1
}
g.nvim_tree_icons = {
default = "",
symlink = "",
git = {
unstaged = "✗",
staged = "✓",
unmerged = "",
renamed = "➜",
untracked = "★",
deleted = "",
ignored = "◌"
},
folder = {
default = "",
open = "",
symlink = "",
empty = "",
empty_open = "",
symlink_open = ""
}
}
-- Mappings for nvimtree
vim.api.nvim_set_keymap(
"n",
"<C-n>",
":NvimTreeToggle<CR>",
{
noremap = true,
silent = true
}
)
local tree_cb = require "nvim-tree.config".nvim_tree_callback
g.nvim_tree_bindings = {
["u"] = ":lua require'some_module'.some_function()<cr>",
-- default mappings
["<CR>"] = tree_cb("edit"),
["o"] = tree_cb("edit"),
["<2-LeftMouse>"] = tree_cb("edit"),
["<2-RightMouse>"] = tree_cb("cd"),
["<C-]>"] = tree_cb("cd"),
["<C-v>"] = tree_cb("vsplit"),
["<C-x>"] = tree_cb("split"),
["<C-t>"] = tree_cb("tabnew"),
["<"] = tree_cb("prev_sibling"),
[">"] = tree_cb("next_sibling"),
["<BS>"] = tree_cb("close_node"),
["<S-CR>"] = tree_cb("close_node"),
["<Tab>"] = tree_cb("preview"),
["I"] = tree_cb("toggle_ignored"),
["H"] = tree_cb("toggle_dotfiles"),
["R"] = tree_cb("refresh"),
["a"] = tree_cb("create"),
["d"] = tree_cb("remove"),
["r"] = tree_cb("rename"),
["<C-r>"] = tree_cb("full_rename"),
["x"] = tree_cb("cut"),
["c"] = tree_cb("copy"),
["p"] = tree_cb("paste"),
["y"] = tree_cb("copy_name"),
["Y"] = tree_cb("copy_path"),
["gy"] = tree_cb("copy_absolute_path"),
["[c"] = tree_cb("prev_git_item"),
["]c"] = tree_cb("next_git_item"),
["-"] = tree_cb("dir_up"),
["q"] = tree_cb("close")
}
-54
View File
@@ -1,54 +0,0 @@
local packer = require("packer")
local use = packer.use
-- using { } for using different branch , loading plugin with certain commands etc
return packer.startup(
function()
use "wbthomason/packer.nvim"
-- color related stuff
use "siduck76/nvim-base16.lua"
use "norcalli/nvim-colorizer.lua"
-- lang stuff
use "nvim-treesitter/nvim-treesitter"
use "neovim/nvim-lspconfig"
use "hrsh7th/nvim-compe"
use "onsails/lspkind-nvim"
use "sbdchd/neoformat"
use "nvim-lua/plenary.nvim"
use "kabouzeid/nvim-lspinstall"
use "lewis6991/gitsigns.nvim"
use "akinsho/nvim-bufferline.lua"
use "glepnir/galaxyline.nvim"
use "windwp/nvim-autopairs"
use "alvan/vim-closetag"
-- snippet support
use "hrsh7th/vim-vsnip"
use "rafamadriz/friendly-snippets"
-- file managing , picker etc
use "kyazdani42/nvim-tree.lua"
use "kyazdani42/nvim-web-devicons"
use "ryanoasis/vim-devicons"
use "nvim-telescope/telescope.nvim"
use "nvim-telescope/telescope-media-files.nvim"
use "nvim-lua/popup.nvim"
-- misc
use "glepnir/dashboard-nvim"
use "tweekmonster/startuptime.vim"
use "907th/vim-auto-save"
use "karb94/neoscroll.nvim"
use "kdav5758/TrueZen.nvim"
use "folke/which-key.nvim"
use {"lukas-reineke/indent-blankline.nvim", branch = "lua"}
end,
{
display = {
border = {"┌", "─", "┐", "│", "┘", "─", "└", "│"}
}
}
)
+92
View File
@@ -0,0 +1,92 @@
local present, alpha = pcall(require, "alpha")
if not present then
return
end
local function button(sc, txt, keybind)
local sc_ = sc:gsub("%s", ""):gsub("SPC", "<leader>")
local opts = {
position = "center",
text = txt,
shortcut = sc,
cursor = 5,
width = 36,
align_shortcut = "right",
hl = "AlphaButtons",
}
if keybind then
opts.keymap = { "n", sc_, keybind, { noremap = true, silent = true } }
end
return {
type = "button",
val = txt,
on_press = function()
local key = vim.api.nvim_replace_termcodes(sc_, true, false, true)
vim.api.nvim_feedkeys(key, "normal", false)
end,
opts = opts,
}
end
local default = {}
default.ascii = {
" ⣴⣶⣤⡤⠦⣤⣀⣤⠆ ⣈⣭⣿⣶⣿⣦⣼⣆ ",
" ⠉⠻⢿⣿⠿⣿⣿⣶⣦⠤⠄⡠⢾⣿⣿⡿⠋⠉⠉⠻⣿⣿⡛⣦ ",
" ⠈⢿⣿⣟⠦ ⣾⣿⣿⣷ ⠻⠿⢿⣿⣧⣄ ",
" ⣸⣿⣿⢧ ⢻⠻⣿⣿⣷⣄⣀⠄⠢⣀⡀⠈⠙⠿⠄ ",
" ⢠⣿⣿⣿⠈ ⣻⣿⣿⣿⣿⣿⣿⣿⣛⣳⣤⣀⣀ ",
" ⢠⣧⣶⣥⡤⢄ ⣸⣿⣿⠘ ⢀⣴⣿⣿⡿⠛⣿⣿⣧⠈⢿⠿⠟⠛⠻⠿⠄ ",
" ⣰⣿⣿⠛⠻⣿⣿⡦⢹⣿⣷ ⢊⣿⣿⡏ ⢸⣿⣿⡇ ⢀⣠⣄⣾⠄ ",
" ⣠⣿⠿⠛ ⢀⣿⣿⣷⠘⢿⣿⣦⡀ ⢸⢿⣿⣿⣄ ⣸⣿⣿⡇⣪⣿⡿⠿⣿⣷⡄ ",
" ⠙⠃ ⣼⣿⡟ ⠈⠻⣿⣿⣦⣌⡇⠻⣿⣿⣷⣿⣿⣿ ⣿⣿⡇ ⠛⠻⢷⣄ ",
" ⢻⣿⣿⣄ ⠈⠻⣿⣿⣿⣷⣿⣿⣿⣿⣿⡟ ⠫⢿⣿⡆ ",
" ⠻⣿⣿⣿⣿⣶⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⡟⢀⣀⣤⣾⡿⠃ ",
}
default.header = {
type = "text",
val = default.ascii,
opts = {
position = "center",
hl = "AlphaHeader",
},
}
default.buttons = {
type = "group",
val = {
button("SPC f f", " Find File ", ":Telescope find_files<CR>"),
button("SPC f o", " Recent File ", ":Telescope oldfiles<CR>"),
button("SPC f w", " Find Word ", ":Telescope live_grep<CR>"),
button("SPC b m", " Bookmarks ", ":Telescope marks<CR>"),
button("SPC t h", " Themes ", ":Telescope themes<CR>"),
button("SPC e s", " Settings", ":e $MYVIMRC | :cd %:p:h <CR>"),
},
opts = {
spacing = 1,
},
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("alpha", default)
end
alpha.setup {
layout = {
{ type = "padding", val = 9 },
default.header,
{ type = "padding", val = 2 },
default.buttons,
},
opts = {},
}
end
return M
+148
View File
@@ -0,0 +1,148 @@
local present, bufferline = pcall(require, "bufferline")
if not present then
return
end
local default = {
colors = require("colors").get(),
}
default = {
options = {
offsets = { { filetype = "NvimTree", text = "", padding = 1 } },
buffer_close_icon = "",
modified_icon = "",
close_icon = "",
show_close_icon = true,
left_trunc_marker = "",
right_trunc_marker = "",
max_name_length = 14,
max_prefix_length = 13,
tab_size = 20,
show_tab_indicators = true,
enforce_regular_tabs = false,
view = "multiwindow",
show_buffer_close_icons = true,
separator_style = "thin",
always_show_bufferline = true,
diagnostics = false,
custom_filter = function(buf_number)
-- Func to filter out our managed/persistent split terms
local present_type, type = pcall(function()
return vim.api.nvim_buf_get_var(buf_number, "term_type")
end)
if present_type then
if type == "vert" then
return false
elseif type == "hori" then
return false
end
return true
end
return true
end,
},
highlights = {
background = {
guifg = default.colors.grey_fg,
guibg = default.colors.black2,
},
-- buffers
buffer_selected = {
guifg = default.colors.white,
guibg = default.colors.black,
gui = "bold",
},
buffer_visible = {
guifg = default.colors.light_grey,
guibg = default.colors.black2,
},
-- for diagnostics = "nvim_lsp"
error = {
guifg = default.colors.light_grey,
guibg = default.colors.black2,
},
error_diagnostic = {
guifg = default.colors.light_grey,
guibg = default.colors.black2,
},
-- close buttons
close_button = {
guifg = default.colors.light_grey,
guibg = default.colors.black2,
},
close_button_visible = {
guifg = default.colors.light_grey,
guibg = default.colors.black2,
},
close_button_selected = {
guifg = default.colors.red,
guibg = default.colors.black,
},
fill = {
guifg = default.colors.grey_fg,
guibg = default.colors.black2,
},
indicator_selected = {
guifg = default.colors.black,
guibg = default.colors.black,
},
-- modified
modified = {
guifg = default.colors.red,
guibg = default.colors.black2,
},
modified_visible = {
guifg = default.colors.red,
guibg = default.colors.black2,
},
modified_selected = {
guifg = default.colors.green,
guibg = default.colors.black,
},
-- separators
separator = {
guifg = default.colors.black2,
guibg = default.colors.black2,
},
separator_visible = {
guifg = default.colors.black2,
guibg = default.colors.black2,
},
separator_selected = {
guifg = default.colors.black2,
guibg = default.colors.black2,
},
-- tabs
tab = {
guifg = default.colors.light_grey,
guibg = default.colors.one_bg3,
},
tab_selected = {
guifg = default.colors.black2,
guibg = default.colors.nord_blue,
},
tab_close = {
guifg = default.colors.red,
guibg = default.colors.black,
},
},
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("bufferline", default)
end
bufferline.setup(default)
end
return M
+76
View File
@@ -0,0 +1,76 @@
local present, cmp = pcall(require, "cmp")
if not present then
return
end
vim.opt.completeopt = "menuone,noselect"
local default = {
snippet = {
expand = function(args)
require("luasnip").lsp_expand(args.body)
end,
},
formatting = {
format = function(entry, vim_item)
local icons = require "plugins.configs.lspkind_icons"
vim_item.kind = string.format("%s %s", icons[vim_item.kind], vim_item.kind)
vim_item.menu = ({
nvim_lsp = "[LSP]",
nvim_lua = "[Lua]",
buffer = "[BUF]",
})[entry.source.name]
return vim_item
end,
},
mapping = {
["<C-p>"] = cmp.mapping.select_prev_item(),
["<C-n>"] = cmp.mapping.select_next_item(),
["<C-d>"] = cmp.mapping.scroll_docs(-4),
["<C-f>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(),
["<C-e>"] = cmp.mapping.close(),
["<CR>"] = cmp.mapping.confirm {
behavior = cmp.ConfirmBehavior.Replace,
select = true,
},
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
elseif require("luasnip").expand_or_jumpable() then
vim.fn.feedkeys(vim.api.nvim_replace_termcodes("<Plug>luasnip-expand-or-jump", true, true, true), "")
else
fallback()
end
end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif require("luasnip").jumpable(-1) then
vim.fn.feedkeys(vim.api.nvim_replace_termcodes("<Plug>luasnip-jump-prev", true, true, true), "")
else
fallback()
end
end, { "i", "s" }),
},
sources = {
{ name = "nvim_lsp" },
{ name = "luasnip" },
{ name = "buffer" },
{ name = "nvim_lua" },
{ name = "path" },
},
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("nvim_cmp", default)
end
cmp.setup(default)
end
return M
+158
View File
@@ -0,0 +1,158 @@
local present, icons = pcall(require, "nvim-web-devicons")
if not present then
return
end
local default = {
colors = require("colors").get(),
}
default = {
override = {
c = {
icon = "",
color = default.colors.blue,
name = "c",
},
css = {
icon = "",
color = default.colors.blue,
name = "css",
},
deb = {
icon = "",
color = default.colors.cyan,
name = "deb",
},
Dockerfile = {
icon = "",
color = default.colors.cyan,
name = "Dockerfile",
},
html = {
icon = "",
color = default.colors.baby_pink,
name = "html",
},
jpeg = {
icon = "",
color = default.colors.dark_purple,
name = "jpeg",
},
jpg = {
icon = "",
color = default.colors.dark_purple,
name = "jpg",
},
js = {
icon = "",
color = default.colors.sun,
name = "js",
},
kt = {
icon = "󱈙",
color = default.colors.orange,
name = "kt",
},
lock = {
icon = "",
color = default.colors.red,
name = "lock",
},
lua = {
icon = "",
color = default.colors.blue,
name = "lua",
},
mp3 = {
icon = "",
color = default.colors.white,
name = "mp3",
},
mp4 = {
icon = "",
color = default.colors.white,
name = "mp4",
},
out = {
icon = "",
color = default.colors.white,
name = "out",
},
png = {
icon = "",
color = default.colors.dark_purple,
name = "png",
},
py = {
icon = "",
color = default.colors.cyan,
name = "py",
},
["robots.txt"] = {
icon = "ﮧ",
color = default.colors.red,
name = "robots",
},
toml = {
icon = "",
color = default.colors.blue,
name = "toml",
},
ts = {
icon = "ﯤ",
color = default.colors.teal,
name = "ts",
},
ttf = {
icon = "",
color = default.colors.white,
name = "TrueTypeFont",
},
rb = {
icon = "",
color = default.colors.pink,
name = "rb",
},
rpm = {
icon = "",
color = default.colors.orange,
name = "rpm",
},
vue = {
icon = "﵂",
color = default.colors.vibrant_green,
name = "vue",
},
woff = {
icon = "",
color = default.colors.white,
name = "WebOpenFontFormat",
},
woff2 = {
icon = "",
color = default.colors.white,
name = "WebOpenFontFormat2",
},
xz = {
icon = "",
color = default.colors.sun,
name = "xz",
},
zip = {
icon = "",
color = default.colors.sun,
name = "zip",
},
},
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("nvim_web_devicons", default)
end
icons.setup(default)
end
return M
+41
View File
@@ -0,0 +1,41 @@
local M = {}
require("plugins.configs.others").lsp_handlers()
function M.on_attach(client, bufnr)
local function buf_set_option(...)
vim.api.nvim_buf_set_option(bufnr, ...)
end
client.resolved_capabilities.document_formatting = false
client.resolved_capabilities.document_range_formatting = false
-- Enable completion triggered by <c-x><c-o>
buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
require("core.mappings").lspconfig()
end
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities.textDocument.completion.completionItem.documentationFormat = { "markdown", "plaintext" }
capabilities.textDocument.completion.completionItem.snippetSupport = true
capabilities.textDocument.completion.completionItem.preselectSupport = true
capabilities.textDocument.completion.completionItem.insertReplaceSupport = true
capabilities.textDocument.completion.completionItem.labelDetailsSupport = true
capabilities.textDocument.completion.completionItem.deprecatedSupport = true
capabilities.textDocument.completion.completionItem.commitCharactersSupport = true
capabilities.textDocument.completion.completionItem.tagSupport = { valueSet = { 1 } }
capabilities.textDocument.completion.completionItem.resolveSupport = {
properties = {
"documentation",
"detail",
"additionalTextEdits",
},
}
-- requires a file containing user's lspconfigs
local addlsp_confs = require("core.utils").load_config().plugins.options.lspconfig.setup_lspconf
if #addlsp_confs ~= 0 then
require(addlsp_confs).setup_lsp(M.on_attach, capabilities)
end
return M
+29
View File
@@ -0,0 +1,29 @@
local icons = {
Text = "",
Method = "",
Function = "",
Constructor = "",
Field = "ﰠ",
Variable = "",
Class = "ﴯ",
Interface = "",
Module = "",
Property = "ﰠ",
Unit = "塞",
Value = "",
Enum = "",
Keyword = "",
Snippet = "",
Color = "",
File = "",
Reference = "",
Folder = "",
EnumMember = "",
Constant = "",
Struct = "פּ",
Event = "",
Operator = "",
TypeParameter = "",
}
return icons
+90
View File
@@ -0,0 +1,90 @@
-- globals must be set prior to requiring nvim-tree to function
local g = vim.g
g.nvim_tree_add_trailing = 0 -- append a trailing slash to folder names
g.nvim_tree_git_hl = 0
g.nvim_tree_highlight_opened_files = 0
g.nvim_tree_root_folder_modifier = table.concat { ":t:gs?$?/..", string.rep(" ", 1000), "?:gs?^??" }
g.nvim_tree_show_icons = {
folders = 1,
files = 1,
git = 1,
}
g.nvim_tree_icons = {
default = "",
symlink = "",
git = {
deleted = "",
ignored = "◌",
renamed = "➜",
staged = "✓",
unmerged = "",
unstaged = "✗",
untracked = "★",
},
folder = {
default = "",
empty = "",
empty_open = "",
open = "",
symlink = "",
symlink_open = "",
},
}
local present, nvimtree = pcall(require, "nvim-tree")
if not present then
return
end
local default = {
filters = {
dotfiles = false,
},
disable_netrw = true,
hijack_netrw = true,
ignore_ft_on_setup = { "dashboard" },
auto_close = false,
open_on_tab = false,
hijack_cursor = true,
hijack_unnamed_buffer_when_opening = false,
update_cwd = true,
update_focused_file = {
enable = true,
update_cwd = false,
},
view = {
allow_resize = true,
side = "left",
width = 25,
hide_root_folder = true,
},
git = {
enable = false,
ignore = false,
},
actions = {
open_file = {
resize_window = true,
},
},
renderer = {
indent_markers = {
enable = true,
}
}
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("nvim_tree", default)
end
nvimtree.setup(default)
end
return M
+196
View File
@@ -0,0 +1,196 @@
local M = {}
local chadrc_config = require("core.utils").load_config()
M.autopairs = function(override_flag)
local present1, autopairs = pcall(require, "nvim-autopairs")
local present2, cmp_autopairs = pcall(require, "nvim-autopairs.completion.cmp")
if present1 and present2 then
local default = { fast_wrap = {} }
if override_flag then
default = require("core.utils").tbl_override_req("nvim_autopairs", default)
end
autopairs.setup(default)
local cmp = require "cmp"
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())
end
end
M.better_escape = function()
require("better_escape").setup {
mapping = chadrc_config.mappings.plugins.better_escape.esc_insertmode,
timeout = chadrc_config.plugins.options.esc_insertmode_timeout,
}
end
M.blankline = function(override_flag)
local default = {
indentLine_enabled = 1,
char = "▏",
filetype_exclude = {
"help",
"terminal",
"alpha",
"packer",
"lspinfo",
"TelescopePrompt",
"TelescopeResults",
"nvchad_cheatsheet",
"lsp-installer",
"",
},
buftype_exclude = { "terminal" },
show_trailing_blankline_indent = false,
show_first_indent_level = false,
}
if override_flag then
default = require("core.utils").tbl_override_req("indent_blankline", default)
end
require("indent_blankline").setup(default)
end
M.colorizer = function(override_flag)
local present, colorizer = pcall(require, "colorizer")
if present then
local default = {
filetypes = {
"*",
},
user_default_options = {
RGB = true, -- #RGB hex codes
RRGGBB = true, -- #RRGGBB hex codes
names = false, -- "Name" codes like Blue
RRGGBBAA = false, -- #RRGGBBAA hex codes
rgb_fn = false, -- CSS rgb() and rgba() functions
hsl_fn = false, -- CSS hsl() and hsla() functions
css = false, -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
css_fn = false, -- Enable all CSS *functions*: rgb_fn, hsl_fn
-- Available modes: foreground, background
mode = "background", -- Set the display mode.
},
}
if override_flag then
default = require("core.utils").tbl_override_req("nvim_colorizer", default)
end
colorizer.setup(default["filetypes"], default["user_default_options"])
vim.cmd "ColorizerReloadAllBuffers"
end
end
M.comment = function(override_flag)
local present, nvim_comment = pcall(require, "Comment")
if present then
local default = {}
if override_flag then
default = require("core.utils").tbl_override_req("nvim_comment", default)
end
nvim_comment.setup(default)
end
end
M.luasnip = function(override_flag)
local present, luasnip = pcall(require, "luasnip")
if present then
local default = {
history = true,
updateevents = "TextChanged,TextChangedI",
}
if override_flag then
default = require("core.utils").tbl_override_req("luasnip", default)
end
luasnip.config.set_config(default)
require("luasnip/loaders/from_vscode").load { paths = chadrc_config.plugins.options.luasnip.snippet_path }
require("luasnip/loaders/from_vscode").load()
end
end
M.signature = function(override_flag)
local present, lspsignature = pcall(require, "lsp_signature")
if present then
local default = {
bind = true,
doc_lines = 0,
floating_window = true,
fix_pos = true,
hint_enable = true,
hint_prefix = "",
hint_scheme = "String",
hi_parameter = "Search",
max_height = 22,
max_width = 120, -- max_width of signature floating_window, line will be wrapped if exceed max_width
handler_opts = {
border = "single", -- double, single, shadow, none
},
zindex = 200, -- by default it will be on top of all floating windows, set to 50 send it to bottom
padding = "", -- character to pad on left and right of signature can be ' ', or '|' etc
}
if override_flag then
default = require("core.utils").tbl_override_req("signature", default)
end
lspsignature.setup(default)
end
end
M.lsp_handlers = function()
local function lspSymbol(name, icon)
local hl = "DiagnosticSign" .. name
vim.fn.sign_define(hl, { text = icon, numhl = hl, texthl = hl })
end
lspSymbol("Error", "")
lspSymbol("Info", "")
lspSymbol("Hint", "")
lspSymbol("Warn", "")
vim.diagnostic.config {
virtual_text = {
prefix = "",
},
signs = true,
underline = true,
update_in_insert = false,
}
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, {
border = "single",
})
vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, {
border = "single",
})
-- suppress error messages from lang servers
vim.notify = function(msg, log_level)
if msg:match "exit code" then
return
end
if log_level == vim.log.levels.ERROR then
vim.api.nvim_err_writeln(msg)
else
vim.api.nvim_echo({ { msg } }, true, {})
end
end
end
M.gitsigns = function(override_flag)
local present, gitsigns = pcall(require, "gitsigns")
if present then
local default = {
signs = {
add = { hl = "DiffAdd", text = "│", numhl = "GitSignsAddNr" },
change = { hl = "DiffChange", text = "│", numhl = "GitSignsChangeNr" },
delete = { hl = "DiffDelete", text = "", numhl = "GitSignsDeleteNr" },
topdelete = { hl = "DiffDelete", text = "‾", numhl = "GitSignsDeleteNr" },
changedelete = { hl = "DiffChangeDelete", text = "~", numhl = "GitSignsChangeNr" },
},
}
if override_flag then
default = require("core.utils").tbl_override_req("gitsigns", default)
end
gitsigns.setup(default)
end
end
return M
+438
View File
@@ -0,0 +1,438 @@
local present, feline = pcall(require, "feline")
if not present then
return
end
local default = {
colors = require("colors").get(),
lsp = require "feline.providers.lsp",
lsp_severity = vim.diagnostic.severity,
config = require("core.utils").load_config().plugins.options.statusline,
}
default.icon_styles = {
default = {
left = "",
right = "",
main_icon = "",
vi_mode_icon = "",
position_icon = "",
},
arrow = {
left = "",
right = "",
main_icon = "",
vi_mode_icon = "",
position_icon = "",
},
block = {
left = " ",
right = " ",
main_icon = "",
vi_mode_icon = "",
position_icon = "",
},
round = {
left = "",
right = "",
main_icon = "",
vi_mode_icon = "",
position_icon = "",
},
slant = {
left = "",
right = "",
main_icon = "",
vi_mode_icon = "",
position_icon = "",
},
}
-- statusline style
default.statusline_style = default.icon_styles[default.config.style]
-- show short statusline on small screens
default.shortline = default.config.shortline == false and true
-- Initialize the components table
default.components = {
active = {},
}
default.main_icon = {
provider = default.statusline_style.main_icon,
hl = {
fg = default.colors.statusline_bg,
bg = default.colors.nord_blue,
},
right_sep = {
str = default.statusline_style.right,
hl = {
fg = default.colors.nord_blue,
bg = default.colors.lightbg,
},
},
}
default.file_name = {
provider = function()
local filename = vim.fn.expand "%:t"
local extension = vim.fn.expand "%:e"
local icon = require("nvim-web-devicons").get_icon(filename, extension)
if icon == nil then
icon = ""
return icon
end
return " " .. icon .. " " .. filename .. " "
end,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 70
end,
hl = {
fg = default.colors.white,
bg = default.colors.lightbg,
},
right_sep = {
str = default.statusline_style.right,
hl = { fg = default.colors.lightbg, bg = default.colors.lightbg2 },
},
}
default.dir_name = {
provider = function()
local dir_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":t")
return "" .. dir_name .. " "
end,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 80
end,
hl = {
fg = default.colors.grey_fg2,
bg = default.colors.lightbg2,
},
right_sep = {
str = default.statusline_style.right,
hi = {
fg = default.colors.lightbg2,
bg = default.colors.statusline_bg,
},
},
}
default.diff = {
add = {
provider = "git_diff_added",
hl = {
fg = default.colors.grey_fg2,
bg = default.colors.statusline_bg,
},
icon = "",
},
change = {
provider = "git_diff_changed",
hl = {
fg = default.colors.grey_fg2,
bg = default.colors.statusline_bg,
},
icon = "",
},
remove = {
provider = "git_diff_removed",
hl = {
fg = default.colors.grey_fg2,
bg = default.colors.statusline_bg,
},
icon = "",
},
}
default.git_branch = {
provider = "git_branch",
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 70
end,
hl = {
fg = default.colors.grey_fg2,
bg = default.colors.statusline_bg,
},
icon = "",
}
default.diagnostic = {
error = {
provider = "diagnostic_errors",
enabled = function()
return default.lsp.diagnostics_exist(default.lsp_severity.ERROR)
end,
hl = { fg = default.colors.red },
icon = "",
},
warning = {
provider = "diagnostic_warnings",
enabled = function()
return default.lsp.diagnostics_exist(default.lsp_severity.WARN)
end,
hl = { fg = default.colors.yellow },
icon = "",
},
hint = {
provider = "diagnostic_hints",
enabled = function()
return default.lsp.diagnostics_exist(default.lsp_severity.HINT)
end,
hl = { fg = default.colors.grey_fg2 },
icon = "",
},
info = {
provider = "diagnostic_info",
enabled = function()
return default.lsp.diagnostics_exist(default.lsp_severity.INFO)
end,
hl = { fg = default.colors.green },
icon = "",
},
}
default.lsp_progress = {
provider = function()
local Lsp = vim.lsp.util.get_progress_messages()[1]
if Lsp then
local msg = Lsp.message or ""
local percentage = Lsp.percentage or 0
local title = Lsp.title or ""
local spinners = {
"",
"",
"",
}
local success_icon = {
"",
"",
"",
}
local ms = vim.loop.hrtime() / 1000000
local frame = math.floor(ms / 120) % #spinners
if percentage >= 70 then
return string.format(" %%<%s %s %s (%s%%%%) ", success_icon[frame + 1], title, msg, percentage)
end
return string.format(" %%<%s %s %s (%s%%%%) ", spinners[frame + 1], title, msg, percentage)
end
return ""
end,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 80
end,
hl = { fg = default.colors.green },
}
default.lsp_icon = {
provider = function()
if next(vim.lsp.buf_get_clients()) ~= nil then
return " LSP"
else
return ""
end
end,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 70
end,
hl = { fg = default.colors.grey_fg2, bg = default.colors.statusline_bg },
}
default.mode_colors = {
["n"] = { "NORMAL", default.colors.red },
["no"] = { "N-PENDING", default.colors.red },
["i"] = { "INSERT", default.colors.dark_purple },
["ic"] = { "INSERT", default.colors.dark_purple },
["t"] = { "TERMINAL", default.colors.green },
["v"] = { "VISUAL", default.colors.cyan },
["V"] = { "V-LINE", default.colors.cyan },
[""] = { "V-BLOCK", default.colors.cyan },
["R"] = { "REPLACE", default.colors.orange },
["Rv"] = { "V-REPLACE", default.colors.orange },
["s"] = { "SELECT", default.colors.nord_blue },
["S"] = { "S-LINE", default.colors.nord_blue },
[""] = { "S-BLOCK", default.colors.nord_blue },
["c"] = { "COMMAND", default.colors.pink },
["cv"] = { "COMMAND", default.colors.pink },
["ce"] = { "COMMAND", default.colors.pink },
["r"] = { "PROMPT", default.colors.teal },
["rm"] = { "MORE", default.colors.teal },
["r?"] = { "CONFIRM", default.colors.teal },
["!"] = { "SHELL", default.colors.green },
}
default.chad_mode_hl = function()
return {
fg = default.mode_colors[vim.fn.mode()][2],
bg = default.colors.one_bg,
}
end
default.empty_space = {
provider = " " .. default.statusline_style.left,
hl = {
fg = default.colors.one_bg2,
bg = default.colors.statusline_bg,
},
}
-- this matches the vi mode color
default.empty_spaceColored = {
provider = default.statusline_style.left,
hl = function()
return {
fg = default.mode_colors[vim.fn.mode()][2],
bg = default.colors.one_bg2,
}
end,
}
default.mode_icon = {
provider = default.statusline_style.vi_mode_icon,
hl = function()
return {
fg = default.colors.statusline_bg,
bg = default.mode_colors[vim.fn.mode()][2],
}
end,
}
default.empty_space2 = {
provider = function()
return " " .. default.mode_colors[vim.fn.mode()][1] .. " "
end,
hl = default.chad_mode_hl,
}
default.separator_right = {
provider = default.statusline_style.left,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 90
end,
hl = {
fg = default.colors.grey,
bg = default.colors.one_bg,
},
}
default.separator_right2 = {
provider = default.statusline_style.left,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 90
end,
hl = {
fg = default.colors.green,
bg = default.colors.grey,
},
}
default.position_icon = {
provider = default.statusline_style.position_icon,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 90
end,
hl = {
fg = default.colors.black,
bg = default.colors.green,
},
}
default.current_line = {
provider = function()
local current_line = vim.fn.line "."
local total_line = vim.fn.line "$"
if current_line == 1 then
return " Top "
elseif current_line == vim.fn.line "$" then
return " Bot "
end
local result, _ = math.modf((current_line / total_line) * 100)
return " " .. result .. "%% "
end,
enabled = default.shortline or function(winid)
return vim.api.nvim_win_get_width(tonumber(winid) or 0) > 90
end,
hl = {
fg = default.colors.green,
bg = default.colors.one_bg,
},
}
local function add_table(a, b)
table.insert(a, b)
end
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("feline", default)
end
-- components are divided in 3 sections
default.left = {}
default.middle = {}
default.right = {}
-- left
add_table(default.left, default.main_icon)
add_table(default.left, default.file_name)
add_table(default.left, default.dir_name)
add_table(default.left, default.diff.add)
add_table(default.left, default.diff.change)
add_table(default.left, default.diff.remove)
add_table(default.left, default.diagnostic.error)
add_table(default.left, default.diagnostic.warning)
add_table(default.left, default.diagnostic.hint)
add_table(default.left, default.diagnostic.info)
add_table(default.middle, default.lsp_progress)
-- right
add_table(default.right, default.lsp_icon)
add_table(default.right, default.git_branch)
add_table(default.right, default.empty_space)
add_table(default.right, default.empty_spaceColored)
add_table(default.right, default.mode_icon)
add_table(default.right, default.empty_space2)
add_table(default.right, default.separator_right)
add_table(default.right, default.separator_right2)
add_table(default.right, default.position_icon)
add_table(default.right, default.current_line)
default.components.active[1] = default.left
default.components.active[2] = default.middle
default.components.active[3] = default.right
feline.setup {
theme = {
bg = default.colors.statusline_bg,
fg = default.colors.fg,
},
components = default.components,
}
end
return M
+73
View File
@@ -0,0 +1,73 @@
local present, telescope = pcall(require, "telescope")
if not present then
return
end
local default = {
defaults = {
vimgrep_arguments = {
"rg",
"--color=never",
"--no-heading",
"--with-filename",
"--line-number",
"--column",
"--smart-case",
},
prompt_prefix = "",
selection_caret = " ",
entry_prefix = " ",
initial_mode = "insert",
selection_strategy = "reset",
sorting_strategy = "ascending",
layout_strategy = "horizontal",
layout_config = {
horizontal = {
prompt_position = "top",
preview_width = 0.55,
results_width = 0.8,
},
vertical = {
mirror = false,
},
width = 0.87,
height = 0.80,
preview_cutoff = 120,
},
file_sorter = require("telescope.sorters").get_fuzzy_file,
file_ignore_patterns = { "node_modules" },
generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter,
path_display = { "truncate" },
winblend = 0,
border = {},
borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" },
color_devicons = true,
use_less = true,
set_env = { ["COLORTERM"] = "truecolor" }, -- default = nil,
file_previewer = require("telescope.previewers").vim_buffer_cat.new,
grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new,
qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new,
-- Developer configurations: Not meant for general override
buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker,
},
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("telescope", default)
end
telescope.setup(default)
local extensions = { "themes", "terms" }
pcall(function()
for _, ext in ipairs(extensions) do
telescope.load_extension(ext)
end
end)
end
return M
+26
View File
@@ -0,0 +1,26 @@
local present, ts_config = pcall(require, "nvim-treesitter.configs")
if not present then
return
end
local default = {
ensure_installed = {
"lua",
"vim",
},
highlight = {
enable = true,
use_languagetree = true,
},
}
local M = {}
M.setup = function(override_flag)
if override_flag then
default = require("core.utils").tbl_override_req("nvim_treesitter", default)
end
ts_config.setup(default)
end
return M
+244
View File
@@ -0,0 +1,244 @@
local plugin_settings = require("core.utils").load_config().plugins
local present, packer = pcall(require, plugin_settings.options.packer.init_file)
if not present then
return false
end
local override_req = require("core.utils").override_req
local plugins = {
{ "nvim-lua/plenary.nvim" },
{ "lewis6991/impatient.nvim" },
{ "nathom/filetype.nvim" },
{
"wbthomason/packer.nvim",
event = "VimEnter",
},
{
"NvChad/extensions",
config = function ()
vim.schedule_wrap(require("nvchad.terminal").init())
end
},
{
"NvChad/nvim-base16.lua",
after = "packer.nvim",
config = function()
require("colors").init()
end,
},
{
"kyazdani42/nvim-web-devicons",
after = "nvim-base16.lua",
config = override_req("nvim_web_devicons", "plugins.configs.icons", "setup"),
},
{
"feline-nvim/feline.nvim",
disable = not plugin_settings.status.feline,
after = "nvim-web-devicons",
config = override_req("feline", "plugins.configs.statusline", "setup"),
},
{
"akinsho/bufferline.nvim",
branch = "main",
disable = not plugin_settings.status.bufferline,
after = "nvim-web-devicons",
config = override_req("bufferline", "plugins.configs.bufferline", "setup"),
setup = function()
require("core.mappings").bufferline()
end,
},
{
"lukas-reineke/indent-blankline.nvim",
disable = not plugin_settings.status.blankline,
event = "BufRead",
config = override_req("indent_blankline", "plugins.configs.others", "blankline"),
},
{
"NvChad/nvim-colorizer.lua",
disable = not plugin_settings.status.colorizer,
event = "BufRead",
config = override_req("nvim_colorizer", "plugins.configs.others", "colorizer"),
},
{
"nvim-treesitter/nvim-treesitter",
event = { "BufRead", "BufNewFile" },
config = override_req("nvim_treesitter", "plugins.configs.treesitter", "setup"),
run = ":TSUpdate",
},
-- git stuff
{
"lewis6991/gitsigns.nvim",
disable = not plugin_settings.status.gitsigns,
opt = true,
config = override_req("gitsigns", "plugins.configs.others", "gitsigns"),
setup = function()
require("core.utils").packer_lazy_load "gitsigns.nvim"
end,
},
-- lsp stuff
{
"neovim/nvim-lspconfig",
module = "lspconfig",
opt = true,
setup = function()
require("core.utils").packer_lazy_load "nvim-lspconfig"
-- reload the current file so lsp actually starts for it
vim.defer_fn(function()
vim.cmd 'if &ft == "packer" | echo "" | else | silent! e %'
end, 0)
end,
config = override_req("lspconfig", "plugins.configs.lspconfig"),
},
{
"ray-x/lsp_signature.nvim",
disable = not plugin_settings.status.lspsignature,
after = "nvim-lspconfig",
config = override_req("signature", "plugins.configs.others", "signature"),
},
{
"andymass/vim-matchup",
disable = not plugin_settings.status.vim_matchup,
opt = true,
setup = function()
require("core.utils").packer_lazy_load "vim-matchup"
end,
},
{
"max397574/better-escape.nvim",
disable = not plugin_settings.status.better_escape,
event = "InsertCharPre",
config = override_req("better_escape", "plugins.configs.others", "better_escape"),
},
-- load luasnips + cmp related in insert mode only
{
"rafamadriz/friendly-snippets",
module = "cmp_nvim_lsp",
disable = not plugin_settings.status.cmp,
event = "InsertEnter",
},
{
"hrsh7th/nvim-cmp",
disable = not plugin_settings.status.cmp,
after = "friendly-snippets",
config = override_req("nvim_cmp", "plugins.configs.cmp", "setup"),
},
{
"L3MON4D3/LuaSnip",
disable = not plugin_settings.status.cmp,
wants = "friendly-snippets",
after = "nvim-cmp",
config = override_req("luasnip", "plugins.configs.others", "luasnip"),
},
{
"saadparwaiz1/cmp_luasnip",
disable = not plugin_settings.status.cmp,
after = plugin_settings.options.cmp.lazy_load and "LuaSnip",
},
{
"hrsh7th/cmp-nvim-lua",
disable = not plugin_settings.status.cmp,
after = "cmp_luasnip",
},
{
"hrsh7th/cmp-nvim-lsp",
disable = not plugin_settings.status.cmp,
after = "cmp-nvim-lua",
},
{
"hrsh7th/cmp-buffer",
disable = not plugin_settings.status.cmp,
after = "cmp-nvim-lsp",
},
{
"hrsh7th/cmp-path",
disable = not plugin_settings.status.cmp,
after = "cmp-buffer",
},
-- misc plugins
{
"windwp/nvim-autopairs",
disable = not plugin_settings.status.autopairs,
after = plugin_settings.options.autopairs.loadAfter,
config = override_req("nvim_autopairs", "plugins.configs.others", "autopairs"),
},
{
disable = not plugin_settings.status.alpha,
"goolord/alpha-nvim",
config = override_req("alpha", "plugins.configs.alpha", "setup"),
},
{
"numToStr/Comment.nvim",
disable = not plugin_settings.status.comment,
module = "Comment",
keys = { "gcc" },
config = override_req("nvim_comment", "plugins.configs.others", "comment"),
setup = function()
require("core.mappings").comment()
end,
},
-- file managing , picker etc
{
"kyazdani42/nvim-tree.lua",
disable = not plugin_settings.status.nvimtree,
-- only set "after" if lazy load is disabled and vice versa for "cmd"
after = not plugin_settings.options.nvimtree.lazy_load and "nvim-web-devicons",
cmd = plugin_settings.options.nvimtree.lazy_load and { "NvimTreeToggle", "NvimTreeFocus" },
config = override_req("nvim_tree", "plugins.configs.nvimtree", "setup"),
setup = function()
require("core.mappings").nvimtree()
end,
},
{
"nvim-telescope/telescope.nvim",
module = "telescope",
cmd = "Telescope",
config = override_req("telescope", "plugins.configs.telescope", "setup"),
setup = function()
require("core.mappings").telescope()
end,
},
}
--label plugins for operational assistance
plugins = require("core.utils").label_plugins(plugins)
--remove plugins specified in chadrc
plugins = require("core.utils").remove_default_plugins(plugins)
--add plugins specified in chadrc
plugins = require("core.utils").add_user_plugins(plugins)
return packer.startup(function(use)
for _, v in pairs(plugins) do
use(v)
end
end)
+44
View File
@@ -0,0 +1,44 @@
vim.cmd "packadd packer.nvim"
local present, packer = pcall(require, "packer")
if not present then
local packer_path = vim.fn.stdpath "data" .. "/site/pack/packer/opt/packer.nvim"
print "Cloning packer.."
-- remove the dir before cloning
vim.fn.delete(packer_path, "rf")
vim.fn.system {
"git",
"clone",
"https://github.com/wbthomason/packer.nvim",
"--depth",
"20",
packer_path,
}
vim.cmd "packadd packer.nvim"
present, packer = pcall(require, "packer")
if present then
print "Packer cloned successfully."
else
error("Couldn't clone packer !\nPacker path: " .. packer_path .. "\n" .. packer)
end
end
packer.init {
display = {
open_fn = function()
return require("packer.util").float { border = "single" }
end,
prompt_border = "single",
},
git = {
clone_timeout = 6000, -- seconds
},
auto_clean = true,
compile_on_sync = true,
}
return packer
-204
View File
@@ -1,204 +0,0 @@
local gl = require("galaxyline")
local gls = gl.section
local condition = require("galaxyline.condition")
gl.short_line_list = {" "}
local colors = require "themes/onedark"
gls.left[1] = {
FirstElement = {
provider = function() return '▋' end,
highlight = { colors.nord_blue, colors.nord_blue }
},
}
gls.left[2] = {
statusIcon = {
provider = function()
return ""
end,
highlight = {colors.statusline_bg, colors.nord_blue},
separator = "",
separator_highlight = {colors.nord_blue, colors.lightbg}
}
}
gls.left[3] = {
FileIcon = {
provider = "FileIcon",
condition = condition.buffer_not_empty,
highlight = {colors.white, colors.lightbg}
}
}
gls.left[4] = {
FileName = {
provider = {"FileName"},
condition = condition.buffer_not_empty,
highlight = {colors.white, colors.lightbg},
separator = "",
separator_highlight = {colors.lightbg, colors.lightbg2}
}
}
gls.left[5] = {
current_dir = {
provider = function()
local dir_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":t")
return "" .. dir_name .. " "
end,
highlight = {colors.grey_fg2, colors.lightbg2},
separator = "",
separator_highlight = {colors.lightbg2, colors.statusline_bg}
}
}
local checkwidth = function()
local squeeze_width = vim.fn.winwidth(0) / 2
if squeeze_width > 30 then
return true
end
return false
end
gls.left[6] = {
DiffAdd = {
provider = "DiffAdd",
condition = checkwidth,
icon = "",
highlight = {colors.white, colors.statusline_bg}
}
}
gls.left[7] = {
DiffModified = {
provider = "DiffModified",
condition = checkwidth,
icon = "",
highlight = {colors.grey_fg2, colors.statusline_bg}
}
}
gls.left[8] = {
DiffRemove = {
provider = "DiffRemove",
condition = checkwidth,
icon = "",
highlight = {colors.grey_fg2, colors.statusline_bg}
}
}
gls.left[9] = {
DiagnosticError = {
provider = "DiagnosticError",
icon = "",
highlight = {colors.red, colors.statusline_bg}
}
}
gls.left[10] = {
DiagnosticWarn = {
provider = "DiagnosticWarn",
icon = "",
highlight = {colors.yellow, colors.statusline_bg}
}
}
gls.right[1] = {
lsp_status = {
provider = function()
local clients = vim.lsp.get_active_clients()
if next(clients) ~= nil then
return " " .. "" .. " LSP "
else
return ""
end
end,
highlight = {colors.grey_fg2, colors.statusline_bg}
}
}
gls.right[2] = {
GitIcon = {
provider = function()
return ""
end,
condition = require("galaxyline.provider_vcs").check_git_workspace,
highlight = {colors.grey_fg2, colors.lightbg},
separator = "",
separator_highlight = {colors.lightbg, colors.statusline_bg}
}
}
gls.right[3] = {
GitBranch = {
provider = "GitBranch",
condition = require("galaxyline.provider_vcs").check_git_workspace,
highlight = {colors.grey_fg2, colors.lightbg}
}
}
gls.right[4] = {
viMode_icon = {
provider = function()
return ""
end,
highlight = {colors.statusline_bg, colors.red},
separator = "",
separator_highlight = {colors.red, colors.lightbg}
}
}
gls.right[5] = {
ViMode = {
provider = function()
local alias = {
n = "Normal",
i = "Insert",
c = "Command",
V = "Visual",
[""] = "Visual",
v = "Visual",
R = "Replace"
}
local current_Mode = alias[vim.fn.mode()]
if current_Mode == nil then
return " Terminal "
else
return " " .. current_Mode .. " "
end
end,
highlight = {colors.red, colors.lightbg}
}
}
gls.right[6] = {
some_icon = {
provider = function()
return ""
end,
separator = "",
separator_highlight = {colors.green, colors.lightbg},
highlight = {colors.lightbg, colors.green}
}
}
gls.right[7] = {
line_percentage = {
provider = function()
local current_line = vim.fn.line(".")
local total_line = vim.fn.line("$")
if current_line == 1 then
return " Top "
elseif current_line == vim.fn.line("$") then
return " Bot "
end
local result, _ = math.modf((current_line / total_line) * 100)
return " " .. result .. "% "
end,
highlight = {colors.green, colors.lightbg}
}
}
-82
View File
@@ -1,82 +0,0 @@
require("telescope").setup {
defaults = {
vimgrep_arguments = {
"rg",
"--color=never",
"--no-heading",
"--with-filename",
"--line-number",
"--column",
"--smart-case"
},
prompt_position = "bottom",
prompt_prefix = "",
selection_caret = "",
entry_prefix = " ",
initial_mode = "insert",
selection_strategy = "reset",
sorting_strategy = "descending",
layout_strategy = "horizontal",
layout_defaults = {
horizontal = {
mirror = false,
preview_width = 0.5
},
vertical = {
mirror = false
}
},
file_sorter = require "telescope.sorters".get_fuzzy_file,
file_ignore_patterns = {},
generic_sorter = require "telescope.sorters".get_generic_fuzzy_sorter,
shorten_path = true,
winblend = 0,
width = 0.75,
preview_cutoff = 120,
results_height = 1,
results_width = 0.8,
border = {},
borderchars = {"─", "│", "─", "│", "╭", "╮", "╯", "╰"},
color_devicons = true,
use_less = true,
set_env = {["COLORTERM"] = "truecolor"}, -- default = nil,
file_previewer = require "telescope.previewers".vim_buffer_cat.new,
grep_previewer = require "telescope.previewers".vim_buffer_vimgrep.new,
qflist_previewer = require "telescope.previewers".vim_buffer_qflist.new,
-- Developer configurations: Not meant for general override
buffer_previewer_maker = require "telescope.previewers".buffer_previewer_maker
},
extensions = {
media_files = {
filetypes = {"png", "webp", "jpg", "jpeg"},
find_cmd = "rg" -- find command (defaults to `fd`)
}
}
}
require("telescope").load_extension("media_files")
local opt = {noremap = true, silent = true}
vim.g.mapleader = " "
-- mappings
vim.api.nvim_set_keymap("n", "<Leader>ff", [[<Cmd>lua require('telescope.builtin').find_files()<CR>]], opt)
vim.api.nvim_set_keymap(
"n",
"<Leader>fp",
[[<Cmd>lua require('telescope').extensions.media_files.media_files()<CR>]],
opt
)
vim.api.nvim_set_keymap("n", "<Leader>fb", [[<Cmd>lua require('telescope.builtin').buffers()<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fh", [[<Cmd>lua require('telescope.builtin').help_tags()<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fo", [[<Cmd>lua require('telescope.builtin').oldfiles()<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fm", [[<Cmd> Neoformat<CR>]], opt)
-- dashboard stuff
vim.api.nvim_set_keymap("n", "<Leader>fw", [[<Cmd> Telescope live_grep<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fn", [[<Cmd> DashboardNewFile<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fb", [[<Cmd> DashboardJumpMarks<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fl", [[<Cmd> SessionLoad<CR>]], opt)
vim.api.nvim_set_keymap("n", "<Leader>fs", [[<Cmd> SessionSave<CR>]], opt)
-33
View File
@@ -1,33 +0,0 @@
local colors = {
white = "#abb2bf",
darker_black = "#1b1f27",
black = "#1e222a", -- nvim bg
black2 = "#252931",
one_bg = "#282c34", -- real bg of onedark
one_bg2 = "#353b45",
one_bg3 = "#30343c",
grey = "#42464e",
grey_fg = "#565c64",
grey_fg2 = "#6f737b",
light_grey = "#6f737b",
red = "#d47d85",
baby_pink = "#DE8C92",
pink = "#ff75a0",
line = "#2a2e36", -- for lines like vertsplit
green = "#A3BE8C",
vibrant_green = "#7eca9c",
nord_blue = "#81A1C1",
blue = "#61afef",
yellow = "#e7c787",
sun = "#EBCB8B",
purple = "#b4bbc8",
dark_purple = "#c882e7",
teal = "#519ABA",
orange = "#fca2aa",
cyan = "#a3b8ef",
statusline_bg = "#22262e",
lightbg = "#2d3139",
lightbg2 = "#262a32"
}
return colors
-31
View File
@@ -1,31 +0,0 @@
require "bufferline".setup {
options = {
offsets = {{filetype = "NvimTree", text = "", padding = 1}},
buffer_close_icon = "",
modified_icon = "",
close_icon = "",
left_trunc_marker = "",
right_trunc_marker = "",
max_name_length = 14,
max_prefix_length = 13,
tab_size = 20,
show_tab_indicators = true,
enforce_regular_tabs = false,
view = "multiwindow",
show_buffer_close_icons = true,
separator_style = "thin",
mappings = "true"
}
}
local opt = {silent = true}
local map = vim.api.nvim_set_keymap
vim.g.mapleader = " "
-- MAPPINGS
map("n", "<S-t>", [[<Cmd>tabnew<CR>]], opt) -- new tab
map("n", "<S-x>", [[<Cmd>bdelete<CR>]], opt) -- close tab
-- move between tabs
map("n", "<TAB>", [[<Cmd>BufferLineCycleNext<CR>]], opt)
map("n", "<S-TAB>", [[<Cmd>BufferLineCyclePrev<CR>]], opt)
-17
View File
@@ -1,17 +0,0 @@
local ts_config = require("nvim-treesitter.configs")
ts_config.setup {
ensure_installed = {
"javascript",
"html",
"css",
"bash",
"lua",
"json",
"python"
},
highlight = {
enable = true,
use_languagetree = true
}
}
-45
View File
@@ -1,45 +0,0 @@
require("which-key").setup {
plugins = {
marks = true, -- shows a list of your marks on ' and `
registers = true, -- shows your registers on " in NORMAL or <C-r> in INSERT mode
-- the presets plugin, adds help for a bunch of default keybindings in Neovim
-- No actual key bindings are created
spelling = {
enabled = false, -- enabling this will show WhichKey when pressing z= to select spelling suggestions
suggestions = 20 -- how many suggestions should be shown in the list?
},
presets = {
operators = true, -- adds help for operators like d, y, ... and registers them for motion / text object completion
motions = true, -- adds help for motions
text_objects = true, -- help for text objects triggered after entering an operator
windows = true, -- default bindings on <c-w>
nav = true, -- misc bindings to work with windows
z = true, -- bindings for folds, spelling and others prefixed with z
g = true -- bindings for prefixed with g
}
},
-- add operators that will trigger motion and text object completion
-- to enable all native operators, set the preset / operators plugin above
operators = {gc = "Comments"},
icons = {
breadcrumb = "»", -- symbol used in the command line area that shows your active key combo
separator = "➜", -- symbol used between a key and it's label
group = "+" -- symbol prepended to a group
},
window = {
border = "none", -- none, single, double, shadow
position = "bottom", -- bottom, top
margin = {1, 0, 1, 0}, -- extra window margin [top, right, bottom, left]
padding = {2, 2, 2, 2} -- extra window padding [top, right, bottom, left]
},
layout = {
height = {min = 4, max = 25}, -- min and max height of the columns
width = {min = 20, max = 50}, -- min and max width of the columns
spacing = 3 -- spacing between columns
},
ignore_missing = false, -- enable this to hide mappings for which you didn't specify a label
hidden = {"<silent>", "<cmd>", "<Cmd>", "<CR>", "call", "lua", "^:", "^ "}, -- hide mapping boilerplate
show_help = true, -- show help message on the command line when the popup is visible
triggers = "auto" -- automatically setup triggers
-- triggers = {"<leader>"} -- or specifiy a list manually
}
-47
View File
@@ -1,47 +0,0 @@
local true_zen = require("true-zen")
true_zen.setup(
{
true_false_commands = false,
cursor_by_mode = false,
before_minimalist_mode_shown = true,
before_minimalist_mode_hidden = true,
after_minimalist_mode_shown = true,
after_minimalist_mode_hidden = true,
bottom = {
hidden_laststatus = 0,
hidden_ruler = false,
hidden_showmode = false,
hidden_showcmd = false,
hidden_cmdheight = 1,
shown_laststatus = 2,
shown_ruler = true,
shown_showmode = false,
shown_showcmd = false,
shown_cmdheight = 1
},
top = {
hidden_showtabline = 0,
shown_showtabline = 2
},
left = {
hidden_number = false,
hidden_relativenumber = false,
hidden_signcolumn = "no",
shown_number = true,
shown_relativenumber = false,
shown_signcolumn = "yes"
},
ataraxis = {
just_do_it_for_me = false,
left_padding = 37,
right_padding = 37,
top_padding = 2,
bottom_padding = 2,
custome_bg = "#1e222a"
},
integrations = {
integration_galaxyline = true
}
}
)