Ghostty since wezterm struggles to integrate nicely with GNOME?
Some checks failed
/ check (push) Failing after 1m52s

This commit is contained in:
Daniel Flanagan 2025-02-10 12:13:58 -06:00
parent 42a8b813e5
commit 5cb85cb296
4 changed files with 106 additions and 79 deletions

View file

@ -64,7 +64,7 @@ function _last_cmd_duration
set_color -b normal green set_color -b normal green
set -q CMD_DURATION && printf " %dms" $CMD_DURATION set -q CMD_DURATION && printf " %dms" $CMD_DURATION
if test $CMD_DURATION -gt 5000 && test $this_shell_should_notify = 1 if test $CMD_DURATION -gt 5000 && test $this_shell_should_notify = 1
printf "\e]777;notify;%s;%s\e\\" "WezTerm: Command Finished" (history --max 1) printf "\e]777;notify;%s;%s\e\\" "Terminal Command Finished" (history --max 1)
set this_shell_should_notify 0 set this_shell_should_notify 0
end end
end end

View file

@ -1,5 +1,3 @@
font-family = "IosevkaLyteTerm"
# The font families to use. # The font families to use.
# #
# You can generate the list of valid values using the CLI: # You can generate the list of valid values using the CLI:
@ -39,7 +37,10 @@ font-family = "IosevkaLyteTerm"
# specify the value as `""` (empty string) to reset the list and then set the # specify the value as `""` (empty string) to reset the list and then set the
# new values. For example: # new values. For example:
# #
# font-family = "" font-family = "IosevkaLyteTerm"
font-family = "Symbols Nerd Font Mono"
font-family = "Noto Color Emoji"
font-family-bold = "IosevkaLyteTerm"
# font-family = "My Favorite Font" # font-family = "My Favorite Font"
# #
# Setting any of these as CLI arguments will automatically clear the # Setting any of these as CLI arguments will automatically clear the
@ -51,11 +52,11 @@ font-family = "IosevkaLyteTerm"
# #
# Changing this configuration at runtime will only affect new terminals, i.e. # Changing this configuration at runtime will only affect new terminals, i.e.
# new windows, tabs, etc. # new windows, tabs, etc.
font-family = # font-family =
font-family-bold = # font-family-bold =
font-family-italic = # font-family-italic =
font-family-bold-italic = # font-family-bold-italic =
# The named font style to use for each of the requested terminal font styles. # The named font style to use for each of the requested terminal font styles.
# This looks up the style based on the font style string advertised by the # This looks up the style based on the font style string advertised by the
# font itself. For example, "Iosevka Heavy" has a style of "Heavy". # font itself. For example, "Iosevka Heavy" has a style of "Heavy".
@ -70,7 +71,7 @@ font-family-bold-italic =
# disabling the font style. # disabling the font style.
font-style = default font-style = default
font-style-bold = default font-style-bold = Heavy
font-style-italic = default font-style-italic = default
font-style-bold-italic = default font-style-bold-italic = default
# Control whether Ghostty should synthesize a style if the requested style is # Control whether Ghostty should synthesize a style if the requested style is
@ -189,7 +190,7 @@ font-codepoint-map =
# Draw fonts with a thicker stroke, if supported. # Draw fonts with a thicker stroke, if supported.
# This is currently only supported on macOS. # This is currently only supported on macOS.
font-thicken = false # font-thicken = false
# Strength of thickening when `font-thicken` is enabled. # Strength of thickening when `font-thicken` is enabled.
# #
@ -199,7 +200,7 @@ font-thicken = false
# Has no effect when `font-thicken` is set to `false`. # Has no effect when `font-thicken` is set to `false`.
# #
# This is currently only supported on macOS. # This is currently only supported on macOS.
font-thicken-strength = 255 # font-thicken-strength = 255
# All of the configurations behavior adjust various metrics determined by the # All of the configurations behavior adjust various metrics determined by the
# font. The values can be integers (1, -1, etc.) or a percentage (20%, -15%, # font. The values can be integers (1, -1, etc.) or a percentage (20%, -15%,
@ -377,7 +378,7 @@ freetype-load-flags = hinting,force-autohint,monochrome,autohint
# #
# - macOS: titlebar tabs style is not updated when switching themes. # - macOS: titlebar tabs style is not updated when switching themes.
# #
theme = "catppuccin-mocha" theme = "dark:catppuccin-mocha-sapphire-custom,light:catppuccin-latte"
# Swap the foreground and background colors of cells for selection. This # Swap the foreground and background colors of cells for selection. This
# option overrides the `selection-foreground` and `selection-background` # option overrides the `selection-foreground` and `selection-background`
@ -826,7 +827,7 @@ background-opacity = 1
# need to set environment-specific settings and/or install third-party plugins # need to set environment-specific settings and/or install third-party plugins
# in order to support background blur, as there isn't a unified interface for # in order to support background blur, as there isn't a unified interface for
# doing so. # doing so.
background-blur-radius = false # background-blur-radius = false
# The opacity level (opposite of transparency) of an unfocused split. # The opacity level (opposite of transparency) of an unfocused split.
# Unfocused splits by default are slightly faded out to make it easier to see # Unfocused splits by default are slightly faded out to make it easier to see
@ -850,7 +851,7 @@ unfocused-split-fill =
# The color of the split divider. If this is not set, a default will be chosen. # The color of the split divider. If this is not set, a default will be chosen.
# Specified as either hex (`#RRGGBB` or `RRGGBB`) or a named X11 color. # Specified as either hex (`#RRGGBB` or `RRGGBB`) or a named X11 color.
split-divider-color = # split-divider-color =
# The command to run, usually a shell. If this is not an absolute path, it'll # The command to run, usually a shell. If this is not an absolute path, it'll
# be looked up in the `PATH`. If this is not set, a default will be looked up # be looked up in the `PATH`. If this is not set, a default will be looked up
@ -1196,65 +1197,65 @@ working-directory =
# Ghostty will attempt to request these permissions. If the permissions are # Ghostty will attempt to request these permissions. If the permissions are
# not granted, the keybind will not work. On macOS, you can find these # not granted, the keybind will not work. On macOS, you can find these
# permissions in System Preferences -> Privacy & Security -> Accessibility. # permissions in System Preferences -> Privacy & Security -> Accessibility.
keybind = ctrl+comma=open_config # keybind = ctrl+comma=open_config
keybind = shift+insert=paste_from_selection # keybind = shift+insert=paste_from_selection
keybind = ctrl+page_down=next_tab # keybind = ctrl+page_down=next_tab
keybind = ctrl+shift+v=paste_from_clipboard # keybind = ctrl+shift+v=paste_from_clipboard
keybind = ctrl+alt+up=goto_split:up # keybind = ctrl+alt+up=goto_split:up
keybind = ctrl+shift+a=select_all # keybind = ctrl+shift+a=select_all
keybind = shift+up=adjust_selection:up # keybind = shift+up=adjust_selection:up
keybind = alt+five=goto_tab:5 # keybind = alt+five=goto_tab:5
keybind = super+ctrl+right_bracket=goto_split:next # keybind = super+ctrl+right_bracket=goto_split:next
keybind = ctrl+equal=increase_font_size:1 # keybind = ctrl+equal=increase_font_size:1
keybind = ctrl+shift+o=new_split:right # keybind = ctrl+shift+o=new_split:right
keybind = ctrl+shift+c=copy_to_clipboard # keybind = ctrl+shift+c=copy_to_clipboard
keybind = ctrl+shift+q=quit # keybind = ctrl+shift+q=quit
keybind = ctrl+shift+n=new_window # keybind = ctrl+shift+n=new_window
keybind = ctrl+shift+page_down=jump_to_prompt:1 # keybind = ctrl+shift+page_down=jump_to_prompt:1
keybind = ctrl+shift+comma=reload_config # keybind = ctrl+shift+comma=reload_config
keybind = ctrl+minus=decrease_font_size:1 # keybind = ctrl+minus=decrease_font_size:1
keybind = shift+left=adjust_selection:left # keybind = shift+left=adjust_selection:left
keybind = super+ctrl+shift+up=resize_split:up,10 # keybind = super+ctrl+shift+up=resize_split:up,10
keybind = alt+eight=goto_tab:8 # keybind = alt+eight=goto_tab:8
keybind = shift+page_up=scroll_page_up # keybind = shift+page_up=scroll_page_up
keybind = ctrl+alt+shift+j=write_scrollback_file:open # keybind = ctrl+alt+shift+j=write_scrollback_file:open
keybind = ctrl+shift+left=previous_tab # keybind = ctrl+shift+left=previous_tab
keybind = ctrl+shift+w=close_surface # keybind = ctrl+shift+w=close_surface
keybind = super+ctrl+shift+equal=equalize_splits # keybind = super+ctrl+shift+equal=equalize_splits
keybind = shift+end=scroll_to_bottom # keybind = shift+end=scroll_to_bottom
keybind = ctrl+zero=reset_font_size # keybind = ctrl+zero=reset_font_size
keybind = alt+three=goto_tab:3 # keybind = alt+three=goto_tab:3
keybind = ctrl+shift+j=write_scrollback_file:paste # keybind = ctrl+shift+j=write_scrollback_file:paste
keybind = ctrl+enter=toggle_fullscreen # keybind = ctrl+enter=toggle_fullscreen
keybind = ctrl+page_up=previous_tab # keybind = ctrl+page_up=previous_tab
keybind = shift+right=adjust_selection:right # keybind = shift+right=adjust_selection:right
keybind = ctrl+tab=next_tab # keybind = ctrl+tab=next_tab
keybind = ctrl+alt+left=goto_split:left # keybind = ctrl+alt+left=goto_split:left
keybind = shift+page_down=scroll_page_down # keybind = shift+page_down=scroll_page_down
keybind = ctrl+shift+right=next_tab # keybind = ctrl+shift+right=next_tab
keybind = ctrl+shift+page_up=jump_to_prompt:-1 # keybind = ctrl+shift+page_up=jump_to_prompt:-1
keybind = alt+nine=last_tab # keybind = alt+nine=last_tab
keybind = ctrl+shift+t=new_tab # keybind = ctrl+shift+t=new_tab
keybind = shift+down=adjust_selection:down # keybind = shift+down=adjust_selection:down
keybind = super+ctrl+shift+left=resize_split:left,10 # keybind = super+ctrl+shift+left=resize_split:left,10
keybind = ctrl+shift+tab=previous_tab # keybind = ctrl+shift+tab=previous_tab
keybind = alt+two=goto_tab:2 # keybind = alt+two=goto_tab:2
keybind = ctrl+alt+down=goto_split:down # keybind = ctrl+alt+down=goto_split:down
keybind = super+ctrl+shift+down=resize_split:down,10 # keybind = super+ctrl+shift+down=resize_split:down,10
keybind = super+ctrl+shift+right=resize_split:right,10 # keybind = super+ctrl+shift+right=resize_split:right,10
keybind = ctrl+plus=increase_font_size:1 # keybind = ctrl+plus=increase_font_size:1
keybind = alt+four=goto_tab:4 # keybind = alt+four=goto_tab:4
keybind = ctrl+insert=copy_to_clipboard # keybind = ctrl+insert=copy_to_clipboard
keybind = ctrl+shift+e=new_split:down # keybind = ctrl+shift+e=new_split:down
keybind = ctrl+alt+right=goto_split:right # keybind = ctrl+alt+right=goto_split:right
keybind = alt+f4=close_window # keybind = alt+f4=close_window
keybind = alt+one=goto_tab:1 # keybind = alt+one=goto_tab:1
keybind = ctrl+shift+enter=toggle_split_zoom # keybind = ctrl+shift+enter=toggle_split_zoom
keybind = shift+home=scroll_to_top # keybind = shift+home=scroll_to_top
keybind = super+ctrl+left_bracket=goto_split:previous # keybind = super+ctrl+left_bracket=goto_split:previous
keybind = ctrl+shift+i=inspector:toggle # keybind = ctrl+shift+i=inspector:toggle
keybind = alt+six=goto_tab:6 # keybind = alt+six=goto_tab:6
keybind = alt+seven=goto_tab:7 # keybind = alt+seven=goto_tab:7
# Horizontal window padding. This applies padding between the terminal cells # Horizontal window padding. This applies padding between the terminal cells
# and the left and right window borders. The value is in points, meaning that # and the left and right window borders. The value is in points, meaning that
@ -1462,9 +1463,9 @@ window-width = 0
# Note: this is only supported on macOS and Linux GLFW builds. The GTK # Note: this is only supported on macOS and Linux GLFW builds. The GTK
# runtime does not support setting the window position (this is a limitation # runtime does not support setting the window position (this is a limitation
# of GTK 4.0). # of GTK 4.0).
window-position-x = # window-position-x =
window-position-y = # window-position-y =
# Whether to enable saving and restoring window state. Window state includes # Whether to enable saving and restoring window state. Window state includes
# their position, size, tabs, splits, etc. Some window state requires shell # their position, size, tabs, splits, etc. Some window state requires shell
# integration, such as preserving working directories. See `shell-integration` # integration, such as preserving working directories. See `shell-integration`
@ -2285,7 +2286,7 @@ adw-toolbar-style = raised
# enable all toasts. # enable all toasts.
# #
# This configuration only applies to GTK with Adwaita enabled. # This configuration only applies to GTK with Adwaita enabled.
adw-toast = clipboard-copy # adw-toast = clipboard-copy
# If `true` (default), then the Ghostty GTK tabs will be "wide." Wide tabs # If `true` (default), then the Ghostty GTK tabs will be "wide." Wide tabs
# are the new typical Gnome style where tabs fill their available space. # are the new typical Gnome style where tabs fill their available space.
@ -2314,7 +2315,7 @@ gtk-adwaita = true
# not exist. If you want to include a file that begins with a literal ? # not exist. If you want to include a file that begins with a literal ?
# character, surround the file path in double quotes ("). # character, surround the file path in double quotes (").
# The file size limit for a single stylesheet is 5MiB. # The file size limit for a single stylesheet is 5MiB.
gtk-custom-css = # gtk-custom-css =
# If `true` (default), applications running in the terminal can show desktop # If `true` (default), applications running in the terminal can show desktop
# notifications using certain escape sequences such as OSC 9 or OSC 777. # notifications using certain escape sequences such as OSC 9 or OSC 777.

View file

@ -0,0 +1,25 @@
palette = 0=#45475a
palette = 1=#f38ba8
palette = 2=#a6e3a1
palette = 3=#fab387
palette = 4=#74c7ec
palette = 5=#cba6f7
palette = 6=#f9e2af
palette = 8=#585b70
palette = 9=#f38ba8
palette = 10=#a6e3a1
palette = 11=#fab387
palette = 12=#74c7ec
palette = 13=#cba6f7
palette = 14=#f9e2af
palette = 15=#a6adc8
background = #1e1e2e
foreground = #cdd6f4
cursor-color = "#cdd6f4"
cursor-text = "#c6d0f5"
selection-background = #f9e2af
selection-foreground = #1e1e2e

View file

@ -1,8 +1,9 @@
local wezterm = require 'wezterm' local wezterm = require 'wezterm'
local config = wezterm.config_builder() local config = wezterm.config_builder()
config.enable_wayland = true config.enable_wayland = false
config.adjust_window_size_when_changing_font_size = false config.adjust_window_size_when_changing_font_size = false
config.front_end = "OpenGL"
config.color_scheme = 'catppuccin-mocha-sapphire'; config.color_scheme = 'catppuccin-mocha-sapphire';
config.font_size = 12.0 config.font_size = 12.0