mirror of
https://github.com/SqrtMinusOne/sqrtminusone.github.io.git
synced 2025-12-11 00:03:02 +03:00
deploy: ec9d4f60e5
This commit is contained in:
parent
eca6578332
commit
5b6e4567a7
6 changed files with 74 additions and 49 deletions
|
|
@ -653,28 +653,26 @@
|
|||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-vim" data-lang="vim"><span style="display:flex;"><span>bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel <span style="color:#ba2121">"xclip -selection clipboard -i"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel <span style="color:#ba2121">"xclip -selection clipboard -i"</span><span style="">
|
||||
</span></span></span></code></pre></div><h3 id="ui">UI</h3>
|
||||
<p>I generated the following with <a href="https://github.com/edkolev/tmuxline.vim">tmuxline.vim</a> plugin and palenight theme for <a href="https://github.com/vim-airline/vim-airline">vim-airline</a></p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-vim" data-lang="vim"><span style="display:flex;"><span># This tmux statusbar config was created by tmuxline.vim<span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span># on Wed, <span style="color:#666">22</span> Jan <span style="color:#666">2020</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-justify <span style="color:#ba2121">"centre"</span><span style="">
|
||||
<p>On <span class="timestamp-wrapper"><span class="timestamp">[2020-01-22 Wed]</span></span>, I had generated the first version of this following with <a href="https://github.com/edkolev/tmuxline.vim">tmuxline.vim</a> plugin and palenight theme for <a href="https://github.com/vim-airline/vim-airline">vim-airline</a>.</p>
|
||||
<p>Then I adapted it to use the current Emacs theme.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-vim" data-lang="vim"><span style="display:flex;"><span>set -g status-justify <span style="color:#ba2121">"centre"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status <span style="color:#ba2121">"on"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-left-style <span style="color:#ba2121">"none"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g message-command-style <span style="color:#ba2121">"fg=#bfc7d5,bg=#474b59"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g message-command-style <span style="color:#ba2121">"fg=<<get-color(name="</span>fg<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-right-style <span style="color:#ba2121">"none"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g pane-active-border-style <span style="color:#ba2121">"fg=#939ede"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-style <span style="color:#ba2121">"none,bg=#333747"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g message-style <span style="color:#ba2121">"fg=#bfc7d5,bg=#474b59"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g pane-border-style <span style="color:#ba2121">"fg=#474b59"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g pane-active-border-style <span style="color:#ba2121">"fg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-style <span style="color:#ba2121">"none,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g message-style <span style="color:#ba2121">"fg=<<get-color(name="</span>fg<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g pane-border-style <span style="color:#ba2121">"fg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-right-length <span style="color:#ba2121">"100"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-left-length <span style="color:#ba2121">"100"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-activity-style <span style="color:#ba2121">"none,fg=#939ede,bg=#333747"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-activity-style <span style="color:#ba2121">"none,fg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-separator <span style="color:#ba2121">""</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-style <span style="color:#ba2121">"none,fg=#bfc7d5,bg=#333747"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-left <span style="color:#ba2121">"#[fg=#292D3E,bg=#939ede] #S #[fg=#939ede,bg=#474b59,nobold,nounderscore,noitalics]#[fg=#bfc7d5,bg=#474b59] #W #[fg=#474b59,bg=#333747,nobold,nounderscore,noitalics]"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-right <span style="color:#ba2121">"#[fg=#333747,bg=#333747,nobold,nounderscore,noitalics]#[fg=#bfc7d5,bg=#333747] %-H:%M #[fg=#474b59,bg=#333747,nobold,nounderscore,noitalics]#[fg=#bfc7d5,bg=#474b59] %a, %b %d #[fg=#939ede,bg=#474b59,nobold,nounderscore,noitalics]#[fg=#292D3E,bg=#939ede] #H "</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-format <span style="color:#ba2121">"#[fg=#333747,bg=#333747,nobold,nounderscore,noitalics]#[default] #I #W #[align=left] #[fg=#333747,bg=#333747,nobold,nounderscore,noitalics]"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-current-format <span style="color:#ba2121">"#[fg=#333747,bg=#474b59,nobold,nounderscore,noitalics]#[fg=#bfc7d5,bg=#474b59] #I #W #[fg=#474b59,bg=#333747,nobold,nounderscore,noitalics]"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-style <span style="color:#ba2121">"none,fg=<<get-color(name="</span>fg<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-left <span style="color:#ba2121">"#[fg=<<get-fg-for-color(name="</span>blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>] #S #[fg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]#[fg=<<get-fg-for-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>] #W #[fg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>set -g status-right <span style="color:#ba2121">"%-H:%M #[bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>,fg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]#[fg=<<get-fg-for-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>] %a, %b %d #[bg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,fg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]#[fg=<<get-fg-for-color(name="</span>blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>] #H "</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-format <span style="color:#ba2121">"#[fg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>,bg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]#[fg=<<get-fg-for-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>] #I #W #[align=left] #[fg=<<get-color(name="</span><span style="color:#008000">light</span>-blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]"</span><span style="">
|
||||
</span></span></span><span style="display:flex;"><span><span style=""></span>setw -g window-status-current-format <span style="color:#ba2121">"#[fg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]#[fg=<<get-fg-for-color(name="</span>blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>] #I #W #[fg=<<get-color(name="</span>blue<span style="color:#ba2121">")>>,bg=<<get-color(name="</span>bg-other<span style="color:#ba2121">")>>,nobold,nounderscore,noitalics]"</span><span style="">
|
||||
</span></span></span></code></pre></div><p>Source the line config:</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-vim" data-lang="vim"><span style="display:flex;"><span>source ~/.tmux.line.conf<span style="">
|
||||
</span></span></span></code></pre></div><h2 id="alacritty">Alacritty</h2>
|
||||
|
|
@ -697,6 +695,13 @@
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> (<span style="color:#00f">></span> <span style="color:#008000">quote</span> <span style="color:#666">0</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">concat</span> <span style="color:#ba2121">"\""</span> <span style="color:#19177c">color</span> <span style="color:#ba2121">"\""</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">color</span>))
|
||||
</span></span></code></pre></div><p><a id="code-snippet--get-fg-for-color"></a></p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">let</span> ((<span style="color:#19177c">val</span> (<span style="color:#008000">if</span> (<span style="color:#19177c">ct-light-p</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">name</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'black</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'white</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> (<span style="color:#00f">eq</span> <span style="color:#008000">quote</span> <span style="color:#666">1</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">concat</span> <span style="color:#ba2121">"\""</span> <span style="color:#19177c">val</span> <span style="color:#ba2121">"\""</span>)
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">val</span>))
|
||||
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">setq-local</span> <span style="color:#19177c">org-confirm-babel-evaluate</span> <span style="color:#800">nil</span>)
|
||||
</span></span></code></pre></div><p>References:</p>
|
||||
<ul>
|
||||
|
|
@ -743,7 +748,7 @@
|
|||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">x</span>:<span style="color:#bbb"> </span><span style="color:#666">0</span><span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">y</span>:<span style="color:#bbb"> </span><span style="color:#666">0</span><span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">dynamic_padding</span>:<span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">true</span><span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">opacity</span>:<span style="color:#bbb"> </span><span style="color:#666">0.80</span><span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">opacity</span>:<span style="color:#bbb"> </span><span style="color:#666">1</span><span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"></span><span style="color:#008000;font-weight:bold">key_bindings</span>:<span style="color:#bbb">
|
||||
</span></span></span><span style="display:flex;"><span><span style="color:#bbb"> </span>- {<span style="color:#bbb"> </span><span style="color:#008000;font-weight:bold">key: Paste, action</span>:<span style="color:#bbb"> </span>Paste }<span style="color:#bbb">
|
||||
|
|
|
|||
|
|
@ -3403,6 +3403,7 @@
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/color-value-rgb</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">or</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg-mode-line-active</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg-mode-line</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> (<span style="color:#19177c">my/light-p</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-dec</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg-alt</span>) <span style="color:#666">10</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-inc</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg-alt</span>) <span style="color:#666">15</span>)))))
|
||||
|
|
|
|||
|
|
@ -1290,14 +1290,17 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:config</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">doom-themes-enable-bold</span> <span style="color:#800">t</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">doom-themes-enable-italic</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">my/remote-server</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">load-theme</span> <span style="color:#19177c">'doom-gruvbox</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">load-theme</span> <span style="color:#19177c">'doom-palenight</span> <span style="color:#800">t</span>))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#408080;font-style:italic">;; (if my/remote-server</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#408080;font-style:italic">;; (load-theme 'doom-gruvbox t)</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#408080;font-style:italic">;; (load-theme 'doom-palenight t))</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">doom-themes-visual-bell-config</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">setq</span> <span style="color:#19177c">doom-themes-treemacs-theme</span> <span style="color:#ba2121">"doom-colors"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">doom-themes-treemacs-config</span>))
|
||||
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">modus-themes</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span></code></pre></div><p>Let’s see…</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">ef-themes</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">:straight</span> <span style="color:#800">t</span>)
|
||||
</span></span></code></pre></div><h4 id="custom-theme-1">Custom theme</h4>
|
||||
<p>Here I define a few things on the top of Emacs theme, because:</p>
|
||||
<ul>
|
||||
|
|
@ -1317,6 +1320,10 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/modus-p</span> ()
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">seq-find</span> (<span style="color:#008000">lambda</span> (<span style="color:#19177c">x</span>) (<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> <span style="color:#19177c">bos</span> <span style="color:#ba2121">"modus"</span>) (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">x</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">custom-enabled-themes</span>))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/ef-p</span> ()
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">seq-find</span> (<span style="color:#008000">lambda</span> (<span style="color:#19177c">x</span>) (<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> <span style="color:#19177c">bos</span> <span style="color:#ba2121">"ef"</span>) (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">x</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">custom-enabled-themes</span>))
|
||||
</span></span></code></pre></div><p>I also want to know if the current theme is light or not:</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/light-p</span> ()
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-light-p</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg</span>)))
|
||||
|
|
@ -1336,22 +1343,23 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defvar</span> <span style="color:#19177c">my/alpha-for-light</span> <span style="color:#666">7</span>)
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/doom-color</span> (<span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">override</span> (<span style="color:#19177c">alist-get</span> (<span style="color:#19177c">my/doom-p</span>) <span style="color:#19177c">my/theme-override</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">color-name</span> (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">is-light</span> (<span style="color:#19177c">ct-light-p</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">or</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">alist-get</span> <span style="color:#19177c">color</span> <span style="color:#19177c">override</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">cond</span>
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">'black</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">is-light</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'fg</span>) (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">'white</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">is-light</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>) (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'fg</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">'border</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">is-light</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'base0</span>) (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'base8</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> <span style="color:#19177c">bos</span> <span style="color:#ba2121">"light-"</span>) <span style="color:#19177c">color-name</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-inc</span> (<span style="color:#19177c">my/doom-color</span> (<span style="color:#00f">intern</span> (<span style="color:#00f">substring</span> <span style="color:#19177c">color-name</span> <span style="color:#666">6</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">my/alpha-for-light</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#800">t</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">color</span>))))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">when</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">override</span> (<span style="color:#19177c">alist-get</span> (<span style="color:#19177c">my/doom-p</span>) <span style="color:#19177c">my/theme-override</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">color-name</span> (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">is-light</span> (<span style="color:#19177c">ct-light-p</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">or</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">alist-get</span> <span style="color:#19177c">color</span> <span style="color:#19177c">override</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">cond</span>
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">'black</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">is-light</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'fg</span>) (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">'white</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">is-light</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'bg</span>) (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'fg</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">'border</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> <span style="color:#19177c">is-light</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'base0</span>) (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">'base8</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> <span style="color:#19177c">bos</span> <span style="color:#ba2121">"light-"</span>) <span style="color:#19177c">color-name</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-inc</span> (<span style="color:#19177c">my/doom-color</span> (<span style="color:#00f">intern</span> (<span style="color:#00f">substring</span> <span style="color:#19177c">color-name</span> <span style="color:#666">6</span>)))
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">my/alpha-for-light</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#800">t</span> (<span style="color:#19177c">doom-color</span> <span style="color:#19177c">color</span>)))))))
|
||||
</span></span></code></pre></div><p>And the same for <code>modus-themes</code>. <code>my/modus-color</code> has to accept the same arguments as I use for <code>my/doom-color</code> for backward compatibility, which requires a bit more tuning.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/modus-get-base</span> (<span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">base-value</span> (<span style="color:#00f">string-to-number</span> (<span style="color:#00f">substring</span> (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>) <span style="color:#666">4</span> <span style="color:#666">5</span>)))
|
||||
|
|
@ -1359,9 +1367,8 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">base-end</span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> <span style="color:#19177c">'fg-dim</span> (<span style="color:#19177c">modus-themes--current-theme-palette</span>)))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">nth</span> <span style="color:#19177c">base-value</span> (<span style="color:#19177c">ct-gradient</span> <span style="color:#666">9</span> <span style="color:#19177c">base-start</span> <span style="color:#19177c">base-end</span> <span style="color:#800">t</span>))))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/modus-color</span> (<span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let*</span> ((<span style="color:#19177c">palette</span> (<span style="color:#19177c">modus-themes--current-theme-palette</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">is-light</span> (<span style="color:#19177c">ct-light-p</span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> <span style="color:#19177c">'bg-main</span> <span style="color:#19177c">palette</span>)))))
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/prot-color</span> (<span style="color:#19177c">color</span> <span style="color:#19177c">palette</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">is-light</span> (<span style="color:#19177c">ct-light-p</span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> <span style="color:#19177c">'bg-main</span> <span style="color:#19177c">palette</span>)))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">cond</span>
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">member</span> <span style="color:#19177c">color</span> <span style="color:#666">'</span>(<span style="color:#19177c">black</span> <span style="color:#19177c">white</span> <span style="color:#19177c">light-black</span> <span style="color:#19177c">light-white</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">bg-main</span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> <span style="color:#19177c">'bg-main</span> <span style="color:#19177c">palette</span>)))
|
||||
|
|
@ -1391,9 +1398,17 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">color</span> <span style="color:#19177c">'grey</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/modus-get-base</span> <span style="color:#19177c">'base5</span>))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">string-match-p</span> (<span style="color:#008000">rx</span> <span style="color:#19177c">bos</span> <span style="color:#ba2121">"light-"</span>) (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> (<span style="color:#00f">intern</span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"%s-intense"</span> (<span style="color:#00f">substring</span> (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>) <span style="color:#666">6</span>))) <span style="color:#19177c">palette</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">or</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> (<span style="color:#00f">intern</span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"%s-intense"</span> (<span style="color:#00f">substring</span> (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>) <span style="color:#666">6</span>))) <span style="color:#19177c">palette</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> (<span style="color:#00f">intern</span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"bg-%s-intense"</span> (<span style="color:#00f">substring</span> (<span style="color:#00f">symbol-name</span> <span style="color:#19177c">color</span>) <span style="color:#666">6</span>))) <span style="color:#19177c">palette</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#800">t</span> (<span style="color:#19177c">cadr</span> (<span style="color:#00f">assoc</span> <span style="color:#19177c">color</span> <span style="color:#19177c">palette</span>))))))
|
||||
</span></span></code></pre></div><p>Test the two functions.</p>
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/modus-color</span> (<span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/prot-color</span> <span style="color:#19177c">color</span> (<span style="color:#19177c">modus-themes--current-theme-palette</span>)))
|
||||
</span></span><span style="display:flex;"><span>
|
||||
</span></span><span style="display:flex;"><span>(<span style="color:#008000">defun</span> <span style="color:#19177c">my/ef-color</span> (<span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/prot-color</span> <span style="color:#19177c">color</span> (<span style="color:#19177c">ef-themes--current-theme-palette</span>)))
|
||||
</span></span></code></pre></div><p>Test the three functions.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">defconst</span> <span style="color:#19177c">my/test-colors-list</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#666">'</span>(<span style="color:#19177c">black</span> <span style="color:#19177c">red</span> <span style="color:#19177c">green</span> <span style="color:#19177c">yellow</span> <span style="color:#19177c">blue</span> <span style="color:#19177c">magenta</span> <span style="color:#19177c">cyan</span> <span style="color:#19177c">white</span> <span style="color:#19177c">light-black</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#19177c">light-red</span> <span style="color:#19177c">light-green</span> <span style="color:#19177c">light-yellow</span> <span style="color:#19177c">light-blue</span> <span style="color:#19177c">light-magenta</span>
|
||||
|
|
@ -1404,13 +1419,14 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">interactive</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">buf</span> (<span style="color:#19177c">generate-new-buffer</span> <span style="color:#ba2121">"*colors-test*"</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">with-current-buffer</span> <span style="color:#19177c">buf</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">insert</span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"%-20s %-10s %-10s"</span> <span style="color:#ba2121">"Color"</span> <span style="color:#ba2121">"Doom"</span> <span style="color:#ba2121">"Modus"</span>) <span style="color:#ba2121">"\n"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">insert</span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"%-20s %-10s %-10s %-10s"</span> <span style="color:#ba2121">"Color"</span> <span style="color:#ba2121">"Doom"</span> <span style="color:#ba2121">"Modus"</span> <span style="color:#ba2121">"Ef"</span>) <span style="color:#ba2121">"\n"</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">cl-loop</span> <span style="color:#19177c">for</span> <span style="color:#19177c">color</span> <span style="color:#19177c">in</span> <span style="color:#19177c">my/test-colors-list</span>
|
||||
</span></span><span style="display:flex;"><span> <span style="color:#008000">do</span> (<span style="color:#00f">insert</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"%-20s %-10s %-10s\n"</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">format</span> <span style="color:#ba2121">"%-20s %-10s %-10s %-10s\n"</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#00f">prin1-to-string</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/doom-color</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/modus-color</span> <span style="color:#19177c">color</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/modus-color</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/ef-color</span> <span style="color:#19177c">color</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">special-mode</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">rainbow-mode</span>))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">switch-to-buffer</span> <span style="color:#19177c">buf</span>)))
|
||||
|
|
@ -1419,12 +1435,14 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">cond</span>
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">stringp</span> <span style="color:#19177c">color</span>) (<span style="color:#19177c">my/color-value</span> (<span style="color:#00f">intern</span> <span style="color:#19177c">color</span>)))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#00f">eq</span> <span style="color:#19177c">color</span> <span style="color:#19177c">'bg-other</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">color</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> (<span style="color:#19177c">ct-light-p</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-dec</span> <span style="color:#19177c">color</span> <span style="color:#666">3</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-dec</span> <span style="color:#19177c">color</span> <span style="color:#666">3</span>))))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">or</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg-dim</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">let</span> ((<span style="color:#19177c">color</span> (<span style="color:#19177c">my/color-value</span> <span style="color:#19177c">'bg</span>)))
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">if</span> (<span style="color:#19177c">ct-light-p</span> <span style="color:#19177c">color</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-dec</span> <span style="color:#19177c">color</span> <span style="color:#666">2</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">ct-edit-hsl-l-dec</span> <span style="color:#19177c">color</span> <span style="color:#666">3</span>)))))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">my/doom-p</span>) (<span style="color:#19177c">my/doom-color</span> <span style="color:#19177c">color</span>))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">my/modus-p</span>) (<span style="color:#19177c">my/modus-color</span> <span style="color:#19177c">color</span>))))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">my/modus-p</span>) (<span style="color:#19177c">my/modus-color</span> <span style="color:#19177c">color</span>))
|
||||
</span></span><span style="display:flex;"><span> ((<span style="color:#19177c">my/ef-p</span>) (<span style="color:#19177c">my/ef-color</span> <span style="color:#19177c">color</span>))))
|
||||
</span></span></code></pre></div><p>And a few more functions</p>
|
||||
<h5 id="custom-theme">Custom theme</h5>
|
||||
<p>So, the custom theme:</p>
|
||||
|
|
@ -1474,6 +1492,7 @@ Emacs is also particularly great at writing Lisp code, e.g. Clojure, Common Lisp
|
|||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">load-theme</span> <span style="color:#19177c">theme</span> <span style="color:#800">t</span>)
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#008000">when</span> <span style="color:#19177c">current-prefix-arg</span>
|
||||
</span></span><span style="display:flex;"><span> (<span style="color:#19177c">my/regenerate-desktop</span>)))
|
||||
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#19177c">my/switch-theme</span> <span style="color:#19177c">'ef-duo-light</span>)
|
||||
</span></span></code></pre></div><h4 id="dim-inactive-buffers">Dim inactive buffers</h4>
|
||||
<p>Dim inactive buffers.</p>
|
||||
<div class="highlight"><pre tabindex="0" style=";-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-emacs-lisp" data-lang="emacs-lisp"><span style="display:flex;"><span>(<span style="color:#008000">use-package</span> <span style="color:#19177c">auto-dim-other-buffers</span>
|
||||
|
|
|
|||
BIN
stats/all.png
BIN
stats/all.png
Binary file not shown.
|
Before Width: | Height: | Size: 118 KiB After Width: | Height: | Size: 118 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 65 KiB |
Loading…
Add table
Reference in a new issue