En el post anterior mostré un poco sobre cómo elegir un tema en NeoVim y guardar la configuración permanente. Pero ¿qué pasa si esos temas no te gustan o quieres poner otro? Pues podemos instalar temas en NeoVim y poder configurarlos de acuerdo a tus necesidades.
En este post, vamos a instalar el theme catppuccin mediante un Vim Plugin Manager llamada vim-plug
. Una vez finalizado, instalaremos un plugin para ver los cambios de archivos que estén en un repositorio de Git, llamado GitSigns
.
Instalar vim-plug
vim-plug es un administrador de plugins en Vim mediante el cuál puedes gestionar los plugins, no solo de temas, sino de otras funcionalidades que puedes ir agregando o quitando del editor.
En la página de documentación, hacemos la instalación para Linux (que es mi caso), copiamos el comando y lo pegamos en la consola.
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
Una vez que ha terminado, podemos en entrar a nvim y escribimos :Plug
y luego tab y nos mostrará varias opciones. Esto quiere decir que todo se ha instalado correctamente.
Estas son las opciones y ya podemos empezar a utilizar el administrador de plugins.
Instalar temas en NeoVim – catppuccin
Para la instalación del tema, vamos a la página del tema y veremos varias opciones de instalación, una de ellas es vim-plug
. Copiamos el código y lo pegamos en el archivo $XDG_CONFIG_HOME/nvim/vim.init
o ~/.config/nvim/vim.init
. Quedaría así:
call plug#begin()
Plug 'catppuccin/nvim', { 'as': 'catppuccin' }
call plug#end()
Una vez que lo guardamos (:w
), ejecutamos :PlugInstall
y el manejador iniciará con la instalación hasta finalizar. Si quieres ver lo que se instala, puedes ir al directorio en .local/share/nvim/plugged/catppuccin
.
Si volvemos a tratar de seleccionar el tema, mediante :colorscheme
podemos ver las diferentes opciones del tema catppuccin
.
Como mencioné en el post anterior, cuando seleccionas el tema solo se mantendrá para la sesión y una vez que salgas, al regresar estará el tema por default. Para dejar catppuccin (y algunos de sus sabores) por default, hay que entrar al archivo init.vim
y modificarlo:
colorscheme catppuccin " catppuccin-latte, catppuccin-frappe, catppuccin-macchiato, catppuccin-mocha
La configuración debe estar después de la carga de plugins en la sección de call plug#begin...
Es posible que tú necesites personalizar el tema, por ejemplo, con algunas de estas opciones:
require("catppuccin").setup({
flavour = "mocha", -- latte, frappe, macchiato, mocha
background = { -- :h background
light = "latte",
dark = "mocha",
},
transparent_background = false, -- disables setting the background color.
show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
dim_inactive = {
enabled = false, -- dims the background color of inactive window
shade = "dark",
percentage = 0.15, -- percentage of the shade to apply to the inactive window
},
no_italic = false, -- Force no italic
no_bold = false, -- Force no bold
no_underline = false, -- Force no underline
styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
comments = { "italic" }, -- Change the style of comments
conditionals = { "italic" },
loops = {},
functions = {},
keywords = {},
strings = {},
variables = {},
numbers = {},
booleans = {},
properties = {},
types = {},
operators = {},
},
color_overrides = {},
custom_highlights = {},
integrations = {
cmp = true,
gitsigns = true,
nvimtree = true,
treesitter = true,
notify = false,
mini = false,
-- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
},
})
-- setup must be called before loading
vim.cmd.colorscheme "catppuccin"
Estas opciones se pueden configurar directo en el archivo init.vim
, pero es mucho más limpio si ponemos estas opciones en otro archivo y luego lo cargamos en el init.vim
.
Entonces creamos el archivo ~./config./nvim/catppuccin.lua
, copiamos y pegamos todo ese código.
Una vez hecho esto, en el archivo init.vim
, quitamos la línea de colorscheme
y agregamos la siguiente:
source ~/.config/nvim/catppuccin.lua
El archivo catppuccin.lua
quedaría así:
Con esto ya tenemos el tema instalado y listo para que hagas las modificaciones que quieras.
Instalar GitSigns en NeoVim
GitSigns es un plugin que permite ver cambios que se han hecho sobre archivos en un repositorio Git.
Para iniciar, abrimos el archivo init.vim
y en la sección de Plugs, dos:
call plug#begin()
...
Plug 'nvim-lua/plenary.nvim'
Plug 'lewis6991/gitsigns.nvim'
call plug#end()
Guardamos los cambios y luego instalamos esos plugins con el comando :PlugInstall
.
El plugin GitSigns se ha instalado y ya podemos ver los comentarios que están en el historial de commits del archivo (por ejemplo):
Al igual que con el tema, también este plugins tiene sus configuraciones que puedes ver acá y siguiendo con nuestra intención de tenerlo todo ordenado, crearemos el archivo ~/.config/nvim/plugins.lua
y agregamos:
require('gitsigns').setup{
signs = {
add = { text = '│' },
change = { text = '│' },
delete = { text = '_' },
topdelete = { text = '‾' },
changedelete = { text = '~' },
untracked = { text = '┆' },
},
current_line_blame = true,
current_line_blame_opts = {
delay = 200
},
}
Una vez hecho esto, agregamos la línea al archivo init.vim
:
source ~/.config/nvim/plugins.lua
Nuestro archivo final init.vim
queda así:
Gracias por leer.