Skip to content

Algos-hub/neovim-config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neovim config files

This is my config files for my personal Neovim installation.

Plugins used:

    * Theme: maxmx03/solarized.nvim
    * Tmux navigation integration: christoomey/vim-tmux-navigator
    * Auto-pairing (parenthesis, brackets, quotes, etc...): windwp/nvim-autopairs
    * Enhancing a/i selection: echasnovski/mini.ai
    * Enhancing surrounding text: kylechui/nvim-surround
    * Icons: nvim-tree/nvim-web-devicons
    * Git wrapper: tpope/vim-fugitive
    * Git buffer integration: lewis6991/gitsigns.nvim
    * Statusline: nvim-lualine/lualine.nvim
    * Comment shortcut: numToStr/Comment.nvim
    * File tree: nvim-tree/nvim-tree.lua
    * Custom ColorColumn behavior: m4xshen/smartcolumn.nvim
    * Custom splash screen: startup-nvim/startup.nvim
    * Fuzzy finder: nvim-telescope/telescope.nvim
            dependency: nvim-lua/plenary.nvim
    * Syntax highlighting: nvim-treesitter/nvim-treesitter
    * Formatter: nvimtools/none-ls.nvim
            dependency: nvimtools/none-ls-extras.nvim
    * Language Server Protocol (LSP): neovim/nvim-lspconfig
            dependencies:
            * hrsh7th/cmp-nvim-lsp
            * hrsh7th/cmp-buffer
            * hrsh7th/cmp-path
            * hrsh7th/cmp-cmdline
            * hrsh7th/nvim-cmp
            * williamboman/mason.nvim (LSP package manager)
            * williamboman/mason-lspconfig.nvim
            * kosayoda/nvim-lightbulb (For code actions notifications)
            * hrsh7th/cmp-vsnip
            * hrsh7th/vim-vsnip
            * hrsh7th/vim-vsnip-integ
            * artemave/workspace-diagnostics.nvim (For LSP diagnostics per workspace instead of per buffer)

Screenshots

Startup screen

alt-text

LSP integration

alt-text alt-text alt-text alt-text

File Explorer (nvim-tree)

alt-text

Fuzzy finder (telescope)

alt-text

Installation

1: Install nerd fonts

This neovim configuration requires a nerd font to properly display icons and sections in the terminal.
    If you already have a nerd font installed in your terminal you can skip this step.
    You can find them alongside the installation guides in their official Github repo here

2: Install make (optional)

This neovim configuration uses the telescope-fzf-native.nvim extension for telescope which requires make.
    make is used to build the binaries for telescope-fzf-native.nvim, which is used to speed up telescope but is not required.
    If you do not wish to use telescope-fzf-native.nvim you can delete telescope-fzf.lua and remove the lines 4-13 and 17-24 from telescope.lua

telescope.lua

return {
    'nvim-telescope/telescope.nvim',
    tag = '0.1.6',

    -- Comment this section if you don't want to use telescope-fzf-native.nvim

    dependencies = {
        'nvim-lua/plenary.nvim',
        {
            'nvim-telescope/telescope-fzf-native.nvim',
            build = 'make',
            config = function()
                require("telescope").load_extension("fzf")
            end,
        }
    },

    -- End of comment

    config = function()
        require('telescope').setup({

        -- Comment this section if you don't want to use telescope-fzf-native.nvim

            extensions = {
                fzf = {
                    fuzzy = true,
                    override_generic_sorter = true,
                    override_file_sorter = true,
                    case_mode = "smart_case",
                }
            }

        -- End of comment

        })

        local builtin = require('telescope.builtin')
        vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
        vim.keymap.set('n', '<leader>fg', builtin.live_grep, {})
        vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
        vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
    end
}

3: Cloning this repo

To install, clone this repo into your .config directory and rename the neovim-config directory to nvim.
    If you already have an nvim directory, you may need to delete/move it somewhere else first.

    git clone https://github.com/Algos-hub/neovim-config ~/.config/nvim

About

My personal neovim config, made with lua and using lazy.nvim as a package manager

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages