sync live config changes into chezmoi source
Re-add live edits: - fish: gpt-5.2 model, llm.py, rewritten s/icat with ghostty support, new ils function, bass plugin, removed copilot-cli plugin - karabiner: ghostty/moonlight/rdp apps, new caps rules, opt-W shortcut - kitty: cursor_trail, font_size 14.5 - nvim: removed auto-session-nvim-tree, auto-session config update - wezterm: scrollback 1M, border_top 2cell - tmux-nova: local nerdfonts rendering patches - zshrc: track file, includes LM Studio PATH Also fix: chezmoi template error on macOS (osRelease.id without linux guard) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f03b8e90b2
commit
dfb97eb1d0
@ -63,6 +63,7 @@ status_style_bg=$(get_option "@nova-status-style-bg" "#44475a")
|
||||
status_style_fg=$(get_option "@nova-status-style-fg" "#f8f8f2")
|
||||
status_style_active_bg=$(get_option "@nova-status-style-active-bg" "#6272a4")
|
||||
status_style_active_fg=$(get_option "@nova-status-style-active-fg" "#f8f8f2")
|
||||
status_style_activity_fg=$(get_option "@nova-status-activity-fg" "#ff79C6")
|
||||
tmux set-option -g status-style "bg=$status_style_bg,fg=$status_style_fg"
|
||||
|
||||
#
|
||||
@ -84,6 +85,7 @@ IFS=' ' read -r -a segments_left <<< $segments_left
|
||||
tmux set-option -g status-left ""
|
||||
|
||||
first_left_segment=true
|
||||
first_left_nerdfont=$(get_option "@nova-nerdfonts-first" "")
|
||||
for segment in "${segments_left[@]}"; do
|
||||
segment_content=$(get_option "@nova-segment-$segment" "mode")
|
||||
segment_colors=$(get_option "@nova-segment-$segment-colors" "#282a36 #f8f8f2")
|
||||
@ -92,6 +94,11 @@ for segment in "${segments_left[@]}"; do
|
||||
# condition everything on the non emptiness of the evaluated segment
|
||||
tmux set-option -ga status-left "#{?#{w:#{E:@nova-segment-$segment}},"
|
||||
|
||||
if [ $nerdfonts = true ] && [ $first_left_segment = true ]; then
|
||||
tmux set-option -ga status-left "#[fg=${segment_colors[0]}#,bg=${segment_colors[1]}]"
|
||||
tmux set-option -ga status-left "$first_left_nerdfont"
|
||||
fi
|
||||
|
||||
if [ $nerdfonts = true ] && [ $first_left_segment = false ]; then
|
||||
tmux set-option -ga status-left "#[bg=${segment_colors[0]}]"
|
||||
tmux set-option -ga status-left "$nerdfonts_left"
|
||||
@ -129,10 +136,23 @@ if [ $nerdfonts = true ]; then
|
||||
tmux set-window-option -ga window-status-current-format "$nerdfonts_left"
|
||||
fi
|
||||
|
||||
tmux set-window-option -g window-status-format "#[fg=$status_style_fg]#[bg=$status_style_bg]"
|
||||
tmux set-window-option -ga window-status-format "$(padding $padding)"
|
||||
tmux set-window-option -g window-status-format "#{?window_activity_flag,"
|
||||
tmux set-window-option -ga window-status-format "#[bg=$status_style_activity_fg#,fg=$status_style_bg],"
|
||||
tmux set-window-option -ga window-status-format "#[fg=$status_style_fg#,bg=$status_style_bg]}"
|
||||
|
||||
if [ $nerdfonts = true ]; then
|
||||
tmux set-window-option -ga window-status-format "$(padding $(($padding + 1)))"
|
||||
else
|
||||
tmux set-window-option -ga window-status-format "$(padding $padding)"
|
||||
fi
|
||||
|
||||
tmux set-window-option -ga window-status-format "$pane"
|
||||
tmux set-window-option -ga window-status-format "$(padding $padding)"
|
||||
|
||||
if [ $nerdfonts = true ]; then
|
||||
tmux set-window-option -ga window-status-format "$(padding $(($padding + 1)))"
|
||||
else
|
||||
tmux set-window-option -ga window-status-format "$(padding $padding)"
|
||||
fi
|
||||
|
||||
if [ $nerdfonts = true ]; then
|
||||
tmux set-window-option -ga window-status-current-format "#[fg=${status_style_active_fg}]#[bg=${status_style_active_bg}]"
|
||||
@ -156,6 +176,9 @@ fi
|
||||
segments_right=$(get_option "@nova-segments-0-right" "")
|
||||
IFS=' ' read -r -a segments_right <<< $segments_right
|
||||
|
||||
last_right_nerdfont=$(get_option "@nova-nerdfonts-last" "")
|
||||
last_segment=${segments_right[${#segments_right[@]}-1]}
|
||||
|
||||
tmux set-option -g status-right ""
|
||||
|
||||
for segment in "${segments_right[@]}"; do
|
||||
@ -180,6 +203,11 @@ for segment in "${segments_right[@]}"; do
|
||||
tmux set-option -ga status-right "$segment_content"
|
||||
tmux set-option -ga status-right "$(padding $padding)"
|
||||
|
||||
if [ $nerdfonts = true ] && [ $segment = $last_segment ]; then
|
||||
tmux set-option -ga status-right "#[fg=${segment_colors[0]}#,bg=${segment_colors[1]}]"
|
||||
tmux set-option -ga status-right "$last_right_nerdfont"
|
||||
fi
|
||||
|
||||
# set the bg color for the next nerdfonts seperator
|
||||
[ $nerdfonts = true ] && tmux set-option -ga status-right "#[bg=${segment_colors[0]}]"
|
||||
|
||||
@ -206,7 +234,7 @@ for ((row=1; row <= rows; row++)); do
|
||||
segment_colors=$(get_option "@nova-segment-$segment-colors" "#282a36 #f8f8f2")
|
||||
IFS=' ' read -r -a segment_colors <<< $segment_colors
|
||||
if [ "$segment_content" != "" ]; then
|
||||
if [ $nerdfonts = true ] && [ "$(tmux show-option -gqv status-format[$row])" != "#[align=left]"]; then
|
||||
if [ $nerdfonts = true ] && [[ "$(tmux show-option -gqv status-format[$row])" != *"#[align=left]" ]]; then
|
||||
tmux set-option -ga status-format[$row] "#[fg=${nerdfonts_color},bg=#${segment_colors[0]}]"
|
||||
tmux set-option -ga status-format[$row] "$nerdfonts_left"
|
||||
fi
|
||||
|
||||
136
dot_zshrc
Normal file
136
dot_zshrc
Normal file
@ -0,0 +1,136 @@
|
||||
|
||||
|
||||
autoload -Uz compinit && compinit # keep this near the top
|
||||
|
||||
|
||||
|
||||
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||
# Initialization code that may require console input (password prompts, [y/n]
|
||||
# confirmations, etc.) must go above this block; everything else may go below.
|
||||
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||
fi
|
||||
|
||||
# If you come from bash you might have to change your $PATH.
|
||||
# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH
|
||||
|
||||
# Path to your Oh My Zsh installation.
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time Oh My Zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
ZSH_THEME="robbyrussell"
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
plugins=(git)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# User configuration
|
||||
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
|
||||
# You may need to manually set your language environment
|
||||
# export LANG=en_US.UTF-8
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
# if [[ -n $SSH_CONNECTION ]]; then
|
||||
# export EDITOR='vim'
|
||||
# else
|
||||
# export EDITOR='nvim'
|
||||
# fi
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch $(uname -m)"
|
||||
|
||||
# Set personal aliases, overriding those provided by Oh My Zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though Oh My Zsh
|
||||
# users are encouraged to define aliases within a top-level file in
|
||||
# the $ZSH_CUSTOM folder, with .zsh extension. Examples:
|
||||
# - $ZSH_CUSTOM/aliases.zsh
|
||||
# - $ZSH_CUSTOM/macos.zsh
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
source /opt/homebrew/share/powerlevel10k/powerlevel10k.zsh-theme
|
||||
|
||||
|
||||
# Fish-style “ghost” history hints
|
||||
source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
|
||||
|
||||
# Real-time colourising (must be *last*)
|
||||
source $(brew --prefix)/opt/zsh-fast-syntax-highlighting/share/zsh-fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh
|
||||
|
||||
|
||||
|
||||
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||
eval "$(atuin init zsh --disable-up-arrow)"
|
||||
|
||||
# Added by LM Studio CLI (lms)
|
||||
export PATH="$PATH:/Users/anton/.cache/lm-studio/bin"
|
||||
# End of LM Studio CLI section
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
:arc ["^company\\.thebrowser\\.Browser$"]
|
||||
:kitty ["^net\\.kovidgoyal\\.kitty$"]
|
||||
:wezterm ["^com.github.wez.wezterm$"]
|
||||
:ghostty ["^com.mitchellh.ghostty$"]
|
||||
:webapp ["^com\\.apple\\.Safari\\.WebApp\\..+$"]
|
||||
:perplexity ["^ai\\.perplexity\\.mac$"]
|
||||
:gemini ["^com\\.apple\\.Safari\\.WebApp\\.1550A740-0D4C-4C62-BA9B-438AA340471C$"]
|
||||
@ -29,7 +30,9 @@
|
||||
:dataspell ["^com\\.jetbrains\\.dataspell$"]
|
||||
:vikunja ["^com\\.Unite\\.Vikunja$"]
|
||||
:tana ["^inc\\.tana\\.desktop$"]
|
||||
:gfn ["^com\\.nvidia\\.gfnpc\\.mall$"]}
|
||||
:gfn ["^com\\.nvidia\\.gfnpc\\.mall$"]
|
||||
:moonlight ["^com\\.moonlight-stream\\.Moonlight$"]
|
||||
:rdp ["^com\\.microsoft\\.rdc$"]}
|
||||
|
||||
:input-sources {:en {:language "en"}
|
||||
:ru {:language "ru"}}
|
||||
@ -71,7 +74,7 @@
|
||||
|
||||
|
||||
{:des "Alternative language switches: Lcmd->English, Rcmd->Russian, Rshift-> Russian"
|
||||
:rules [[:left_command :left_command nil {:alone {:input :en}}]
|
||||
:rules [:!moonlight [:left_command :left_command nil {:alone {:input :en}}]
|
||||
[:right_command :right_command nil {:alone {:input :ru}}]
|
||||
;; [:right_shift :right_shift nil {:alone {:input :ru}}]
|
||||
[:!Qt [:!Qt {:input :en}]]
|
||||
@ -81,13 +84,21 @@
|
||||
;; [:!Ctab [:!Ctab {:input :en}]]
|
||||
]}
|
||||
|
||||
{:des "Caps->Russian, LShift->English"
|
||||
:rules [[:##caps_lock ["capskey" 1] :ru {:alone {:input :en}
|
||||
{:des "Caps switches languages"
|
||||
:rules [:!moonlight [:##caps_lock ["capskey" 1] :ru {:alone {:input :en}
|
||||
:afterup ["capskey" 0]}]
|
||||
[:##caps_lock ["capskey" 1] :en {:alone {:input :ru}
|
||||
:afterup ["capskey" 0]}]
|
||||
]}
|
||||
|
||||
{:des "Caps switches languages"
|
||||
:rules [:moonlight [:##caps_lock :!Cspacebar]
|
||||
[:##caps_lock :!Cspacebar]
|
||||
[:right_control :right_command]
|
||||
[:left_command :left_control]
|
||||
[:right_command :right_control]
|
||||
]}
|
||||
|
||||
{:des "Tab as Hyper(⌘+⌥+^+⇧)"
|
||||
:rules [:capskey
|
||||
[:tab :!!Sleft_command]]}
|
||||
@ -97,14 +108,16 @@
|
||||
{:des "⌘W->⌘H in Tana"
|
||||
:rules [:tana [:!Cw :!Ch]]}
|
||||
|
||||
|
||||
|
||||
{:des "Caps+↑, Caps+↓ to Control+Opt+arrow"
|
||||
:rules [[:up_arrow :!QESup_arrow :capskey]
|
||||
[:down_arrow :!QESdown_arrow :capskey]
|
||||
[:1 :!QE1 :capskey]
|
||||
[:2 :!QE2 :capskey]
|
||||
[:4 :!!4 :capskey]
|
||||
[:x :!TFf :capskey]
|
||||
[:c :!TFc :capskey]
|
||||
[:n :!!n :capskey]
|
||||
|
||||
[:!S1 :!QES1 :capskey]
|
||||
[:!S2 :!QES2 :capskey]
|
||||
[:!Sup_arrow :!QESm :capskey]
|
||||
@ -118,22 +131,12 @@
|
||||
|
||||
{:des "Caps+T to start Kitty, Caps+B->Bing, Caps+G->Bard, Caps+O->Poe, Caps+P->ChatGPT4, Caps+␣->AllGPT"
|
||||
:rules [:capskey
|
||||
[:r [[:open "/Applications/kitty.app"] {:input :en}] :!kitty]
|
||||
[:r [:!Ct {:input :en}] :kitty]
|
||||
[:k [[:open "/Applications/WezTerm.app"] {:input :en}] :!wezterm]
|
||||
[:k :!Ct :wezterm]
|
||||
[:a [[:open "/Applications/Arc.app"] {:input :en}] :!arc]
|
||||
[:a :!Ch :arc]
|
||||
[:g [:open "/Users/anton/Applications/Gemini.app"] :!gemini]
|
||||
[:g :!Ch :gemini]
|
||||
[:k [[:open "/Applications/kitty.app"] {:input :en}] :!kitty]
|
||||
[:k [:!Ct {:input :en}] :kitty]
|
||||
[:r [[:open "/Applications/Ghostty.app"] {:input :en}] :!ghostty]
|
||||
[:r :!Ct :ghostty]
|
||||
[:t [:open "/Applications/Tana.app"] :!tana]
|
||||
[:t :!Ch :tana]
|
||||
[:c [:open "/Users/anton/Applications/Copilot.app"] :!copilot]
|
||||
[:c :!Ch :copilot]
|
||||
[:y [:open "/Applications/You.app"] :!youcom]
|
||||
[:y :!Ch :youcom]
|
||||
[:d [:open "/Applications/Claude.app"] :!claude]
|
||||
[:d :!Ch :claude]
|
||||
[:h [:open "/Applications/Heptabase.app"] :!hepta]
|
||||
[:h :!Ch :hepta]
|
||||
[:w [:open "/Applications/Setia Wiki.app"] :!wiki]
|
||||
@ -147,8 +150,6 @@
|
||||
[:l :!Ch :librechat]
|
||||
; [:j [:open "/Applications/JupyterLab.app"] :!jupyter]
|
||||
; [:j :!Ch :jupyter]
|
||||
[:m [:open "/Applications/Meta.ai.app"] :!metaai]
|
||||
[:m :!Ch :metaai]
|
||||
[:v [:open "/Applications/Vikunja.app"] :!vikunja]
|
||||
[:v :!Ch :vikunja]
|
||||
]}
|
||||
@ -156,6 +157,9 @@
|
||||
{:des "⌘W->⌘H in Heptabase"
|
||||
:rules [:hepta [:!Cw :!Ch]]}
|
||||
|
||||
{:des "opt-W->⌘H"
|
||||
:rules [[:!Ow :!Ch]]}
|
||||
|
||||
{:des "⌘W->⌘H in Safari ChatGPT app"
|
||||
:rules [:webapp [:!Cw :!Ch]]}
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@ include ./theme.conf
|
||||
#map ctrl+shift+f combine : show_scrollback : send_text normal,application /
|
||||
map ctrl+f6 detach_window new-tab
|
||||
map ctrl+f5 detach_window tab-left
|
||||
|
||||
cursor_trail 0
|
||||
|
||||
#: Fonts {{{
|
||||
|
||||
@ -72,7 +72,7 @@ font_features Menligaturized-Regular -liga
|
||||
#font_family MesloLGS NF
|
||||
shell .
|
||||
allow_remote_control yes
|
||||
font_size 15
|
||||
font_size 14.5
|
||||
#macos_thicken_font 1
|
||||
|
||||
text_composition_strategy 1.7 50
|
||||
|
||||
@ -206,7 +206,6 @@ vim.keymap.set('n', '<leader>u', require('undotree').toggle, { noremap = true, s
|
||||
vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"
|
||||
|
||||
local auto_session = require("auto-session")
|
||||
local auto_session_nvim_tree = require("auto-session-nvim-tree")
|
||||
|
||||
auto_session.setup({
|
||||
log_level = "error",
|
||||
@ -220,7 +219,7 @@ auto_session.setup({
|
||||
restore_upcoming_session = true, -- This is necessary!!
|
||||
},
|
||||
})
|
||||
auto_session_nvim_tree.setup(auto_session)
|
||||
-- require("auto-session-nvim-tree").setup(auto_session)
|
||||
|
||||
require('nvim-treesitter.configs').setup {
|
||||
ensure_installed = { 'c','query','vimdoc','vim','bash', 'go', 'css', 'python', 'html', 'javascript', 'json', 'jsonc', 'lua', 'rust', 'typescript' },
|
||||
|
||||
@ -11,3 +11,4 @@ jhillyerd/plugin-git
|
||||
patrickf1/fzf.fish
|
||||
lilyball/nix-env.fish
|
||||
ilancosman/tide@v6
|
||||
edc/bass
|
||||
|
||||
@ -5,7 +5,7 @@ local wezterm = require 'wezterm'
|
||||
local config = wezterm.config_builder()
|
||||
local act = wezterm.action
|
||||
|
||||
config.scrollback_lines = 5000000
|
||||
config.scrollback_lines = 1000000
|
||||
config.enable_scroll_bar = false
|
||||
|
||||
config.default_cursor_style = 'BlinkingBar'
|
||||
@ -120,7 +120,7 @@ config.window_frame = {
|
||||
border_left_width = '1cell',
|
||||
border_right_width = '0.5cell',
|
||||
border_bottom_height = '0.25cell',
|
||||
border_top_height = '1.2cell',
|
||||
border_top_height = '2cell',
|
||||
border_left_color = '#1c2836',
|
||||
border_right_color = '#1c2836',
|
||||
border_bottom_color = '#1c2836',
|
||||
|
||||
Loading…
Reference in New Issue
Block a user