Переглянути джерело

feat: add wezterm configuration

Douglas A 2 місяців тому
батько
коміт
aa77aa2a8d
3 змінених файлів з 135 додано та 1 видалено
  1. 1 1
      run.sh
  2. 5 0
      wezterm/main.sh
  3. 129 0
      wezterm/wezterm.lua

+ 1 - 1
run.sh

@@ -1,7 +1,7 @@
 #!/bin/sh
 set -x
 
-for f in X bash nvim openbox git terminator zsh
+for f in nvim bash openbox git terminator zsh wezterm
 do
 	sh $f/main.sh
 	echo "$f [OK]"

+ 5 - 0
wezterm/main.sh

@@ -0,0 +1,5 @@
+#!/bin/sh
+HOME=/home/cmte
+
+test -d $HOME/.config/wezterm || mkdir -p $HOME/.config/wezterm
+ln -s $HOME/dotfiles/wezterm/wezterm.lua $HOME/.config/wezterm/wezterm.lua

+ 129 - 0
wezterm/wezterm.lua

@@ -0,0 +1,129 @@
+local wezterm = require 'wezterm'
+
+local config = wezterm.config_builder()
+
+config.font = wezterm.font 'Hack'
+
+config.font_size = 12.0
+
+config.initial_rows = 40
+config.initial_cols = 120
+
+config.leader = { key = 'Space', mods = 'CTRL' }
+config.keys = {
+	{
+		key = "t",
+		mods = "LEADER",
+		action = wezterm.action.ShowLauncher
+	},
+	{
+		key = "w",
+		mods = "LEADER",
+		action = wezterm.action.CloseCurrentTab { confirm = false }
+	},
+	{
+		key = "{",
+		mods = "LEADER",
+		action = wezterm.action.ActivateTabRelative(-1)
+
+	},
+	{
+		key = "}",
+		mods = "LEADER",
+		action = wezterm.action.ActivateTabRelative(1)
+
+	},
+	{
+		key = "%",
+		mods = "LEADER|SHIFT",
+		action = wezterm.action.SplitPane {
+			direction = 'Right',
+			size = { Percent = 50 }
+		}
+	},
+	{
+		key = "'",
+		mods = "LEADER",
+		action = wezterm.action.SplitPane {
+			direction = 'Down',
+			size = { Percent = 50 }
+		}
+	},
+	{
+		key = "l",
+		mods = "LEADER",
+		action = wezterm.action.ActivatePaneDirection 'Right',
+	},
+	{
+		key = "h",
+		mods = "LEADER",
+		action = wezterm.action.ActivatePaneDirection 'Left',
+	},
+	{
+		key = "j",
+		mods = "LEADER",
+		action = wezterm.action.ActivatePaneDirection 'Down',
+	},
+	{
+		key = "k",
+		mods = "LEADER",
+		action = wezterm.action.ActivatePaneDirection 'Up',
+	},
+	{
+		key = "L",
+		mods = "LEADER",
+		action = wezterm.action.AdjustPaneSize {'Right', 5}
+	},
+	{
+		key = "H",
+		mods = "LEADER",
+		action = wezterm.action.AdjustPaneSize {'Left', 5}
+	},
+	{
+		key = "J",
+		mods = "LEADER",
+		action = wezterm.action.AdjustPaneSize {'Down', 5}
+	},
+	{
+		key = "K",
+		mods = "LEADER",
+		action = wezterm.action.AdjustPaneSize {'Up', 5}
+	},
+
+	{
+		key = "n",
+		mods = "LEADER",
+		action = wezterm.action.ActivatePaneDirection 'Next',
+	},
+	{
+		key = "p",
+		mods = "LEADER",
+		action = wezterm.action.ActivatePaneDirection 'Prev',
+	},
+	{
+		key = ".",
+		mods = "LEADER",
+		action = wezterm.action.CloseCurrentPane { confirm = false },
+	},
+	{
+		key = "o",
+		mods = "LEADER",
+		action = wezterm.action.ActivateLastTab
+	},
+	{
+		key = "p",
+		mods = "LEADER",
+		action = wezterm.action.ActivateCommandPalette
+	},
+}
+
+for i = 1, 8 do
+	table.insert(config.keys, {
+		key = tostring(i),
+		mods = "LEADER",
+		action = wezterm.action.ActivateTab(i - 1)
+	})
+end
+
+
+return config