Home

Awesome

🎨 RandTheme.nvim

<a href="https://dotfyle.com/plugins/Styzex/RandTheme.nvim"> <img src="https://dotfyle.com/plugins/Styzex/RandTheme.nvim/shield" /> </a>

RandTheme is a Neovim plugin that automatically sets a new theme every day, adding variety to your coding experience.

✨ Features

πŸ“¦ Installation

Choose your preferred plugin manager:

πŸ“¦ packer.nvim

use 'Styzex/RandTheme.nvim'

πŸ“¦ vim-plug

Plug 'Styzex/RandTheme.nvim'

πŸ“¦ lazy.nvim

{
  "Styzex/RandTheme.nvim",
  event = "VimEnter",
  config = function()
    require("randtheme").setup()
  end
}

πŸš€ Usage

RandTheme works out of the box. Once installed, it will automatically set a new theme each day when you start Neovim.

If you want to manually trigger a theme change, you can call:

:lua require('randtheme').setup_daily_theme()

βš™οΈ Configuration

By default, RandTheme doesn't require any configuration. However, if you want to customize its behavior, you can use the setup function:

require('randtheme').setup({
  -- Your configuration options here
})

πŸ”§ Options

πŸ“¦ packer.nvim

use {
  'Styzex/RandTheme.nvim',
  config = function()
  require('randtheme').setup({
    exclude_themes = {},
    change_on_startup = true,
    print_theme_name = true,
    change_interval = 1,
    colorscheme_dir = "~/.config/nvim/colors",
    include_builtin_themes = false,
    reroll_keymap = "<leader>tr",
  })
  end
}

πŸ“¦ vim-plug

example config:

Plug 'Styzex/RandTheme.nvim'
" Add this to your init.vim or .vimrc after the Plug commands
lua << EOF
require('randtheme').setup({
    exclude_themes = {},
    change_on_startup = true,
    print_theme_name = true,
    change_interval = 1,
    colorscheme_dir = "~/.config/nvim/colors",
    include_builtin_themes = false,
    reroll_keymap = "<leader>tr",
})
EOF

πŸ“¦ lazy.nvim

example config:

{
  "Styzex/RandTheme.nvim",
  event = "VimEnter",
    -- Your configuration options here (all optional)
    lazy = false,
    priority = 1000,
    config = function()
      require("randtheme").setup({
        exclude_themes = {},
        change_on_startup = true,
        print_theme_name = true,
        change_interval = 1,
        colorscheme_dir = "~/.config/nvim/colors",
        include_builtin_themes = false,
        reroll_keymap = "<leader>tr",
      })
    end,
  },

You can also use the opts option to pass in the configuration options:

{
  "Styzex/RandTheme.nvim",
  event = "VimEnter",
    -- Your configuration options here (all optional)
    lazy = false,
    priority = 1000,
    opts = {
        exclude_themes = {},
        change_on_startup = true,
        print_theme_name = false,
        change_interval = 1,
        colorscheme_dir = "~/.config/nvim/colors",
        include_builtin_themes = false,
        reroll_keymap = "<leader>tr",
    }
  },

🀝Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

πŸ“œ Code Style

πŸ›‘ Reporting Issues

If you find a bug or have a suggestion for improvement:

  1. Check if the issue already exists in the issue tracker.
  2. If not, create a new issue, providing as much detail as possible, including:
    • Steps to reproduce the bug
    • Expected behavior
    • Actual behavior
    • Neovim version
    • Operating system

πŸ€” Questions?

If you have questions, feel free to:

We appreciate your interest in making RandTheme better for everyone!