NEOMODERN.nvim
moderne — simple — discret
Table des matières
Galerie
🌚 LUNE
Un thème sombre et spatial inspiré par les couleurs de la lune
Variante Sombre

Variante Claire

❄️ ICECLIMBER
Un thème avec des couleurs inspirées des personnages d’Ice Climbers de Nintendo
Variante Sombre

Variante Claire

🌱 GYOKURO
Un thème inspiré du thé vert frais
Variante Sombre

Variante Claire

🍂 HOJICHA
Un thème inspiré du thé vert torréfié
Variante Sombre

Variante Claire

🌷 ROSEPRIME
Inspiré par l'utilisation de ThePrimeagen du thème Rosé-Pine
Variante Sombre

Variante Claire

Installation
Avec vim.pack :
vim.pack.add({"https://github.com/casedami/neomodern.nvim"})
require("neomodern").setup({
-- optional configuration
})
require("neomodern").load()Notez que vous n'avez besoin d'appeler setup que si vous remplacez des options par défaut. Si vous l'utilisez uniquement pour définir le thème, vous pouvez utiliser ce qui suit à la place :
vim.pack.add({"https://github.com/casedami/neomodern.nvim"})
require("neomodern").load("iceclimber")Configuration
Il y a 5 thèmes inclus, chacun avec une variante claire et sombre.
Le thème clair est utilisé lorsque vim.o.background = "light".
Les options par défaut sont données ci-dessous :
require("neomodern").setup({
-- 'default' default background
-- 'alt' darker background
-- 'transparent' background is not set
bg = "default", theme = "moon", -- 'moon' | 'iceclimber' | 'gyokuro' | 'hojicha' | 'roseprime'
gutter = {
cursorline = false, -- highlight the cursorline in the gutter
dark = false, -- highlight gutter darker than the Normal bg
},
diagnostics = {
darker = true, -- use darker colors for diagnostics
undercurl = true, -- use undercurl for diagnostics
background = true, -- use a background color for diagnostics
},
-- override colors, see #Customization below
overrides = {
default = {},
hlgroups = {}
}
})
-- Call load after setup
require("neomodern").load()
Personnalisation
Neomodern prend en charge les surcharges de couleurs définies par l'utilisateur. L'utilisateur peut soit remplacer
les couleurs par défaut, soit modifier les surlignages d'un groupe de surlignage spécifique. Lors
de la surcharge des groupes de surlignage, utilisez les couleurs de neomodern en préfixant le nom de la couleur
par un signe dollar (par exemple $keyword). Voir :h highlight-args et :h
neomodern-types pour les arguments attendus, les noms de couleurs par défaut, etc.
require("neomodern").setup {
overrides = {
default = {
keyword = '#817faf', -- redefine neomodern's keyword color
}
hlgroups = {
["@keyword.return"] = { gui = 'italic' },
["@keyword"] = { guifg = "$keyword", gui = 'bold' },
["@function"] = { guibg = "#ffffff" },
["String"] = { link = "Todo" },
}
},
}Recettes
Préférer les surlignages Treesitter
Si vous préférez privilégier les surlignages basés sur treesitter (plutôt que les surlignages sémantiques LSP), utilisez ceci quelque part dans votre configuration :
vim.highlight.priorities.semantic_tokens = 95Raccourci pour basculer entre les variantes Clair/Sombre
Neomodern utilise vim.opt.background pour décider quelle variante charger, donc pour
basculer entre les variantes, il suffit de basculer vim.opt.background.
vim.keymap.set("n", "uc", function()
if vim.opt.background == "light" then
vim.opt.background = "dark"
else
vim.opt.background = "light"
end
end, { desc = "Toggle between light/dark mode" }) Contribution
Si vous souhaitez un support pour un plugin ou un extra, veuillez ouvrir un ticket ou soumettre une PR.