akkor hát mivel is telt el az egy hét? őhhát mondjuk volt egy zéhám ugyan, de arra csak két napot tanultam. a maradék időben pedig linuxot hakkoltam. nézzük, mit sikerült:
-csekkoltam a X.org Composite-ot, de nem vált be, max majd ha nagyon fancy screenshotot akarok csinálni, akkor. ezon kívül leginkább súlyosan belassítja a harminckét megás nvidia tnt2 kártyinkát, amit még LGee-vel bótoltam tavaly. (neki üzenem is egyúttal, hogy valószínűleg az alaplap volt a hibás, mert először full tönkrement a memória, aztán próba-szerencse vettem egy új alaplapot, - igaz a legkínaibbat ami volt, a hangerőt is csak szoftveres mixeléssel lehet állítani, de nem érdekel az alsa, most ez így működik és kész - és jó lett ismét)
-rájöttem, hogy a composite-tal hülyén néz ki az mplayer vo=xv-vel, ami egyébként mint kiderült, csak 12bpp; tehát a kompozit elb.ssza a dógot, mert belenyúlna az xv belsejű ablakba, ami flickert okoz, meg ha viewport-ot (page @ fvwm) váltok, akkor is mocsokul néz ki. marad tehát a vo=x11, de az meg azért rossz, mert kicsi, a szoftveres zoom meg ugye lassú. ki van ez találva, kérem.
-fejembe vettem, hogy nekem olyan keretje legyen az ablakaimnak, ami 2 pixel vastag, a külső része sötétebb, a belső része meg világosabb. az ám, de régebben is túrtam a manualt, ilyet nem lehetett beállítani - még ircen is utánakérdeztem, senki emberfia nem tudta, hogy miként lehet ilyen csodálatos beállítást eszközölni. a rézangyalát - mondtam - s nem telt belé pár szemvillanás, már könyékig gázoltam a kódtengerben -- ami egyébként mestermunka. fvwm workers are craftsmen, megmondták már régen, és igazuk van; bárcsak az elődöm ilyen kódot hagyott volna rám, dehát az élet nem habostorta. tehát már azon filóztam, hogy milyen pixmapokkal lehetne varázsolni extra funkcionalitásokat, amikor találtam egy nagyon egyszerű megoldást:
fvwm-2.5.16/fvwm/border.c:
-static const char brgc[] = { 1, 1, 2, 0x7f, 0, 0, 3 };
+static const char brgc[] = { 1, 0, 2, 0x7f, 0, 1, 3 };
sytle * MWMBorders-el kell használni, max 2pixel-es borderhez, mert ez csak egy ilyen quick and dirty. majd egyszer ha lesz időm, tán írok egy patchet a borderekhez, ami ugyanezt pixmapekkel csinálja, a mostani tiledpixmap-es borderek egyébként sem igazán konfigurálhatóak...
-olvasgattam az fvwm.lair.be-s fórumokat, és találtam egy nagyszerű patchet, ami lekerekíti a jól a már dekorált ablakok sarkait. kicsit kiegészítettem, hogy minden sarokra külön be lehessen állítani, hogy ott le van-e kerekítve, valamint az eddigi r=5px-es lekerekítésből csináltam egy 1px-es lekerekítést, tehát konkrétan 1px-et vág le a saroknál. észrevehető a különbség, szoftosabb az ablak. alpha blend-et nem lehet csinálni egyelőre, ezért a 2px-es levágás elég bután néz ki, a legközelebbi normális az az 5px-es ív, de ott már az íven belülre is kell sötétebb pixeleket rakni, hogy jól nézzen ki - 2px borderrel elég elfogadható kinézetet lehet kreálni 5px-es lekerekítéshez ha már nincs alpha blend. pihe-puha és szép tiszta ablakok, ez a cél.
most ilyen:
ezen kívül találtam egy jó font shadow beállítást is, like "shadow=1 SW S SE:xft:...", überhepi.
-szétpattintottam a konfigomat sok kis részre, mert így könnyebb őket borzolni, és egyúttal különvettem a témát a segédfüggvényektől, így rémesen egyszerű lett a kinézetet megváltoztatni. vannak ilyenek pl.:
AddToFunc Button
+ I PipeRead 'for s in $2;\
do state=`echo ${s} | tr [A-Z] [a-z]`;\
echo "ButtonStyle $0 ${s}\
Pixmap ./$[F:TITLEBUTTON_DIR]/$1$[F:SEPARATOR]${state}.png\
-- UseTitleStyle Flat";\
done'
ha azt írom, hogy:
SetEnv bstates "ActiveUp ActiveDown Inactive"
Button 2 "maximize" "$[bstates]"
Button 4 "close" "$[bstates]"
Button 6 "right" "$[bstates]"
Button 8 "left" "$[bstates]"
Button 0 "iconify" "$[bstates]"
az azért mégis szebb, mint a szerkeszthetetlen, kikommentezhetetlen
ButtonStyle 0 Active (Pixmap $./icons/iconify_active.png) \
Inactive (Pixmap $./icons/iconify_inactive.png) \
AllDown (Pixmap $./icons/iconify_active_down.png)
ButtonStyle 2 Active (Pixmap $./icons/maximize_active.png) \
Inactive (Pixmap $./icons/maximize_inactive.png) \
AllDown (Pixmap $./icons/maximize_active_down.png)
ButtonStyle 4 Active (Pixmap $./icons/close_active.png) \
Inactive (Pixmap $./icons/close_inactive.png) \
AllDown (Pixmap $./icons/close_active_down.png)
ButtonStyle 6 Active (Pixmap $./icons/right_active.png) \
Inactive (Pixmap $./icons/right_inactive.png) \
AllDown (Pixmap $./icons/right_active_down.png)
ButtonStyle 8 Active (Pixmap $./icons/left_active.png) \
Inactive (Pixmap $./icons/left_inactive.png) \
AllDown (Pixmap $./icons/left_active_down.png)
ButtonStyle -- UseTitleStyle Flat
ugyebár. szólni kell Maciej-nek (fvwm-crystal author, ő az oka, hogy fvwm-et használok), hogy írjon a crystalba is helper func-okat, mert az jó. eh, lustavagyok levelezni..
-ezután jól megsymlinkeltem a .fvwm-et fvwm/.fvwm-re, azt szemetelje tele pipe-okkal, meg FvwmConsole-history-val, a saját konfigomat meg .fvwm/config read-eli, az meg tovább, readeli, teljesen jól. a funkcionális programnyelvek jutnak eszembe a konfigfile-ról, talán nem véletlenül..
-szerkesztgettem egérkurzorokat is:
egyelőre elég alap, de nem találtam olyan témát, ami tetszett volna, mindegyik valahogy túl van reagálva, vagy túl nagy, vagy túl kicsi, vagy mittudomén. ez meg majdnem mind az X-es core kurzor, dropshadow-val.
azért annyira nem egységes... ld. left_ptr vs. fleur, de legalább szép.
-végre csináltam egy swallow-os fvwmbuttonos csodát, amiben van egy - egyelőre - xclock, egy pager, meg egy E feliratú gomb, mondjuk nem sokat használom, de az edgeresistance-t állítja, ugyanúgy, mint a Ctrl+Shift_L, ami tök jó kombináció, tök jól rá lehet csapni.
-kiderítettem, hogy miért nem megy az, hogy keypad-on modifierek nélkül nyomom az 1/2/3-at akkor a 0/1/2-es page-re ugorjon (most épp 3x1 page egy desk nálam). Shifttel persze ment, de anélkül nem. Erre valahol találtam egy megjegyzést, miszerint az xev nevű dologgal nagyonkönnyű kitalálni a key-ek neveit. nem kell többet a keysym.h-ból se puskázni, plusz nem kell filózni, hogy akkorezmost ismétel, vagy nem, meg ilyenek. például megtudtam, hogy a jobboldali Win-gombot Multi_key-nek hívják, és ismétel, a mellette levőt Menu-nek, az AltGr-t Mode_switch-nek. frankó. csomó új kombót tudok majd pattintani.
-találtam egy olyat, hogy MwmDecor[Max|...], amivel ilyen toggle buttonokat lehet csinálni, tök logikus lett a fullscreen maximalizálás, olyankor eltűnik a border, meg nem lehet resize-olni, csak mozgatni. remek.
-és végül csináltam egy nifty schedule-os dolgot, amivel ha az egyik page-n indítok el egy lassan induló alkalmazást, akkor közben navigálhatok bárhová, ő ott fog indulni. még egy kicsit játszottam, hogy egy kis csalással fullscreen-en induljon az ffx meg az opera, így mára elegem is lett az egészből :)
különben is nagy szopás ez a linux, de még pár év, és lehet, hogy sikerül minden beállítást úgy összekalapálnom, hogy hatékony, egységes, és intuitív desktopom legyen. ez azért jó lenne. egyelőre a kb. a hatékonyság az, ami adott. ez van.
na eof.
imp
- imp blogja
- A hozzászóláshoz be kell jelentkezni
- 816 megtekintés
Hozzászólások
Hali,
Sajnalom az alaplapot, kar, hogy nem korabban derult ki, visszavettem volna...
- A hozzászóláshoz be kell jelentkezni
rendes tőled, de hát ez ilyen volt..
- A hozzászóláshoz be kell jelentkezni