Rosé Pine for Neovim

All natural pine, faux fur and a bit of soho vibes for the classy minimalist

## Usage ```lua use({ 'rose-pine/neovim', as = 'rose-pine', tag = 'v0.1.0', -- Optional tag release config = function() vim.cmd('colorscheme rose-pine') end }) ``` ## Plugins > PR's are more than welcome if your favourite plugin is missing - **[Treesitter](https://github.com/nvim-treesitter/nvim-treesitter)** - **[Diagnostics](https://neovim.io/doc/user/lsp.html)** - **[Barbar](https://github.com/romgrk/barbar.nvim)** - **[Gitsigns](https://github.com/lewis6991/gitsigns.nvim)** - **[Modes](https://github.com/mvllow/modes.nvim)** - **[NvimTree](https://github.com/kyazdani42/nvim-tree.lua)** - **[WhichKey](https://github.com/folke/which-key.nvim)** - **[Indent-Blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim)** - **[Neogit](https://github.com/TimUntersberger/neogit)** - **[Lualine](https://github.com/hoob3rt/lualine.nvim)** ```lua require('lualine').setup({ options = { theme = 'rose-pine' } }) ``` - **[Galaxyline fork](https://github.com/NTBBloodbath/galaxyline.nvim)** > This fork by NTBBloodbath allows [custom colors](https://github.com/NTBBloodbath/galaxyline.nvim/blob/main/docs/themes.md#colors-standards) ```lua -- Set colors in your galaxyline config local colors = require("galaxyline.themes.colors")["rose-pine"] ``` ## Gallery **Rosé Pine** ![Rosé Pine with Neovim](assets/rose-pine.png) **Rosé Pine Moon** ![Rosé Pine Moon with Neovim](assets/rose-pine-moon.png) **Rosé Pine Dawn** ![Rosé Pine Dawn with Neovim](assets/rose-pine-dawn.png) ## Options > Options should be set **before** colorscheme ```lua -- Set theme variant -- Matches terminal theme if unset -- @usage 'main' | 'moon' | 'dawn' vim.g.rose_pine_variant = '' vim.g.rose_pine_bold_vertical_split_line = false vim.g.rose_pine_inactive_background = false vim.g.rose_pine_disable_background = false vim.g.rose_pine_disable_float_background = false vim.g.rose_pine_disable_italics = false local p = require('rose-pine.palette') vim.g.rose_pine_colors = { punctuation = p.subtle, comment = p.subtle, hint = p.iris, info = p.foam, warn = p.gold, error = p.love, -- Or set all headings to one colour: `headings = p.text` headings = { h1 = p.iris, h2 = p.foam, h3 = p.rose, h4 = p.gold, h5 = p.pine, h6 = p.foam, }, } -- Set colorscheme after options vim.cmd('colorscheme rose-pine') ``` ## Functions ```lua -- Toggle between all variants require('rose-pine').toggle() -- Toggle between some variants require('rose-pine').toggle({'main', 'dawn'}) -- Set specific variant require('rose-pine').set('moon') ``` ## Keymaps > These are only suggestions; no keymaps are set by the theme ```lua -- Toggle variants vim.api.nvim_set_keymap('n', '', [[lua require('rose-pine').toggle()]], { noremap = true, silent = true }) -- Set variant vim.api.nvim_set_keymap('n', '', [[lua require('rose-pine').set('main')]], { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '', [[lua require('rose-pine').set('moon')]], { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '', [[lua require('rose-pine').set('dawn')]], { noremap = true, silent = true }) ``` ## Contributing We welcome and appreciate any help in creating a lovely experience for all. - [Get highlight groups under cursor](https://github.com/nvim-treesitter/playground#show-treesitter-and-syntax-highlight-groups-under-the-cursor) - [Adding new highlight groups](https://github.com/rose-pine/neovim/issues/6#issuecomment-962466323)