-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinit.lua
More file actions
93 lines (80 loc) · 3.13 KB
/
init.lua
File metadata and controls
93 lines (80 loc) · 3.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
-- =============================================================================
-- 🚀 BREAD'S NEOVIM : FORTERESSE GRUVBOX (FINAL STABLE)
-- =============================================================================
-- 1. BOOTSTRAP (Vim-Plug)
local data_dir = vim.fn.stdpath('data')
if vim.fn.empty(vim.fn.glob(data_dir .. '/site/autoload/plug.vim')) == 1 then
vim.cmd('silent !curl -fLo ' .. data_dir .. '/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim')
vim.o.runtimepath = vim.o.runtimepath
vim.cmd('autocmd VimEnter * PlugInstall --sync | source $MYVIMRC')
end
local Plug = vim.fn['plug#']
vim.loader.enable() -- Turbo-boost au démarrage
-- ====================================================
-- 🚨 FIX CRITIQUE : Activation des couleurs TrueColor
-- Doit être ici AVANT que les plugins ne soient lus
-- ====================================================
vim.opt.termguicolors = true
-- 2. DÉCLARATION DES PLUGINS
vim.call('plug#begin')
-- UI & Thème
Plug('ellisonleao/gruvbox.nvim', { ['as'] = 'gruvbox' })
Plug('nvim-lualine/lualine.nvim')
Plug('nvim-tree/nvim-web-devicons')
Plug('akinsho/bufferline.nvim', { ['tag'] = 'v4.9.1' })
Plug('goolord/alpha-nvim')
Plug('norcalli/nvim-colorizer.lua')
Plug('folke/which-key.nvim', { ['tag'] = 'v3.17.0' })
-- Outils & Navigation
Plug('nvim-treesitter/nvim-treesitter')
Plug('mfussenegger/nvim-lint')
Plug('nvim-tree/nvim-tree.lua')
Plug('windwp/nvim-autopairs')
Plug('lewis6991/gitsigns.nvim', { ['tag'] = 'v0.9.0' })
Plug('numToStr/Comment.nvim', { ['tag'] = 'v0.8.0' })
Plug('ibhagwan/fzf-lua')
Plug('numToStr/FTerm.nvim')
-- Syntaxe & Langages
Plug('ron-rs/ron.vim')
Plug('MeanderingProgrammer/render-markdown.nvim', { ['tag'] = 'v8.11.0' })
Plug('emmanueltouzery/decisive.nvim')
Plug('folke/twilight.nvim', { ['tag'] = 'v1.0.0' })
-- Cerveau (LSP) & Complétion
Plug('williamboman/mason.nvim')
Plug('williamboman/mason-lspconfig.nvim', { ['tag'] = 'v1.29.0' })
Plug('neovim/nvim-lspconfig')
Plug('hrsh7th/nvim-cmp')
Plug('hrsh7th/cmp-nvim-lsp')
Plug('L3MON4D3/LuaSnip', { ['tag'] = 'v2.4.1' })
Plug('hrsh7th/cmp-buffer')
Plug('hrsh7th/cmp-path')
vim.call('plug#end')
-- 3. CHARGEMENT DES BASES
require("config.theme")
require("config.options")
require("config.autocmd")
-- 4. CHARGEMENT DES PLUGINS UI (Immédiat)
require("plugins.alpha")
require("plugins.colorizer")
require("plugins.comment")
require("plugins.gitsigns")
require("plugins.lualine")
require("plugins.nvim-lint")
-- FIX CRITIQUE : Treesitter et Markdown doivent être ici
require("plugins.treesitter")
require("plugins.render-markdown")
-- 5. CHARGEMENT DIFFÉRÉ (+200ms)
vim.defer_fn(function()
require("plugins.autopairs")
require("plugins.fterm")
require("plugins.fzf-lua")
require("plugins.nvim-tree")
require("plugins.twilight")
require("plugins.which-key")
require("plugins.bufferline")
require("plugins.lsp")
-- Mappings finaux
pcall(require, "config.mappings")
end, 200)
-- 6. DÉMARRAGE DU THÈME
load_theme()