mirror of https://github.com/fairyglade/ly.git
Fix clock string length issues (fixes #716)
Co-authored-by: Plash <plash@noreply.codeberg.org> Signed-off-by: AnErrupTion <anerruption@disroot.org>
This commit is contained in:
parent
c05c32c5be
commit
b35c055e7b
|
@ -7,6 +7,7 @@ err_alloc = فشل في تخصيص الذاكرة
|
||||||
err_bounds = out-of-bounds index
|
err_bounds = out-of-bounds index
|
||||||
err_brightness_change = فشل في تغيير سطوع الشاشة
|
err_brightness_change = فشل في تغيير سطوع الشاشة
|
||||||
err_chdir = فشل في فتح مجلد المنزل
|
err_chdir = فشل في فتح مجلد المنزل
|
||||||
|
|
||||||
err_config = فشل في تفسير ملف الإعدادات
|
err_config = فشل في تفسير ملف الإعدادات
|
||||||
err_dgn_oob = رسالة سجل (Log)
|
err_dgn_oob = رسالة سجل (Log)
|
||||||
err_domain = اسم نطاق غير صالح
|
err_domain = اسم نطاق غير صالح
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = índex fora de límits
|
||||||
err_brightness_change = error en canviar la brillantor
|
err_brightness_change = error en canviar la brillantor
|
||||||
err_chdir = error en obrir la carpeta home
|
err_chdir = error en obrir la carpeta home
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = missatge de registre
|
err_dgn_oob = missatge de registre
|
||||||
err_domain = domini invàlid
|
err_domain = domini invàlid
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = index je mimo hranice pole
|
||||||
|
|
||||||
err_chdir = nelze otevřít domovský adresář
|
err_chdir = nelze otevřít domovský adresář
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = zpráva protokolu
|
err_dgn_oob = zpráva protokolu
|
||||||
err_domain = neplatná doména
|
err_domain = neplatná doména
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ err_alloc = Speicherzuweisung fehlgeschlagen
|
||||||
err_bounds = Index ausserhalb des Bereichs
|
err_bounds = Index ausserhalb des Bereichs
|
||||||
err_brightness_change = Helligkeitsänderung fehlgeschlagen
|
err_brightness_change = Helligkeitsänderung fehlgeschlagen
|
||||||
err_chdir = Fehler beim Oeffnen des Home-Ordners
|
err_chdir = Fehler beim Oeffnen des Home-Ordners
|
||||||
|
|
||||||
err_config = Fehler beim Verarbeiten der Konfigurationsdatei
|
err_config = Fehler beim Verarbeiten der Konfigurationsdatei
|
||||||
err_dgn_oob = Diagnose-Nachricht
|
err_dgn_oob = Diagnose-Nachricht
|
||||||
err_domain = Ungueltige Domain
|
err_domain = Ungueltige Domain
|
||||||
|
|
|
@ -7,6 +7,7 @@ err_alloc = failed memory allocation
|
||||||
err_bounds = out-of-bounds index
|
err_bounds = out-of-bounds index
|
||||||
err_brightness_change = failed to change brightness
|
err_brightness_change = failed to change brightness
|
||||||
err_chdir = failed to open home folder
|
err_chdir = failed to open home folder
|
||||||
|
err_clock_too_long = clock string too long
|
||||||
err_config = unable to parse config file
|
err_config = unable to parse config file
|
||||||
err_dgn_oob = log message
|
err_dgn_oob = log message
|
||||||
err_domain = invalid domain
|
err_domain = invalid domain
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = índice fuera de límites
|
||||||
|
|
||||||
err_chdir = error al abrir la carpeta home
|
err_chdir = error al abrir la carpeta home
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = mensaje de registro
|
err_dgn_oob = mensaje de registro
|
||||||
err_domain = dominio inválido
|
err_domain = dominio inválido
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ err_alloc = échec d'allocation mémoire
|
||||||
err_bounds = indice hors-limite
|
err_bounds = indice hors-limite
|
||||||
err_brightness_change = échec du changement de luminosité
|
err_brightness_change = échec du changement de luminosité
|
||||||
err_chdir = échec de l'ouverture du répertoire home
|
err_chdir = échec de l'ouverture du répertoire home
|
||||||
|
err_clock_too_long = chaîne de formattage de l'horloge trop longue
|
||||||
err_config = échec de lecture du fichier de configuration
|
err_config = échec de lecture du fichier de configuration
|
||||||
err_dgn_oob = message
|
err_dgn_oob = message
|
||||||
err_domain = domaine invalide
|
err_domain = domaine invalide
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = indice fuori limite
|
||||||
|
|
||||||
err_chdir = impossibile aprire home directory
|
err_chdir = impossibile aprire home directory
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = messaggio log
|
err_dgn_oob = messaggio log
|
||||||
err_domain = dominio non valido
|
err_domain = dominio non valido
|
||||||
|
|
||||||
|
|
|
@ -1,126 +1,67 @@
|
||||||
authenticating=認証中...
|
authenticating = 認証中...
|
||||||
brightness_down=明るさを下げる
|
brightness_down = 明るさを下げる
|
||||||
brightness_up=明るさを上げる
|
brightness_up = 明るさを上げる
|
||||||
capslock=CapsLock
|
capslock = CapsLock
|
||||||
err_alloc=メモリ割り当て失敗
|
|
||||||
err_bounds=境界外インデックス
|
err_alloc = メモリ割り当て失敗
|
||||||
err_brightness_change=明るさの変更に失敗しました
|
err_bounds = 境界外インデックス
|
||||||
err_chdir=ホームフォルダを開けませんでした
|
err_brightness_change = 明るさの変更に失敗しました
|
||||||
err_config=設定ファイルを解析できません
|
err_chdir = ホームフォルダを開けませんでした
|
||||||
err_console_dev=コンソールへのアクセスに失敗しました
|
|
||||||
err_dgn_oob=ログメッセージ
|
err_config = 設定ファイルを解析できません
|
||||||
err_domain=無効なドメイン
|
err_dgn_oob = ログメッセージ
|
||||||
err_empty_password=空のパスワードは許可されていません
|
err_domain = 無効なドメイン
|
||||||
err_envlist=環境変数リストの取得に失敗しました
|
err_empty_password = 空のパスワードは許可されていません
|
||||||
err_hostname=ホスト名の取得に失敗しました
|
err_envlist = 環境変数リストの取得に失敗しました
|
||||||
err_mlock=パスワードメモリのロックに失敗しました
|
err_hostname = ホスト名の取得に失敗しました
|
||||||
err_null=ヌルポインタ
|
|
||||||
err_numlock=NumLockの設定に失敗しました
|
err_mlock = パスワードメモリのロックに失敗しました
|
||||||
err_pam=PAMトランザクション失敗
|
err_null = ヌルポインタ
|
||||||
err_pam_abort=PAMトランザクションが中断されました
|
err_numlock = NumLockの設定に失敗しました
|
||||||
err_pam_acct_expired=アカウントの有効期限が切れています
|
err_pam = PAMトランザクション失敗
|
||||||
err_pam_auth=認証エラー
|
err_pam_abort = PAMトランザクションが中断されました
|
||||||
err_pam_authinfo_unavail=ユーザー情報の取得に失敗しました
|
err_pam_acct_expired = アカウントの有効期限が切れています
|
||||||
err_pam_authok_reqd=トークンの有効期限が切れています
|
err_pam_auth = 認証エラー
|
||||||
err_pam_buf=メモリバッファエラー
|
err_pam_authinfo_unavail = ユーザー情報の取得に失敗しました
|
||||||
err_pam_cred_err=認証情報の設定に失敗しました
|
err_pam_authok_reqd = トークンの有効期限が切れています
|
||||||
err_pam_cred_expired=認証情報の有効期限が切れています
|
err_pam_buf = メモリバッファエラー
|
||||||
err_pam_cred_insufficient=認証情報が不十分です
|
err_pam_cred_err = 認証情報の設定に失敗しました
|
||||||
err_pam_cred_unavail=認証情報の取得に失敗しました
|
err_pam_cred_expired = 認証情報の有効期限が切れています
|
||||||
err_pam_maxtries=最大試行回数に到達しました
|
err_pam_cred_insufficient = 認証情報が不十分です
|
||||||
err_pam_perm_denied=アクセスが拒否されました
|
err_pam_cred_unavail = 認証情報の取得に失敗しました
|
||||||
err_pam_session=セッションエラー
|
err_pam_maxtries = 最大試行回数に到達しました
|
||||||
err_pam_sys=システムエラー
|
err_pam_perm_denied = アクセスが拒否されました
|
||||||
err_pam_user_unknown=不明なユーザー
|
err_pam_session = セッションエラー
|
||||||
err_path=パスの設定に失敗しました
|
err_pam_sys = システムエラー
|
||||||
err_perm_dir=カレントディレクトリの変更に失敗しました
|
err_pam_user_unknown = 不明なユーザー
|
||||||
err_perm_group=グループ権限のダウングレードに失敗しました
|
err_path = パスの設定に失敗しました
|
||||||
err_perm_user=ユーザー権限のダウングレードに失敗しました
|
err_perm_dir = カレントディレクトリの変更に失敗しました
|
||||||
err_pwnam=ユーザー情報の取得に失敗しました
|
err_perm_group = グループ権限のダウングレードに失敗しました
|
||||||
err_sleep=スリープコマンドの実行に失敗しました
|
err_perm_user = ユーザー権限のダウングレードに失敗しました
|
||||||
err_tty_ctrl=TTY制御の転送に失敗しました
|
err_pwnam = ユーザー情報の取得に失敗しました
|
||||||
err_user_gid=ユーザーGIDの設定に失敗しました
|
err_sleep = スリープコマンドの実行に失敗しました
|
||||||
err_user_init=ユーザーの初期化に失敗しました
|
|
||||||
err_user_uid=ユーザーUIDの設定に失敗しました
|
err_tty_ctrl = TTY制御の転送に失敗しました
|
||||||
err_xauth=xauthコマンドの実行に失敗しました
|
|
||||||
err_xcb_conn=XCB接続に失敗しました
|
err_user_gid = ユーザーGIDの設定に失敗しました
|
||||||
err_xsessions_dir=セッションフォルダが見つかりませんでした
|
err_user_init = ユーザーの初期化に失敗しました
|
||||||
err_xsessions_open=セッションフォルダを開けませんでした
|
err_user_uid = ユーザーUIDの設定に失敗しました
|
||||||
insert=挿入
|
err_xauth = xauthコマンドの実行に失敗しました
|
||||||
login=ログイン
|
err_xcb_conn = XCB接続に失敗しました
|
||||||
logout=ログアウト済み
|
err_xsessions_dir = セッションフォルダが見つかりませんでした
|
||||||
no_x11_support=X11サポートはコンパイル時に無効化されています
|
err_xsessions_open = セッションフォルダを開けませんでした
|
||||||
normal=通常
|
insert = 挿入
|
||||||
numlock=NumLock
|
login = ログイン
|
||||||
other=その他
|
logout = ログアウト済み
|
||||||
password=パスワード
|
no_x11_support = X11サポートはコンパイル時に無効化されています
|
||||||
restart=再起動
|
normal = 通常
|
||||||
shell=シェル
|
numlock = NumLock
|
||||||
shutdown=シャットダウン
|
other = その他
|
||||||
sleep=スリープ
|
password = パスワード
|
||||||
wayland=Wayland
|
restart = 再起動
|
||||||
x11=X11
|
shell = シェル
|
||||||
xinitrc=xinitrc
|
shutdown = シャットダウン
|
||||||
authenticating=認証中...
|
sleep = スリープ
|
||||||
brightness_down=明るさを下げる
|
wayland = Wayland
|
||||||
brightness_up=明るさを上げる
|
x11 = X11
|
||||||
capslock=CapsLock
|
xinitrc = xinitrc
|
||||||
err_alloc=メモリ割り当て失敗
|
|
||||||
err_bounds=境界外インデックス
|
|
||||||
err_brightness_change=明るさの変更に失敗しました
|
|
||||||
err_chdir=ホームフォルダを開けませんでした
|
|
||||||
err_config=設定ファイルを解析できません
|
|
||||||
err_console_dev=コンソールへのアクセスに失敗しました
|
|
||||||
err_dgn_oob=ログメッセージ
|
|
||||||
err_domain=無効なドメイン
|
|
||||||
err_empty_password=空のパスワードは許可されていません
|
|
||||||
err_envlist=環境変数リストの取得に失敗しました
|
|
||||||
err_hostname=ホスト名の取得に失敗しました
|
|
||||||
err_mlock=パスワードメモリのロックに失敗しました
|
|
||||||
err_null=ヌルポインタ
|
|
||||||
err_numlock=NumLockの設定に失敗しました
|
|
||||||
err_pam=PAMトランザクション失敗
|
|
||||||
err_pam_abort=PAMトランザクションが中断されました
|
|
||||||
err_pam_acct_expired=アカウントの有効期限が切れています
|
|
||||||
err_pam_auth=認証エラー
|
|
||||||
err_pam_authinfo_unavail=ユーザー情報の取得に失敗しました
|
|
||||||
err_pam_authok_reqd=トークンの有効期限が切れています
|
|
||||||
err_pam_buf=メモリバッファエラー
|
|
||||||
err_pam_cred_err=認証情報の設定に失敗しました
|
|
||||||
err_pam_cred_expired=認証情報の有効期限が切れています
|
|
||||||
err_pam_cred_insufficient=認証情報が不十分です
|
|
||||||
err_pam_cred_unavail=認証情報の取得に失敗しました
|
|
||||||
err_pam_maxtries=最大試行回数に到達しました
|
|
||||||
err_pam_perm_denied=アクセスが拒否されました
|
|
||||||
err_pam_session=セッションエラー
|
|
||||||
err_pam_sys=システムエラー
|
|
||||||
err_pam_user_unknown=不明なユーザー
|
|
||||||
err_path=パスの設定に失敗しました
|
|
||||||
err_perm_dir=カレントディレクトリの変更に失敗しました
|
|
||||||
err_perm_group=グループ権限のダウングレードに失敗しました
|
|
||||||
err_perm_user=ユーザー権限のダウングレードに失敗しました
|
|
||||||
err_pwnam=ユーザー情報の取得に失敗しました
|
|
||||||
err_sleep=スリープコマンドの実行に失敗しました
|
|
||||||
err_tty_ctrl=TTY制御の転送に失敗しました
|
|
||||||
err_user_gid=ユーザーGIDの設定に失敗しました
|
|
||||||
err_user_init=ユーザーの初期化に失敗しました
|
|
||||||
err_user_uid=ユーザーUIDの設定に失敗しました
|
|
||||||
err_xauth=xauthコマンドの実行に失敗しました
|
|
||||||
err_xcb_conn=XCB接続に失敗しました
|
|
||||||
err_xsessions_dir=セッションフォルダが見つかりませんでした
|
|
||||||
err_xsessions_open=セッションフォルダを開けませんでした
|
|
||||||
insert=挿入
|
|
||||||
login=ログイン
|
|
||||||
logout=ログアウト済み
|
|
||||||
no_x11_support=X11サポートはコンパイル時に無効化されています
|
|
||||||
normal=通常
|
|
||||||
numlock=NumLock
|
|
||||||
other=その他
|
|
||||||
password=パスワード
|
|
||||||
restart=再起動
|
|
||||||
shell=シェル
|
|
||||||
shutdown=シャットダウン
|
|
||||||
sleep=スリープ
|
|
||||||
wayland=Wayland
|
|
||||||
x11=X11
|
|
||||||
xinitrc=xinitrc
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ err_alloc = nieudana alokacja pamięci
|
||||||
err_bounds = indeks poza zakresem
|
err_bounds = indeks poza zakresem
|
||||||
err_brightness_change = nie udało się zmienić jasności
|
err_brightness_change = nie udało się zmienić jasności
|
||||||
err_chdir = nie udało się otworzyć folderu domowego
|
err_chdir = nie udało się otworzyć folderu domowego
|
||||||
|
|
||||||
err_config = nie można przetworzyć pliku konfiguracyjnego
|
err_config = nie można przetworzyć pliku konfiguracyjnego
|
||||||
err_dgn_oob = wiadomość loga
|
err_dgn_oob = wiadomość loga
|
||||||
err_domain = niepoprawna domena
|
err_domain = niepoprawna domena
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = índice fora de limites
|
||||||
|
|
||||||
err_chdir = erro ao abrir a pasta home
|
err_chdir = erro ao abrir a pasta home
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = mensagem de registo
|
err_dgn_oob = mensagem de registo
|
||||||
err_domain = domínio inválido
|
err_domain = domínio inválido
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = índice fora de limites
|
||||||
|
|
||||||
err_chdir = não foi possível abrir o diretório home
|
err_chdir = não foi possível abrir o diretório home
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = mensagem de log
|
err_dgn_oob = mensagem de log
|
||||||
err_domain = domínio inválido
|
err_domain = domínio inválido
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,7 @@ capslock = capslock
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
err_pam_abort = tranzacţie pam anulată
|
err_pam_abort = tranzacţie pam anulată
|
||||||
err_pam_acct_expired = cont expirat
|
err_pam_acct_expired = cont expirat
|
||||||
err_pam_auth = eroare de autentificare
|
err_pam_auth = eroare de autentificare
|
||||||
|
|
|
@ -7,6 +7,7 @@ err_alloc = не удалось выделить память
|
||||||
err_bounds = за пределами индекса
|
err_bounds = за пределами индекса
|
||||||
err_brightness_change = не удалось изменить яркость
|
err_brightness_change = не удалось изменить яркость
|
||||||
err_chdir = не удалось открыть домашнюю папку
|
err_chdir = не удалось открыть домашнюю папку
|
||||||
|
|
||||||
err_config = не удалось разобрать файл конфигурации
|
err_config = не удалось разобрать файл конфигурации
|
||||||
err_dgn_oob = отладочное сообщение (log)
|
err_dgn_oob = отладочное сообщение (log)
|
||||||
err_domain = неверный домен
|
err_domain = неверный домен
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = izvan granica indeksa
|
||||||
|
|
||||||
err_chdir = neuspijesno otvaranje home foldera
|
err_chdir = neuspijesno otvaranje home foldera
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = log poruka
|
err_dgn_oob = log poruka
|
||||||
err_domain = nevazeci domen
|
err_domain = nevazeci domen
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = utanför banan index
|
||||||
|
|
||||||
err_chdir = misslyckades att öppna hemkatalog
|
err_chdir = misslyckades att öppna hemkatalog
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = loggmeddelande
|
err_dgn_oob = loggmeddelande
|
||||||
err_domain = okänd domän
|
err_domain = okänd domän
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = sinirlarin disinda dizin
|
||||||
|
|
||||||
err_chdir = ev klasoru acilamadi
|
err_chdir = ev klasoru acilamadi
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = log mesaji
|
err_dgn_oob = log mesaji
|
||||||
err_domain = gecersiz etki alani
|
err_domain = gecersiz etki alani
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = поза межами індексу
|
||||||
|
|
||||||
err_chdir = не вдалося відкрити домашній каталог
|
err_chdir = не вдалося відкрити домашній каталог
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = повідомлення журналу (log)
|
err_dgn_oob = повідомлення журналу (log)
|
||||||
err_domain = недійсний домен
|
err_domain = недійсний домен
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ err_bounds = 索引越界
|
||||||
|
|
||||||
err_chdir = 无法打开home文件夹
|
err_chdir = 无法打开home文件夹
|
||||||
|
|
||||||
|
|
||||||
err_dgn_oob = 日志消息
|
err_dgn_oob = 日志消息
|
||||||
err_domain = 无效的域
|
err_domain = 无效的域
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@ err_alloc: []const u8 = "failed memory allocation",
|
||||||
err_bounds: []const u8 = "out-of-bounds index",
|
err_bounds: []const u8 = "out-of-bounds index",
|
||||||
err_brightness_change: []const u8 = "failed to change brightness",
|
err_brightness_change: []const u8 = "failed to change brightness",
|
||||||
err_chdir: []const u8 = "failed to open home folder",
|
err_chdir: []const u8 = "failed to open home folder",
|
||||||
|
err_clock_too_long: []const u8 = "clock string too long",
|
||||||
err_config: []const u8 = "unable to parse config file",
|
err_config: []const u8 = "unable to parse config file",
|
||||||
err_dgn_oob: []const u8 = "log message",
|
err_dgn_oob: []const u8 = "log message",
|
||||||
err_domain: []const u8 = "invalid domain",
|
err_domain: []const u8 = "invalid domain",
|
||||||
|
|
|
@ -65,12 +65,10 @@ const set_led_state = if (builtin.os.tag.isBSD()) kbio.KDSETLED else kd.KDSKBLED
|
||||||
const numlock_led = if (builtin.os.tag.isBSD()) kbio.LED_NUM else kd.K_NUMLOCK;
|
const numlock_led = if (builtin.os.tag.isBSD()) kbio.LED_NUM else kd.K_NUMLOCK;
|
||||||
const capslock_led = if (builtin.os.tag.isBSD()) kbio.LED_CAP else kd.K_CAPSLOCK;
|
const capslock_led = if (builtin.os.tag.isBSD()) kbio.LED_CAP else kd.K_CAPSLOCK;
|
||||||
|
|
||||||
pub fn timeAsString(buf: [:0]u8, format: [:0]const u8) ![]u8 {
|
pub fn timeAsString(buf: [:0]u8, format: [:0]const u8) []u8 {
|
||||||
const timer = std.time.timestamp();
|
const timer = std.time.timestamp();
|
||||||
const tm_info = time.localtime(&timer);
|
const tm_info = time.localtime(&timer);
|
||||||
|
|
||||||
const len = time.strftime(buf, buf.len, format, tm_info);
|
const len = time.strftime(buf, buf.len, format, tm_info);
|
||||||
if (len < 0) return error.CannotGetFormattedTime;
|
|
||||||
|
|
||||||
return buf[0..len];
|
return buf[0..len];
|
||||||
}
|
}
|
||||||
|
|
21
src/main.zig
21
src/main.zig
|
@ -106,6 +106,7 @@ pub fn main() !void {
|
||||||
var save: Save = undefined;
|
var save: Save = undefined;
|
||||||
var config_load_failed = false;
|
var config_load_failed = false;
|
||||||
var can_get_lock_state = true;
|
var can_get_lock_state = true;
|
||||||
|
var can_draw_clock = true;
|
||||||
|
|
||||||
if (res.args.help != 0) {
|
if (res.args.help != 0) {
|
||||||
try clap.help(stderr, clap.Help, ¶ms, .{});
|
try clap.help(stderr, clap.Help, ¶ms, .{});
|
||||||
|
@ -465,15 +466,13 @@ pub fn main() !void {
|
||||||
length += ly_top_str.len + 1;
|
length += ly_top_str.len + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config.bigclock != .none and buffer.box_height + (bigclock.HEIGHT + 2) * 2 < buffer.height) draw_big_clock: {
|
if (config.bigclock != .none and buffer.box_height + (bigclock.HEIGHT + 2) * 2 < buffer.height) {
|
||||||
const format = "%H:%M";
|
const format = "%H:%M";
|
||||||
const xo = buffer.width / 2 - @min(buffer.width, (format.len * (bigclock.WIDTH + 1))) / 2;
|
const xo = buffer.width / 2 - @min(buffer.width, (format.len * (bigclock.WIDTH + 1))) / 2;
|
||||||
const yo = (buffer.height - buffer.box_height) / 2 - bigclock.HEIGHT - 2;
|
const yo = (buffer.height - buffer.box_height) / 2 - bigclock.HEIGHT - 2;
|
||||||
|
|
||||||
var clock_buf: [format.len + 1:0]u8 = undefined;
|
var clock_buf: [format.len + 1:0]u8 = undefined;
|
||||||
const clock_str = interop.timeAsString(&clock_buf, format) catch {
|
const clock_str = interop.timeAsString(&clock_buf, format);
|
||||||
break :draw_big_clock;
|
|
||||||
};
|
|
||||||
|
|
||||||
for (clock_str, 0..) |c, i| {
|
for (clock_str, 0..) |c, i| {
|
||||||
const clock_cell = bigclock.clockCell(animate, c, buffer.fg, buffer.bg, config.bigclock);
|
const clock_cell = bigclock.clockCell(animate, c, buffer.fg, buffer.bg, config.bigclock);
|
||||||
|
@ -503,12 +502,16 @@ pub fn main() !void {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (config.clock) |clock| draw_clock: {
|
if (config.clock) |clock| draw_clock: {
|
||||||
var clock_buf: [32:0]u8 = undefined;
|
if (!can_draw_clock) break :draw_clock;
|
||||||
const clock_str = interop.timeAsString(&clock_buf, clock) catch {
|
|
||||||
break :draw_clock;
|
|
||||||
};
|
|
||||||
|
|
||||||
if (clock_str.len == 0) return error.FormattedTimeEmpty;
|
var clock_buf: [64:0]u8 = undefined;
|
||||||
|
const clock_str = interop.timeAsString(&clock_buf, clock);
|
||||||
|
|
||||||
|
if (clock_str.len == 0) {
|
||||||
|
try info_line.addMessage(lang.err_clock_too_long, config.error_bg, config.error_fg);
|
||||||
|
can_draw_clock = false;
|
||||||
|
break :draw_clock;
|
||||||
|
}
|
||||||
|
|
||||||
buffer.drawLabel(clock_str, buffer.width - @min(buffer.width, clock_str.len), 0);
|
buffer.drawLabel(clock_str, buffer.width - @min(buffer.width, clock_str.len), 0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue