-
Notifications
You must be signed in to change notification settings - Fork 178
Expand file tree
/
Copy pathosx_kitty_start_tmux.sh
More file actions
executable file
·63 lines (56 loc) · 1.32 KB
/
osx_kitty_start_tmux.sh
File metadata and controls
executable file
·63 lines (56 loc) · 1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/usr/bin/env bash
# for "true full screen" call the script with "fullscreen" as the first argument
TRUE_FULL_SCREEN="$1"
start_terminal_and_run_tmux() {
osascript <<-EOF
tell application "kitty"
activate
delay 1
tell application "System Events" to tell process "kitty"
set frontmost to true
keystroke "tmux"
key code 36
end tell
end tell
EOF
}
resize_window_to_full_screen() {
osascript <<-EOF
tell application "kitty"
activate
tell application "System Events"
if (every window of process "kitty") is {} then
keystroke "n" using command down
end if
tell application "Finder"
set desktopSize to bounds of window of desktop
end tell
set position of front window of process "kitty" to {0, 0}
set size of front window of process "kitty" to {item 3 of desktopSize, item 4 of desktopSize}
end tell
end tell
EOF
}
resize_to_true_full_screen() {
osascript <<-EOF
tell application "kitty"
# wait for kitty to start
delay 1
activate
# short wait for kitty to gain focus
delay 0.1
tell application "System Events" to tell process "kitty"
keystroke "f" using {control down, command down}
end tell
end tell
EOF
}
main() {
start_terminal_and_run_tmux
if [ "$TRUE_FULL_SCREEN" == "fullscreen" ]; then
resize_to_true_full_screen
else
resize_window_to_full_screen
fi
}
main