Sonntag, 29. März 2015

Where do i stand?

Today our service was lead buy our jouth group.
It was a blessing experience.
The challanged us. Jesus was greetet in Jerusalm with a great prais and so on. There where tree (or even more) different groups of people.
One where the deciples who where really close follwed him and even put the cloth on the the donkey. There where the people standing on the road prasing him... but 3 Days later this people where screaming cruzify him. And there where the others... wo really didnt know so much about Jesus they where asking. Who is this.
So who do you will be? One of the deciples, one of the people who like it if they are close to jesus but forget about everything and some days later will turn there back on him or are you one who not yet know something about him?

To clear my mind

After trying to hunt down the but with the fontwindow
I didt what stippi suggestet. I downloaded the source for haiku (a third time or so ;-) )
but this time i compiled it with:

 DEBUG=1 jam -q libbe.so
then i ran the Debugger like stippi sugested:


LD_PRELOAD=/path/to/debug/libbe.so Debugger /path/to/AbiWord

it was verry intresting to see how the haiku works internally :-), but it didnt helped me much further.
I am now guessing that there is some kind of race condition between building a BWindow from the BMessage and the fontwindow accessing views wich are not jet ready.

After a while with no sucsess finding the problem there .. i decided to do something different.

So i took a look into my other "projects" i did a pull request for scripture guid wich is now stream to the main repository. It just fixes one little bug wiht the Scripture Guide Manager... I think i need to take some time here to merge the Manager right into Scripture Guide. It makes no sense to have two sperated Programms here.


Then i took a look into clucene port just to figure out that someone already had one reade ... but not uploaded it to haikuware.

And last but not least i took some time for the ProjectConceptor. Where i fixed a drawing bug. - I hope i can bring this peace of software soon to a beta stage... that would be awesome.

Sonntag, 22. März 2015

Abiword - daily use?

To understand  features and the workflow with abiword i workd on Linux and on windows with abiword 3.0.

I getting more and more a mixed feeling about this pice of software .... not only that its development is nearly on hold, it has some downsides.

Trying to make my sunday service programm i always need to print several copies from this programm to hand it out to our band and worship team.

Abiword in this case simply  failed miserable. I used the print dialog and typed in 3 Copies... but the printer printed only one. It turned out this is a bug know since 2005!!! Ten years! And if i need to print like 20 pages of a dokument?? hit 20 times the print button??
For me you cant say its a stable release if there are still such bugs opend. 

The next supries was for me when i tried to copy in my sermon to format it. It just didnt worked.
I tried tree times and finally it worked out. But still really buggy. Also it seems that the layoutengine is verry slow at least on windows.

So even if we can manage to port everything to Haiku OS Abiword will not be the best solution - at least this is now my feeling after using Abiword for half a week.

Samstag, 21. März 2015

Abiword and sermon - just a try

Today i played a littlebit around with my laptop. I installed Linux Mint this week. To get used to Abiword i tried to write my sermon on abiword on this linux. That was really ok :). Loved the responsiveness but was still missing the elegance of gobe productive ;-).
But still it has a good gui design some really usefull features like text to table and so on.
I save it on my "Data"  Partition its formated in fat32 so every os can acces it.
Then i decided to boot all the time haiku via usb stick is to anoying and i tried to install grub from linux. Because i dont like script hacking i didnt came far and i stoped frustrated. Booted into haiku selected Bootman and in 15 seconds the bootmanager was installed.

Sadly somehow it couldnt load linux anymore :-D.
So i thought i risk everythink and finish my Sermon on haiku with the debug build from Abiword - Bad idea ;-D.

Opening didnt worked ... because we can only open abiword files up to version 2.4 and on linux i used abiword 3.0.. So first challange. Because ts xml i could extract all data really easily.

But coping this into Abiword resulted either in a haning abiword or a "drawing" mess in the abiword document.

Because it also had some trouebles saving stuff... i really gave up to do my first productive work with abiword.

