Skip to content

KoalaVim/alpha-nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

297 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

α alpha-nvim

alpha is a fast and fully programmable greeter for neovim.

share or snipe some custom themes @ goolord/alpha-nvim#16

Quick Start

vim-startify theme

glamor shot

EXAMPLES

With lazy.nvim:

{
    'goolord/alpha-nvim',
    dependencies = { 'nvim-mini/mini.icons' },
    config = function ()
        require'alpha'.setup(require'alpha.themes.startify'.config)
    end
};

With packer:

use {
    'goolord/alpha-nvim',
    requires = { 'nvim-mini/mini.icons' },
    config = function ()
        require'alpha'.setup(require'alpha.themes.startify'.config)
    end
}

..or using paq:

require "paq" {
    "goolord/alpha-nvim";
    "nvim-mini/mini.icons";
}
require'alpha'.setup(require'alpha.themes.startify'.config)

dashboard-nvim theme

glamor shot

EXAMPLES

With lazy.nvim:

{
    'goolord/alpha-nvim',
    config = function ()
        require'alpha'.setup(require'alpha.themes.dashboard'.config)
    end
};

With packer:

use {
    'goolord/alpha-nvim',
    config = function ()
        require'alpha'.setup(require'alpha.themes.dashboard'.config)
    end
}

..or using paq:

require "paq" {
    "goolord/alpha-nvim";
    "nvim-mini/mini.icons";
}
require'alpha'.setup(require'alpha.themes.dashboard'.config)

Theta theme

EXAMPLES

With lazy.nvim:

{
    'goolord/alpha-nvim',
    dependencies = {
        'nvim-mini/mini.icons',
        'nvim-lua/plenary.nvim'
    },
    config = function ()
        require'alpha'.setup(require'alpha.themes.theta'.config)
    end
};

With packer:

use {
    'goolord/alpha-nvim',
    requires = {
        'nvim-mini/mini.icons',
        'nvim-lua/plenary.nvim'
    },
    config = function ()
        require'alpha'.setup(require'alpha.themes.dashboard'.config)
    end
}

..or using paq:

require "paq" {
    "goolord/alpha-nvim";
    "nvim-mini/mini.icons";
    'nvim-lua/plenary.nvim';
}
require'alpha'.setup(require'alpha.themes.dashboard'.config)

if you want sessions, see

this theme makes some assumptions about your default keybindings to customize the buttons, see :h alpha-example

File Icons

theta/startify theme support file icons, default is enabled and mini icon provider is used.

if you prefer nvim-web-devicons icon provider, use the following example with lazy.nvim:

  {
    "goolord/alpha-nvim",
    -- dependencies = { 'nvim-mini/mini.icons' },
    dependencies = { 'nvim-tree/nvim-web-devicons' },
    config = function()
      local startify = require("alpha.themes.startify")
      -- available: devicons, mini, default is mini
      -- if provider not loaded and enabled is true, it will try to use another provider
      startify.file_icons.provider = "devicons"
      require("alpha").setup(
        startify.config
      )
    end,
  },

Elevator pitch

alpha is really a general purpose neovim ui library with some conveniences for writing a greeter ui. it has a functional, data-oriented api design. themes are expressed entirely as data, which is what makes alpha "fully programmable". alpha is also the fastest greeter I've benchmarked (which is why I daily drive it myself!).

Profiling Results

benchmark

  • using lewis6991/impatient.nvim
  • only config! doesn't measure drawing, some startup plugins won't measure drawing either

Special Thanks

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages