jetsung revised this gist 3 months ago. Go to revision
1 file changed, 25 deletions
wezterm.lua
| @@ -27,37 +27,12 @@ return { | |||
| 27 | 27 | }, | |
| 28 | 28 | ||
| 29 | 29 | keys = { | |
| 30 | - | -- 新建 Tab(iTerm2 风格) | |
| 31 | - | { | |
| 32 | - | key = "t", | |
| 33 | - | mods = "CTRL|SHIFT", | |
| 34 | - | action = wezterm.action.SpawnTab("CurrentPaneDomain"), | |
| 35 | - | -- action = hud("New Tab", act.SpawnTab("CurrentPaneDomain")), | |
| 36 | - | }, | |
| 37 | - | ||
| 38 | 30 | -- 关闭当前 Tab | |
| 39 | 31 | { | |
| 40 | 32 | key = "w", | |
| 41 | 33 | mods = "CTRL|SHIFT", | |
| 42 | 34 | action = wezterm.action.CloseCurrentTab { confirm = true }, | |
| 43 | 35 | }, | |
| 44 | - | ||
| 45 | - | -- 下一个 Tab | |
| 46 | - | { | |
| 47 | - | key = "]", | |
| 48 | - | mods = "CTRL|SHIFT", | |
| 49 | - | action = wezterm.action.ActivateTabRelative(1), | |
| 50 | - | -- action = hud("Next Tab", | |
| 51 | - | -- act.ActivateTabRelative(1) | |
| 52 | - | -- ), | |
| 53 | - | }, | |
| 54 | - | ||
| 55 | - | -- 上一个 Tab | |
| 56 | - | { | |
| 57 | - | key = "[", | |
| 58 | - | mods = "CTRL|SHIFT", | |
| 59 | - | action = wezterm.action.ActivateTabRelative(-1), | |
| 60 | - | }, | |
| 61 | 36 | }, | |
| 62 | 37 | ||
| 63 | 38 | -- Ubuntu + GNOME 更像 iTerm2 | |
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 28 deletions
wezterm.lua
| @@ -42,13 +42,6 @@ return { | |||
| 42 | 42 | action = wezterm.action.CloseCurrentTab { confirm = true }, | |
| 43 | 43 | }, | |
| 44 | 44 | ||
| 45 | - | -- 关闭当前 Pane | |
| 46 | - | { | |
| 47 | - | key = "q", | |
| 48 | - | mods = "CTRL|SHIFT", | |
| 49 | - | action = wezterm.action.CloseCurrentPane { confirm = true }, | |
| 50 | - | }, | |
| 51 | - | ||
| 52 | 45 | -- 下一个 Tab | |
| 53 | 46 | { | |
| 54 | 47 | key = "]", | |
| @@ -65,27 +58,6 @@ return { | |||
| 65 | 58 | mods = "CTRL|SHIFT", | |
| 66 | 59 | action = wezterm.action.ActivateTabRelative(-1), | |
| 67 | 60 | }, | |
| 68 | - | ||
| 69 | - | -- 垂直分屏(像 Sublime) | |
| 70 | - | --[[ | |
| 71 | - | { | |
| 72 | - | key = "d", | |
| 73 | - | mods = "CTRL|SHIFT", | |
| 74 | - | action = wezterm.action.SplitHorizontal({ domain = "CurrentPaneDomain" }), | |
| 75 | - | -- action = hud("Split Horizontal", | |
| 76 | - | -- act.SplitHorizontal({ domain = "CurrentPaneDomain" }) | |
| 77 | - | -- ), | |
| 78 | - | }, | |
| 79 | - | ]] | |
| 80 | - | ||
| 81 | - | -- 水平分屏 | |
| 82 | - | --[[ | |
| 83 | - | { | |
| 84 | - | key = "D", | |
| 85 | - | mods = "CTRL|SHIFT", | |
| 86 | - | action = wezterm.action.SplitVertical({ domain = "CurrentPaneDomain" }), | |
| 87 | - | }, | |
| 88 | - | ]] | |
| 89 | 61 | }, | |
| 90 | 62 | ||
| 91 | 63 | -- Ubuntu + GNOME 更像 iTerm2 | |
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 4 insertions, 5 deletions
wezterm.lua
| @@ -35,18 +35,17 @@ return { | |||
| 35 | 35 | -- action = hud("New Tab", act.SpawnTab("CurrentPaneDomain")), | |
| 36 | 36 | }, | |
| 37 | 37 | ||
| 38 | - | -- 关闭当前 Tab(保持原样) | |
| 38 | + | -- 关闭当前 Tab | |
| 39 | 39 | { | |
| 40 | 40 | key = "w", | |
| 41 | 41 | mods = "CTRL|SHIFT", | |
| 42 | 42 | action = wezterm.action.CloseCurrentTab { confirm = true }, | |
| 43 | 43 | }, | |
| 44 | 44 | ||
| 45 | - | -- 强烈推荐:新增 关闭当前 Pane(分屏) | |
| 46 | - | -- 用 Ctrl + w (不带 Shift),和 tmux/vim 风格一致,不会和关 tab 冲突 | |
| 45 | + | -- 关闭当前 Pane | |
| 47 | 46 | { | |
| 48 | - | key = "w", | |
| 49 | - | mods = "CTRL", | |
| 47 | + | key = "q", | |
| 48 | + | mods = "CTRL|SHIFT", | |
| 50 | 49 | action = wezterm.action.CloseCurrentPane { confirm = true }, | |
| 51 | 50 | }, | |
| 52 | 51 | ||
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 11 insertions, 3 deletions
wezterm.lua
| @@ -35,13 +35,21 @@ return { | |||
| 35 | 35 | -- action = hud("New Tab", act.SpawnTab("CurrentPaneDomain")), | |
| 36 | 36 | }, | |
| 37 | 37 | ||
| 38 | - | -- 关闭 Tab | |
| 38 | + | -- 关闭当前 Tab(保持原样) | |
| 39 | 39 | { | |
| 40 | 40 | key = "w", | |
| 41 | 41 | mods = "CTRL|SHIFT", | |
| 42 | - | action = wezterm.action.CloseCurrentTab({ confirm = true }), | |
| 42 | + | action = wezterm.action.CloseCurrentTab { confirm = true }, | |
| 43 | 43 | }, | |
| 44 | - | ||
| 44 | + | ||
| 45 | + | -- 强烈推荐:新增 关闭当前 Pane(分屏) | |
| 46 | + | -- 用 Ctrl + w (不带 Shift),和 tmux/vim 风格一致,不会和关 tab 冲突 | |
| 47 | + | { | |
| 48 | + | key = "w", | |
| 49 | + | mods = "CTRL", | |
| 50 | + | action = wezterm.action.CloseCurrentPane { confirm = true }, | |
| 51 | + | }, | |
| 52 | + | ||
| 45 | 53 | -- 下一个 Tab | |
| 46 | 54 | { | |
| 47 | 55 | key = "]", | |
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 8 deletions
wezterm.lua
| @@ -27,12 +27,6 @@ return { | |||
| 27 | 27 | }, | |
| 28 | 28 | ||
| 29 | 29 | keys = { | |
| 30 | - | -- 用 Ctrl + W 关闭当前 pane | |
| 31 | - | { | |
| 32 | - | key = 'w', | |
| 33 | - | mods = 'CTRL', | |
| 34 | - | action = wezterm.action.CloseCurrentPane { confirm = true }, | |
| 35 | - | }, | |
| 36 | 30 | -- 新建 Tab(iTerm2 风格) | |
| 37 | 31 | { | |
| 38 | 32 | key = "t", | |
| @@ -42,13 +36,11 @@ return { | |||
| 42 | 36 | }, | |
| 43 | 37 | ||
| 44 | 38 | -- 关闭 Tab | |
| 45 | - | --[[ | |
| 46 | 39 | { | |
| 47 | 40 | key = "w", | |
| 48 | 41 | mods = "CTRL|SHIFT", | |
| 49 | 42 | action = wezterm.action.CloseCurrentTab({ confirm = true }), | |
| 50 | 43 | }, | |
| 51 | - | ]] | |
| 52 | 44 | ||
| 53 | 45 | -- 下一个 Tab | |
| 54 | 46 | { | |
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 13 insertions, 1 deletion
wezterm.lua
| @@ -27,6 +27,12 @@ return { | |||
| 27 | 27 | }, | |
| 28 | 28 | ||
| 29 | 29 | keys = { | |
| 30 | + | -- 用 Ctrl + W 关闭当前 pane | |
| 31 | + | { | |
| 32 | + | key = 'w', | |
| 33 | + | mods = 'CTRL', | |
| 34 | + | action = wezterm.action.CloseCurrentPane { confirm = true }, | |
| 35 | + | }, | |
| 30 | 36 | -- 新建 Tab(iTerm2 风格) | |
| 31 | 37 | { | |
| 32 | 38 | key = "t", | |
| @@ -36,11 +42,13 @@ return { | |||
| 36 | 42 | }, | |
| 37 | 43 | ||
| 38 | 44 | -- 关闭 Tab | |
| 45 | + | --[[ | |
| 39 | 46 | { | |
| 40 | 47 | key = "w", | |
| 41 | 48 | mods = "CTRL|SHIFT", | |
| 42 | 49 | action = wezterm.action.CloseCurrentTab({ confirm = true }), | |
| 43 | 50 | }, | |
| 51 | + | ]] | |
| 44 | 52 | ||
| 45 | 53 | -- 下一个 Tab | |
| 46 | 54 | { | |
| @@ -60,6 +68,7 @@ return { | |||
| 60 | 68 | }, | |
| 61 | 69 | ||
| 62 | 70 | -- 垂直分屏(像 Sublime) | |
| 71 | + | --[[ | |
| 63 | 72 | { | |
| 64 | 73 | key = "d", | |
| 65 | 74 | mods = "CTRL|SHIFT", | |
| @@ -68,13 +77,16 @@ return { | |||
| 68 | 77 | -- act.SplitHorizontal({ domain = "CurrentPaneDomain" }) | |
| 69 | 78 | -- ), | |
| 70 | 79 | }, | |
| 80 | + | ]] | |
| 71 | 81 | ||
| 72 | 82 | -- 水平分屏 | |
| 83 | + | --[[ | |
| 73 | 84 | { | |
| 74 | 85 | key = "D", | |
| 75 | 86 | mods = "CTRL|SHIFT", | |
| 76 | 87 | action = wezterm.action.SplitVertical({ domain = "CurrentPaneDomain" }), | |
| 77 | 88 | }, | |
| 89 | + | ]] | |
| 78 | 90 | }, | |
| 79 | 91 | ||
| 80 | 92 | -- Ubuntu + GNOME 更像 iTerm2 | |
| @@ -172,4 +184,4 @@ return { | |||
| 172 | 184 | -- macOS 动画感 | |
| 173 | 185 | animation_fps = 60, | |
| 174 | 186 | max_fps = 60, | |
| 175 | - | } | |
| 187 | + | } | |
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 7 insertions
wezterm.lua
| @@ -19,6 +19,13 @@ end | |||
| 19 | 19 | ||
| 20 | 20 | return { | |
| 21 | 21 | ||
| 22 | + | -- 设置底座 | |
| 23 | + | default_prog = default_prog, | |
| 24 | + | ||
| 25 | + | set_environment_variables = { | |
| 26 | + | TERM = "xterm-256color", | |
| 27 | + | }, | |
| 28 | + | ||
| 22 | 29 | keys = { | |
| 23 | 30 | -- 新建 Tab(iTerm2 风格) | |
| 24 | 31 | { | |
jetsung revised this gist 3 months ago. Go to revision
1 file changed, 168 insertions
wezterm.lua(file created)
| @@ -0,0 +1,168 @@ | |||
| 1 | + | local wezterm = require 'wezterm' | |
| 2 | + | local act = wezterm.action | |
| 3 | + | local target = wezterm.target_triple | |
| 4 | + | ||
| 5 | + | local drag_mod = "SUPER" | |
| 6 | + | local default_prog = nil | |
| 7 | + | ||
| 8 | + | -- Windows 特殊处理 | |
| 9 | + | if target:find("windows") then | |
| 10 | + | drag_mod = "ALT" | |
| 11 | + | ||
| 12 | + | -- 只在 Windows 使用 PowerShell 7 | |
| 13 | + | default_prog = { | |
| 14 | + | "C:\\Program Files\\PowerShell\\7\\pwsh.exe", | |
| 15 | + | "-NoLogo", | |
| 16 | + | "-ExecutionPolicy", "RemoteSigned" | |
| 17 | + | } | |
| 18 | + | end | |
| 19 | + | ||
| 20 | + | return { | |
| 21 | + | ||
| 22 | + | keys = { | |
| 23 | + | -- 新建 Tab(iTerm2 风格) | |
| 24 | + | { | |
| 25 | + | key = "t", | |
| 26 | + | mods = "CTRL|SHIFT", | |
| 27 | + | action = wezterm.action.SpawnTab("CurrentPaneDomain"), | |
| 28 | + | -- action = hud("New Tab", act.SpawnTab("CurrentPaneDomain")), | |
| 29 | + | }, | |
| 30 | + | ||
| 31 | + | -- 关闭 Tab | |
| 32 | + | { | |
| 33 | + | key = "w", | |
| 34 | + | mods = "CTRL|SHIFT", | |
| 35 | + | action = wezterm.action.CloseCurrentTab({ confirm = true }), | |
| 36 | + | }, | |
| 37 | + | ||
| 38 | + | -- 下一个 Tab | |
| 39 | + | { | |
| 40 | + | key = "]", | |
| 41 | + | mods = "CTRL|SHIFT", | |
| 42 | + | action = wezterm.action.ActivateTabRelative(1), | |
| 43 | + | -- action = hud("Next Tab", | |
| 44 | + | -- act.ActivateTabRelative(1) | |
| 45 | + | -- ), | |
| 46 | + | }, | |
| 47 | + | ||
| 48 | + | -- 上一个 Tab | |
| 49 | + | { | |
| 50 | + | key = "[", | |
| 51 | + | mods = "CTRL|SHIFT", | |
| 52 | + | action = wezterm.action.ActivateTabRelative(-1), | |
| 53 | + | }, | |
| 54 | + | ||
| 55 | + | -- 垂直分屏(像 Sublime) | |
| 56 | + | { | |
| 57 | + | key = "d", | |
| 58 | + | mods = "CTRL|SHIFT", | |
| 59 | + | action = wezterm.action.SplitHorizontal({ domain = "CurrentPaneDomain" }), | |
| 60 | + | -- action = hud("Split Horizontal", | |
| 61 | + | -- act.SplitHorizontal({ domain = "CurrentPaneDomain" }) | |
| 62 | + | -- ), | |
| 63 | + | }, | |
| 64 | + | ||
| 65 | + | -- 水平分屏 | |
| 66 | + | { | |
| 67 | + | key = "D", | |
| 68 | + | mods = "CTRL|SHIFT", | |
| 69 | + | action = wezterm.action.SplitVertical({ domain = "CurrentPaneDomain" }), | |
| 70 | + | }, | |
| 71 | + | }, | |
| 72 | + | ||
| 73 | + | -- Ubuntu + GNOME 更像 iTerm2 | |
| 74 | + | window_frame = { | |
| 75 | + | font_size = 11, | |
| 76 | + | }, | |
| 77 | + | ||
| 78 | + | -- 像 macOS iTerm2 一样拖动窗口 | |
| 79 | + | mouse_bindings = { | |
| 80 | + | { | |
| 81 | + | event = { Down = { streak = 1, button = "Left" } }, | |
| 82 | + | mods = drag_mod, | |
| 83 | + | action = act.StartWindowDrag, | |
| 84 | + | }, | |
| 85 | + | }, | |
| 86 | + | ||
| 87 | + | -- GPU 渲染 | |
| 88 | + | front_end = "WebGpu", | |
| 89 | + | ||
| 90 | + | -- 字体(非常接近 macOS 观感) | |
| 91 | + | font = wezterm.font_with_fallback({ | |
| 92 | + | "JetBrains Mono", | |
| 93 | + | "Fira Code", | |
| 94 | + | "Noto Sans Mono", | |
| 95 | + | "JetBrainsMono Nerd Font", | |
| 96 | + | }), | |
| 97 | + | ||
| 98 | + | font_size = 12.5, | |
| 99 | + | line_height = 1.15, | |
| 100 | + | ||
| 101 | + | -- macOS 风格窗口 | |
| 102 | + | window_decorations = "RESIZE", | |
| 103 | + | window_background_opacity = 0.93, | |
| 104 | + | text_background_opacity = 0.93, | |
| 105 | + | ||
| 106 | + | -- 光标(Sublime 风格) | |
| 107 | + | default_cursor_style = "BlinkingBar", | |
| 108 | + | cursor_blink_rate = 600, | |
| 109 | + | ||
| 110 | + | -- 关闭顶部 tab bar(更像 iTerm2) | |
| 111 | + | enable_tab_bar = false, | |
| 112 | + | ||
| 113 | + | -- padding 像 macOS 终端 | |
| 114 | + | window_padding = { | |
| 115 | + | left = 12, | |
| 116 | + | right = 12, | |
| 117 | + | top = 10, | |
| 118 | + | bottom = 10, | |
| 119 | + | }, | |
| 120 | + | ||
| 121 | + | -- 颜色主题(iTerm2 + Sublime 混合) | |
| 122 | + | colors = { | |
| 123 | + | foreground = "#E8E8E8", | |
| 124 | + | background = "#1E1F22", | |
| 125 | + | ||
| 126 | + | cursor_bg = "#A6E22E", | |
| 127 | + | cursor_fg = "#1E1F22", | |
| 128 | + | cursor_border = "#A6E22E", | |
| 129 | + | ||
| 130 | + | selection_fg = "#FFFFFF", | |
| 131 | + | selection_bg = "#44475A", | |
| 132 | + | ||
| 133 | + | ansi = { | |
| 134 | + | "#2D2A2E", | |
| 135 | + | "#F92672", | |
| 136 | + | "#A6E22E", | |
| 137 | + | "#E6DB74", | |
| 138 | + | "#66D9EF", | |
| 139 | + | "#AE81FF", | |
| 140 | + | "#38CCD1", | |
| 141 | + | "#F8F8F2", | |
| 142 | + | }, | |
| 143 | + | ||
| 144 | + | brights = { | |
| 145 | + | "#75715E", | |
| 146 | + | "#FF6188", | |
| 147 | + | "#B6E354", | |
| 148 | + | "#FFD866", | |
| 149 | + | "#78DCE8", | |
| 150 | + | "#AB9DF2", | |
| 151 | + | "#3BC9DB", | |
| 152 | + | "#FFFFFF", | |
| 153 | + | }, | |
| 154 | + | ||
| 155 | + | -- iTerm2 风格 split | |
| 156 | + | split = "#44475A", | |
| 157 | + | }, | |
| 158 | + | ||
| 159 | + | -- 滚动条 | |
| 160 | + | enable_scroll_bar = false, | |
| 161 | + | ||
| 162 | + | -- 平滑滚动 | |
| 163 | + | scrollback_lines = 5000, | |
| 164 | + | ||
| 165 | + | -- macOS 动画感 | |
| 166 | + | animation_fps = 60, | |
| 167 | + | max_fps = 60, | |
| 168 | + | } | |