feat(wezterm): добавлен Windows-конфиг через chezmoi

- Зачем:
  - нужен живой WezTerm-конфиг, который тиражируется через dotfiles на Windows.
- Что:
  - добавлен репозиторный `wezterm/.wezterm.lua`.
  - добавлен chezmoi-шаблон для symlink `~/.wezterm.lua`.
  - README описывает Windows-настройку WezTerm.
- Проверка:
  - git diff --check -- README.md chezmoi/.chezmoiignore chezmoi/symlink_dot_wezterm.lua.tmpl wezterm/.wezterm.lua.
  - проверено, что `~/.wezterm.lua` является SymbolicLink на `dotfiles\wezterm\.wezterm.lua`.
This commit is contained in:
Dmitriy Dementiev committed 2026-07-08 18:59:25 +03:00
1 parent 39ef49dfcb
commit 35d4114ba3
4 files changed
+74

No files matched your search

+71
View File
@@ -0,0 +1,71 @@
local wezterm = require 'wezterm'
local act = wezterm.action
local config = wezterm.config_builder()
--config.key_map_preference = 'Physical'
--config.enable_kitty_keyboard = true
config.enable_kitty_keyboard = false -- так работает куда стабильнее
--config.enable_csi_u_key_encoding = false
--config.allow_win32_input_mode = false
local local_domain = { DomainName = 'local' }
local function wsl(name) return { DomainName = 'WSL:' .. name } end
local pwsh = { 'pwsh.exe', '-NoLogo' }
local cmd = { 'cmd.exe' }
config.default_domain = 'local'
config.default_prog = pwsh
config.scrollback_lines = 50000
config.color_scheme = 'Ubuntu'
-- Ближе всего к Windows Terminal
config.font = wezterm.font 'Cascadia Mono'
config.font_size = 11.0
-- Хороший современный вариант; WezTerm сам поставляется с JetBrains Mono
--config.font = wezterm.font 'JetBrains Mono'
--config.font_size = 11.0
--config.line_height = 1.0
--config.cell_width = 1.0
config.initial_cols = 120
config.initial_rows = 28
config.window_background_opacity = 1.0
config.hide_tab_bar_if_only_one_tab = true
config.freetype_load_target = 'HorizontalLcd'
config.freetype_render_target = 'HorizontalLcd'
config.launch_menu = {
{ label = 'PowerShell', domain = local_domain, args = pwsh },
{ label = 'Командная строка', domain = local_domain, args = cmd },
{ label = 'Ubuntu', domain = wsl 'Ubuntu' },
{ label = 'Ubuntu 24.04.1 LTS', domain = wsl 'Ubuntu-24.04' },
}
config.keys = {
{ key = 'phys:Space', mods = 'CTRL|SHIFT', action = act.ShowLauncherArgs { flags = 'LAUNCH_MENU_ITEMS|DOMAINS' } },
{ key = 'phys:V', mods = 'CTRL|SHIFT', action = act.PasteFrom 'Clipboard' },
{ key = 'phys:T', mods = 'CTRL|SHIFT', action = act.SpawnCommandInNewTab { domain = local_domain, args = pwsh } },
{ key = 'phys:R', mods = 'CTRL|SHIFT|ALT', action = act.ResetTerminal },
-- Переключение на вкладку по номеру: Ctrl+Shift+1..9
{ key = 'phys:1', mods = 'CTRL|SHIFT', action = act.ActivateTab(0) },
{ key = 'phys:2', mods = 'CTRL|SHIFT', action = act.ActivateTab(1) },
{ key = 'phys:3', mods = 'CTRL|SHIFT', action = act.ActivateTab(2) },
{ key = 'phys:4', mods = 'CTRL|SHIFT', action = act.ActivateTab(3) },
{ key = 'phys:5', mods = 'CTRL|SHIFT', action = act.ActivateTab(4) },
{ key = 'phys:6', mods = 'CTRL|SHIFT', action = act.ActivateTab(5) },
{ key = 'phys:7', mods = 'CTRL|SHIFT', action = act.ActivateTab(6) },
{ key = 'phys:8', mods = 'CTRL|SHIFT', action = act.ActivateTab(7) },
{ key = 'phys:9', mods = 'CTRL|SHIFT', action = act.ActivateTab(-1) },
{ key = 'phys:H', mods = 'CTRL|SHIFT|ALT', action = act.SplitHorizontal { domain = 'CurrentPaneDomain' } },
{ key = 'phys:V', mods = 'CTRL|SHIFT|ALT', action = act.SplitVertical { domain = 'CurrentPaneDomain' } },
}
return config