mirror of
https://github.com/sahinakkaya/dotfiles.git
synced 2025-06-24 21:51:09 +02:00
Update kitty config
This commit is contained in:
parent
6fa57fba4d
commit
3c64972def
@ -18,7 +18,7 @@ action_alias kitty_scrollback_nvim kitten $HOME/.local/share/nvim/lazy/kitty-scr
|
|||||||
|
|
||||||
# include ./themes/themes/OneDark.conf
|
# include ./themes/themes/OneDark.conf
|
||||||
# include ~/.local/share/nvim/lazy/tokyonight.nvim/extras/kitty/tokyonight_day.conf
|
# include ~/.local/share/nvim/lazy/tokyonight.nvim/extras/kitty/tokyonight_day.conf
|
||||||
include ~/.local/share/nvim/lazy/kanagawa.nvim/extras/kanagawa_light.conf
|
include ~/.local/share/nvim/lazy/kanagawa.nvim/extras/kitty/kanagawa.conf
|
||||||
#include ./tokyonight.conf
|
#include ./tokyonight.conf
|
||||||
#Fonts {{{
|
#Fonts {{{
|
||||||
|
|
||||||
|
89
.config/kitty/tab_bar.py
Normal file
89
.config/kitty/tab_bar.py
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
import math
|
||||||
|
from kitty.fast_data_types import Screen, get_options
|
||||||
|
from kitty.tab_bar import (
|
||||||
|
DrawData,
|
||||||
|
ExtraData,
|
||||||
|
TabBarData,
|
||||||
|
as_rgb,
|
||||||
|
draw_tab_with_powerline,
|
||||||
|
)
|
||||||
|
|
||||||
|
opts = get_options()
|
||||||
|
|
||||||
|
surface1 = as_rgb(int("45475A", 16))
|
||||||
|
window_icon = ""
|
||||||
|
layout_icon = ""
|
||||||
|
|
||||||
|
active_tab_layout_name = ""
|
||||||
|
active_tab_num_windows = 1
|
||||||
|
|
||||||
|
layout_symbols = {
|
||||||
|
"grid": " ",
|
||||||
|
"stack": " ",
|
||||||
|
"fat": " ",
|
||||||
|
"tall": " ",
|
||||||
|
"splits": " "
|
||||||
|
}
|
||||||
|
|
||||||
|
def draw_tab(
|
||||||
|
draw_data: DrawData,
|
||||||
|
screen: Screen,
|
||||||
|
tab: TabBarData,
|
||||||
|
before: int,
|
||||||
|
max_title_length: int,
|
||||||
|
index: int,
|
||||||
|
is_last: bool,
|
||||||
|
extra_data: ExtraData,
|
||||||
|
) -> int:
|
||||||
|
global active_tab_layout_name
|
||||||
|
global active_tab_num_windows
|
||||||
|
if tab.is_active:
|
||||||
|
active_tab_layout_name = tab.layout_name
|
||||||
|
active_tab_num_windows = tab.num_windows
|
||||||
|
end = draw_tab_with_powerline(
|
||||||
|
draw_data, screen, tab, before, max_title_length, index, is_last, extra_data
|
||||||
|
)
|
||||||
|
_draw_right_status(
|
||||||
|
screen,
|
||||||
|
is_last,
|
||||||
|
)
|
||||||
|
return end
|
||||||
|
|
||||||
|
|
||||||
|
def _draw_right_status(screen: Screen, is_last: bool) -> int:
|
||||||
|
if not is_last:
|
||||||
|
return screen.cursor.x
|
||||||
|
|
||||||
|
cells = [
|
||||||
|
# layout name
|
||||||
|
(surface1, screen.cursor.bg, " " + layout_symbols[active_tab_layout_name] + " "),
|
||||||
|
(surface1, screen.cursor.bg, active_tab_layout_name + ('' if active_tab_num_windows == 1 else f" ({active_tab_num_windows} windows)")),
|
||||||
|
]
|
||||||
|
|
||||||
|
# calculate leading spaces to separate tabs from right status
|
||||||
|
right_status_length = 0
|
||||||
|
for _, _, cell in cells:
|
||||||
|
right_status_length += len(cell)
|
||||||
|
leading_spaces = 0
|
||||||
|
if opts.tab_bar_align == "center":
|
||||||
|
leading_spaces = (
|
||||||
|
math.ceil((screen.columns - screen.cursor.x) / 2) - right_status_length
|
||||||
|
)
|
||||||
|
elif opts.tab_bar_align == "left":
|
||||||
|
leading_spaces = screen.columns - screen.cursor.x - right_status_length
|
||||||
|
|
||||||
|
# draw leading spaces
|
||||||
|
if leading_spaces > 0:
|
||||||
|
screen.draw(" " * leading_spaces)
|
||||||
|
|
||||||
|
# draw right status
|
||||||
|
for fg, bg, cell in cells:
|
||||||
|
screen.cursor.fg = fg
|
||||||
|
screen.cursor.bg = bg
|
||||||
|
screen.draw(cell)
|
||||||
|
screen.cursor.fg = 0
|
||||||
|
screen.cursor.bg = 0
|
||||||
|
|
||||||
|
# update cursor position
|
||||||
|
screen.cursor.x = max(screen.cursor.x, screen.columns - right_status_length)
|
||||||
|
return screen.cursor.x
|
Loading…
Reference in New Issue
Block a user