95 lines
10 KiB
HTML
95 lines
10 KiB
HTML
<!doctype html>
|
|
<html lang="en"><head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
<link rel="shortcut icon" href="http://localhost:1313/favicon.ico">
|
|
<link id="stylesheet" rel="stylesheet" href="/css/light.css">
|
|
|
|
<link rel="canonical" href="http://localhost:1313/making-nix-colors-talk-to-neovim/" />
|
|
<title>Making nix-colors talk to neovim</title>
|
|
</head>
|
|
<body><header id="banner">
|
|
<nav class="navbar">
|
|
<div class="nav-left">
|
|
|
|
<a href="http://localhost:1313/" class="home">~ 🏠</a>
|
|
|
|
<a
|
|
href="/info/"
|
|
title="--help"
|
|
>--help</a
|
|
>
|
|
</div>
|
|
<div class="nav-right">
|
|
|
|
<button id="toggle-button" class="toggle-button" onclick="toggleTheme()">🌚</button>
|
|
</div>
|
|
</nav>
|
|
</header>
|
|
<main id="content">
|
|
<article>
|
|
<header id="post-header">
|
|
<h3>Making nix-colors talk to neovim</h3>
|
|
<div>
|
|
<time>August 18, 2023</time>
|
|
</div>
|
|
</header><p>I recently started fiddling around with home-managerifying my neovim config.
|
|
After moving across most of my stuff I came across the problem of how to hook things up with with <a href="https://github.com/misterio77/nix-colors">nix-colors</a> so that my neovim theme would follow color changes in home-manager.</p>
|
|
<p>Luckily, I came across <a href="https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-base16.md">this</a> handy little plugin from the lovely <a href="https://github.com/echasnovski/mini.nvim">mini.nvim</a> suite of plugins which lets you create your own theme with your custom colors.</p>
|
|
<p>Beneath is a little snippet of how you could make it all happen.</p>
|
|
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-nix" data-lang="nix"><span class="line"><span class="cl"><span class="p">{</span> <span class="n">inputs</span><span class="o">,</span> <span class="n">pkgs</span><span class="o">,</span> <span class="o">...</span> <span class="p">}:</span> <span class="p">{</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">imports</span> <span class="o">=</span> <span class="p">[</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">inputs</span><span class="o">.</span><span class="n">nix-colors</span><span class="o">.</span><span class="n">homeManagerModules</span><span class="o">.</span><span class="n">default</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="p">];</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">scheme</span> <span class="o">=</span> <span class="n">inputs</span><span class="o">.</span><span class="n">nix-colors</span><span class="o">.</span><span class="n">schemes</span><span class="o">.</span><span class="n">onedark</span><span class="p">;</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">programs</span><span class="o">.</span><span class="n">neovim</span> <span class="o">=</span> <span class="p">{</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">enable</span> <span class="o">=</span> <span class="no">true</span><span class="p">;</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">plugins</span> <span class="o">=</span> <span class="k">with</span> <span class="n">pkgs</span><span class="o">.</span><span class="n">vimPlugins</span><span class="p">;</span> <span class="p">[</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="p">{</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">plugin</span> <span class="o">=</span> <span class="n">mini-nvim</span><span class="p">;</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="n">config</span> <span class="o">=</span> <span class="s1">''
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> lua << END
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> require('mini.base16').setup({
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> palette = {
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base00 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base00</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base01 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base01</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base02 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base02</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base03 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base03</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base04 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base04</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base05 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base05</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base06 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base06</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base07 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base07</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base08 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base08</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base09 = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base09</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base0A = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base0A</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base0B = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base0B</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base0C = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base0C</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base0D = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base0D</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base0E = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base0E</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> base0F = '#</span><span class="si">${</span><span class="n">scheme</span><span class="o">.</span><span class="n">colors</span><span class="o">.</span><span class="n">base0F</span><span class="si">}</span><span class="s1">',
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> },
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> })
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> END
|
|
</span></span></span><span class="line"><span class="cl"><span class="s1"> ''</span><span class="p">;</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="p">}</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="p">];</span>
|
|
</span></span><span class="line"><span class="cl"> <span class="p">};</span>
|
|
</span></span><span class="line"><span class="cl"><span class="p">}</span>
|
|
</span></span></code></pre></div><p>Happy theming!</p>
|
|
</article>
|
|
</main>
|
|
|
|
<footer id="footer">
|
|
<p>-----------------</p>
|
|
<small>
|
|
made with <a href="https://gohugo.io">hugo</a> and my bastardised version of
|
|
<a href="https://github.com/LukasJoswiak/etch">this nice theme</a>
|
|
</small>
|
|
|
|
<script src="/js/search.js"></script>
|
|
<script src="/js/toggle.js"></script>
|
|
</footer>
|
|
|
|
</body>
|
|
</html>
|