Portál AbcLinuxu, 30. dubna 2025 10:11
Stručně: dávám k dispozici jednoduchý wrapper upravující chování GTK file chooser dialogu tak, aby výchozím místem byl aktuální pracovní adresář.
Méně stručně: ačkoliv se vývojáři Gnome snaží tvářit, že aktuální adresář nikoho nezajímá, ponechali v GTK knihovně stále funkci gtk_file_chooser_set_current_folder
. Protože narozdíl od nich považuji pracovní adresář za docela praktický koncept, stvořil jsem výše zmíněný wrapper. Měl by fungovat jak s GTK2 tak s GTK3, odchytává gtk_file_chooser_dialog_new()
který používají prakticky všechny aplikace, co jsem otestoval, a dále g_object_new(GIMP_TYPE_FILE_DIALOG,...)
používaný Gimpem.
Kód je na pár řádek, asi nejzajímavější (a nejprasáčtější) je volání původní gtk_file_chooser_dialog_new()
, což je funkce s proměnným počtem argumentů a verzi akceptující va_args
jsem neobjevil. Vyřešeno pomocí switch
, jehož obsah vypadne z makra generovaného shellem v Makefile. Maximální počet argumentů je tak sice omezený, ale hodnota jde jednoduše nastavit v Makefile, pokud by to bylo potřeba. Umíte-li to lépe, podělte se v diskuzi.
Použití pomocí LD_PRELOAD, případný script, bash aliases apod. si předpokládám každý zvládne vyrobit podle svých preferencí.
Vítám komentáře, se kterými programy to nefunguje, úpravy, vylepšení, cokoliv. :) Pokud komukoliv přijde tenhle výtvor zajímavý a hodí jej někam víc na veřejnost, budu jen rád (já osobně jsem na to lenivý, přiznávám).
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.