Tuesday November 17, 2009
Kephra 0.4.2 released
Yes thats an important one and the first bigger release of the Editor that keeps beauty and integrity in mind for several month.
We had a larger internal rewrite to cure a very shortsighted design decision but there is also some good and new stuff for the user. The code folding was brought into final shape (for now). The new tabbar now allowes to move tabs by mouse and some new formater for HTML enteties I needed for some time. But to me is the biggest improvement that all the little nasty daily annoyances are gone. In other words using Kephra feels much better to me now.
After all there are still some minor issues, with the CPAN installer too, the testsuite is under heavy construction, the icons are under redesign and our shiny unique logo will appear soon. So this was just a first sign life with the main message: "We fixed the code base".
Wednesday November 11, 2009
WxWidgets 3.0 on the horizon
As the Wx roadmap
points out, all major goals for the next big release are met. They write: "We hope to make 3.0 in the first half of 2010.". Yes, Wx development is slow (meaning conservative) but why wait for so long?
For the Perl world Wxwidgets 3.0 could have some impact. The unification of several codebases speeds up development and Wx, already mature and feature-rich could improve faster to something that enables professional large WxPerl apps. Something I've been advocating for years.
I hope it improves especially in following parts: writeable XRC, more consistent AuiNotebook (see my last post), native filebrowser as a an integrated widget (not a dialog), improving WxHTML, simpler API and more powerful tree control, easier access to the accelerator table. I like it very much that Wx people care about details and gradually improve to remove all the itches sooner or later and there are lot more corners to sweep. But i have the feeling that some larger things are still missing. When i have some ideas about that i will post it.
Monday November 09, 2009
Never get clean?
subtitle: fun with Wx::AuiNotebook
In the German clean dev site
they teach you how to write good code. One of the first rules is Kiss of course. Maybe thatswhy I never will be a superhacker, but sometimes its too temping to me to spit out something thats more complicated. But for a good reason.
As we are approaching the release of Kephra 0.4.2 i do polish and therefore want to reduce flicker were I can. If you know browser with tabs in a tabbar you have the idea of Wx::Notebook. I switched from Wx::Notebook to Wx::AuiNotebook, because the second looks more pro and the tabs can be moved my mouse. they can't be moved by keyboard, but thats not too hard to implement. The hardest part is to hack the Accelerator table with Wx::AcceleratorEntry or just disturb the expected object hierarchy so that the keyevent will not delegated to the notebook. this sounds first hilarious but it will later become clear, why thats necessary. if you get the key event,
just store the label and panelobject. remove the page and insert it on a new position. if you do this you have a new order of docs, so you need an translation-array to keep track of those changes.
If you drag the tabs per mouse events are fired. one when starting, many during and one after you finished draging. With the begin and end event you can catch the visual position of the tab but the mean thing is that the index of the moved tab will not change. So I had 2 choices. a) build another translator between visual position and doc number or b) just remove and reinsert the tab so that the indices are again in sync with the visual order. Of course I took a) because I dont like the flicker, even if that solution is not Kiss. But maybe i kiss a nice girl instead.
Now you know why I need to hack the accelerator table. because naturally the notebook grabs the key event for the expected key kombination to make tab switches with. and will be switched in the tab index order and not the visual order, wich is annoying. also the key combination for tab move will be blocked, because for comfort you need something similar (I choose the tab switch keys + shift). So I really needed to hack it this way.
Friday November 06, 2009
Thats an important release. Yes not a stable and complete one(0.4 is very stable), but the first usable after the large rewrite, which shows mostly all benefits we did the rewrite for. And i don't mean polishing the folding, but to have document switching without side effects. sounds normal but impossible with the hack I introduced shortly before PCE 0.2. But 0.4.2 will bring also so new features, mostly mentioned in my last post here except this two: you can choose, where the opened file appears on tha tabbar(leftmost, rightmost or left|right beside the current) and the file history will be a normal session file so if you reopen a file from history of closed files, it will be restored with all the sttings you defined for that one.
so if you like play with it, goto my treehouse
. It should be also on CPAN soon.
Monday November 02, 2009
progress and tools
yes Kephra makes progress. I'm messing with internals and I hope to see daylight soon. meanwhile I wrote some helper scripts for our designer to convert icons and test them in toolbar, if they make pixel fuzz. A test script that I wrote for me checks integrity of most configs and if they are in sync with the inline defaults. that took me too much time to check them by hand. now it takes only 2 secs.
Preparing 0.4.2 I have to say that this version will not bring to much new features. yes kephra does not crash anymore if you delete an open file and the folding keeps the same if you switch documents for and back. there are also now links in the menu to oben our website and some other minor adjustments.
Beside the new HTML-entety converter are the 2 big fields that 0.4.2 improves tabbar and folding. the key and mouse handling of folding reached a stage that I'm satisfied with. other editors have 4 fold functions. We too, but our do much more. we have not open/close for singe/recursive folding but toggle functions for single/recursive folding on the current node and also toggle functions for sibling-fold (if you collapse a sub, all subs are collapsed) and toggle all nodes. All 4 can be done via menu, keyboard and mice. but hej maybe you want to interrupt me: there are only 3 main button on the mouse. True but you can click lust button while holding the right :). This may sound horrible on paper but honestly you seldom need the fold all and to me its very intuitive, to use more force (2 buttons) to change all nodes.
the other thig is the tabbar. i switched to AUINotebook to. It looks more serious and has moveable (with mouse, with keyboard you could do since 2 versions) tabs. i want also add the feature that you can choose where the new opened file appears. leftmost, rightmost or left or right beside the current doc. finally there is still the UTF bug i hope to kick till this or next release.
there also more things goning on but i will show them if there ready to present.
Saturday October 24, 2009
when is Kephra fast?
it is one of the nice possibilities of Kephra, that i can implement small changes i need (in this case renee) immediately. See
that implements his idea, that empty lines don't should be indented.
Saturday October 17, 2009
What really is Kephra
even if I write Kephra is an editor, i mean really that i want to keep things small and simple not to ditch a feature that can make coding easier.
Monday June 08, 2009
Yes for Kephra too but now for my Perl 6 tutorials. As I put my other tutorial
now online and started it to copy in TPF wiki too we need lot more brainz than mberens++ and mine for all the stuff
Sunday April 26, 2009
Isn't it interesting?
i'm writing on my wxPerl workshop and so I also enhance the WxPerl tut in the perlde wiki (will maybe part of my one tolk in lissabon) but far more interestingly i found out that a pearl corresponds to binah (for those who dont know what is: hebrew word for primal female energy). And when i look into my deck and see the ATU which corresponds to binah i see a camel. ... maybe larry knows more than he tells us.
Saturday March 14, 2009
yes i have enough to do with Kephra, my perl 6 stuff and the upcoming WxPerl workshop i will give i want to start a prject i longed to start for quit a while. i maybe call it grata, which is short for graphischer taschenrechner (graphical calculator).
It will be a WxPainDC with some buttons and switches do paint certain 2D graphics from a matematical standpoint and also export them as PNG or alike.
that may sound a bit fuzzy but its about some ideas i have that still condensing in my mind. and this program should be able visualize some metematical, geometrical ideas i have.