There is a lot work to do bevore we can test abiword in a productive enviroment :(

So no sermon writing with abi word :-D

The Buglist ist growing :-D

Freitag, 20. März 2015

We are named buy god

At the beginning of this week i was reading Ephesians 3, 14-15
And it hit me like a truck  - i am named buy god. We are expecting our sixth child and picking a name is - like always - very important. So to know that i am named buy the creator of the universe - thats an unbelievable feeling.

But what does it helps when you do not listen to your name - when he calls you!
So what benefits do i have because i am named from god and what should be my response?
That will be toppic in my sermon this sunday... i am exiceted to see whats god will do in this service.

And i am totally looking forward to the time when i can do my sermon preparation in haiku. ScriptureGuide (Bible app for Haiku OS) is already running - now i only need a decent Wordprocessor ... i am hoping to get Abiword to a state that i can use it. Beside this, i will pray for a real wonder that gobe productive will be opensourced (best would be - MIT licences)  because this would be really the best thing to happen.

This crazy dialogs

Ok next thing i looked into where the crashing dialogs. Because i had font selecting system on my todo list for my other project i decided to look into the crash when the Font Dialog is opend.
For a short period of time you can see a Window with some drawn white rectangels so it looks like the Windows crashes right when its constructed.
Diving a little bit into the code revealed that it crashed when abiword tried to update the font list.
Therefore it accessed the view which should countain this list via a find method.
Now the find method returned nothing but it was never checked. So i thought good.. easy to solve.. just check if the it found the right view and here we go...

I looked for ever FindView and made a "security" check if the View was found so that no segment fault could happen.
It turned out.... it was not enought.
Still crashing :(

So i researched more. I tried to find the Place where all the Views where construckted. To my suprise there was no code at all wich created this FontDialog. even searching throught the whoel abiword source didnt showed a sign of creating such a Dialog.
I already thought maybe it wasnt implemented at all.. but something was shown before the fontdialog crashed abiword.
So i went back to the source.. was very surprised to find out that the window and BView where constructed over a BMessageobject wicht was tacken from the ressources of the abiword programm.

That was really suprising and verry unusal. I have nervers seen such a use of ressources and such a way to construkt and save Dialogs.
So i found out that its not only the Font dialog which is "constructed" this way but also some other dialogs:

As you can see on your own it is was widely uses in the Abiwordport for beos :(

  1. DateTime.rsrc
  2. Tabs.rsrc
  3. break.rsrc
  4. columns.rsrc
  5. field.rsrc
  6. find.rsrc
  7. font.rsrc
  8. goto.rsrc
  9. icons.rsrc
  10. list.rsrc
  11. options.rsrc
  12. pagenum.rsrc
  13. paragraph.rsrc
  14. replace.rsrc
  15. spell.rsrc
  16. wordcount.rsrc
  17. zoom.rsrc
Some are working and some not.. so  i need to investigate this a little more.
Thanks to the help of stippi i will be able to do so... but i think this will be part a other blogpost :)
But later or sooner we need to rewrite the dialogs anyway to use Layoutcode from Haiku.

Fixing the first bug :)

After reading a some github tutorials i felt kind of read for my first attemps to merge the beos code into my new created Abiword branch of the up to date source.
Thanks to the commandline attribute from  git called merg git merge -s ours i was able to mix in the beos code from 2.4 (dated back to 2006 - someone worked on this code in 2013 ... but noth too much) so this code is roughly 9 years old. The task is now to bring it toghether with the api wich changed a lot in the last 9 years.
My first strugle was and ist the build system. Abiword uses autoconf for building, an i am no fan of makefile or autconf so i didnt learnd a lot about them in the years i developed. I always prefferd a GUI :).
So next task is to learn this stuff .. also i dont like it, or maybe find someone who can help me.
Because this is a little frustrating - look into some  of the bugs.

To see why e.g. loading faild i startet to build Abiword with a simpel make compile_dbg
to build a debug version of the Abiword binaries.

Running Abiword and opening a file brought me straight to the debugger it turned out - a simple missing lock of of the Blooper was the cause. I just covererd the call wich triggered the Debugger into a a lock an a unlock statement and loading and saving is working now - Jear. :)

https://github.com/Paradoxianer/AbiWord/commit/5bad4ca6fd0092dc575ebb01796b78ce7b5a9fd5




Dienstag, 17. März 2015

Second step gathering informations

So tried to geht an overview about the abiword project i stared examing what is working and what is not.
I took a sum it spreadsheet and created 3 rows in the first row i will write wich Menuitem or Toolbarentry or feature of Abiword works and on the second wich one doesnt work and the third the reson why it dont work.
This little table is far from completeness, but it shows how complexe this programm ist only the first 4 Menus fills more than 52 rows.
The bad thing is .. loading a file works sometimes but most times it crashes.
The good thing ... there is already a bunch of stuff working - in the 2.4 Tree.
Because i know there was a "last Working" version i tried to take the source of this last know working revision from the svn repository. It is the number 16940. Checked it out and tried to check for the differences.
Normally git gives you the power to do this "automatically" but i am not so used to git (i am learing this since some days).
So i messed it up several times just to regognize the whole diff (the diffrences between both source trees) will be to complex to follow because there where not only changes to the beos sourcecode but also, of course, in this time a lot changes to the abiword source.
So i thought about just replacing the beos code, we have now, with the code from the last kown supported revision. It turned out that it was left in a broken stage files where missing and so on. So i would have to search for the misisng files. I first tried to hunt down some of the files in some older revsions but i decided this would lead to a verry messy source base.
Now i will try to follow the advice from the abiword mailing list to move the abiword code to the newest version try to merge it with our project and then try to get it compile... we will see how this turns out.

I would be happy if someon jumps in and helps with testing. If you found an issue pls just report it to https://github.com/Paradoxianer/AbiWord/issues

Sonntag, 15. März 2015

First steps

Ok so i am trying to look into how ot port abiword to haiku.
Because i dont have so much time and i am not so skilled i will try to document my progress here on this blog.

Day one
Two or tree month ago i already downloaded abiword from haikuarchives
https://github.com/HaikuArchives/AbiWord
its a verry old version but it should compile - should!.
First running make i am greeted with a error.


Found libwv in peer directory
/bin/sh: line 4: ./configure: Permission denied
make[3]: Entering directory `/Haiku_Daten/dev/AbiWord/wv'



So what to do? After  a while i rememberd that pulkomandy showed me the solution some month ago, when i tried first to build Abiword.
So i checked back in the commits and found that the execute flag on the config file in AbiWord/wv was not set.

So after setting this flag, and reinstalling mississing libs like psiconv, popt and so on, Abiword compiled.