aboutsummaryrefslogtreecommitdiff
path: root/init.vim
blob: 22da85c01c8bb910c0fbda7bce1ec56172ab4c38 (plain)
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
" Configuration
" ---------------------------------------
  set encoding=UTF-8
  set fileencoding=UTF-8

  syntax on
  set number
  set notitle
  set autoindent
  set nobackup
  set laststatus=2
  set ignorecase
  set smarttab
  set breakindent
  set shiftwidth=2
  set showcmd
  set ai
  set si
  set nowrap
  set clipboard^=unnamed,unnamedplus
  set termguicolors

" Plugins
" ---------------------------------------

  call plug#begin()

    " Themes
    " 🏙️ TokyoNight
    " A clean, dark Neovim theme written in Lua
    Plug 'folke/tokyonight.nvim'
    
    " 🌟 NeoSolarized
    " A fixed solarized colorscheme for better truecolor support.
    Plug 'overcache/NeoSolarized'

    " Plugin
    " 😄 DevIcons 
    " Adds file type icons to Vim plugins
    Plug 'kyazdani42/nvim-web-devicons'
    
    " 📏 Lualine
    " Customizable status line
    Plug 'nvim-lualine/lualine.nvim'

    " 📄 lspconfig
    " Language Server Protocol Configuration
    Plug 'neovim/nvim-lspconfig'
    
    " 📦 Mason
    "
    Plug 'williamboman/mason.nvim' 
    Plug 'williamboman/mason-lspconfig'

    " ⚡ lspsaga
    " A light-weight lsp plugin based on neovim's built-in lsp with a highly performant UI.
    Plug 'glepnir/lspsaga.nvim', { 'branch': 'main' }

    " 💻 CMP
    " A completion engine plugin written in Lua
    Plug 'hrsh7th/nvim-cmp'
    Plug 'hrsh7th/cmp-nvim-lsp'
    Plug 'hrsh7th/cmp-buffer'

    " 🏷️ Autotag/pairs
    " 
    Plug 'windwp/nvim-autopairs'
    Plug 'windwp/nvim-ts-autotag'

    " ✨ LuaSnip
    " Snippet Engine for Neovim written in Lua
    Plug 'L3MON4D3/LuaSnip'

    " 📦 lspkind
    " Adds symbol next to the autocompletion
    Plug 'onsails/lspkind.nvim'

    " 🌳 Treesitter
    " Better highlighting
    Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}

    " 🔭 Telescopec
    " Find, Filter, Preview, Pick Files
    Plug 'nvim-lua/plenary.nvim'
    Plug 'nvim-telescope/telescope.nvim', { 'tag': '0.1.0' }
    Plug 'nvim-telescope/telescope-file-browser.nvim'

    " 🚦 Trouble
    " A pretty list for showing diagnostics, references, telescope results, quickfix and location lists
    " Plug 'folke/trouble.nvim'

    " 🎨 Colorizer
    " A high-performance color highlighter for Neovim
    Plug 'norcalli/nvim-colorizer.lua'
    
    " 🧘 Zen Mode
    " Distraction-free coding for Neovim
    Plug 'folke/zen-mode.nvim'

    " 🎛️ Dashboard
    " Customizable NeoVim start screen
    Plug 'glepnir/dashboard-nvim'

  call plug#end()

" Theme
" ---------------------------------------

  " 🏙️ Tokyo Night Configuration
  let g:tokyonight_style = "storm"
  let g:tokyonight_transparent = 1
  let g:tokyonight_transparent_sidebar = 1
    
  colorscheme tokyonight