Bug 183576 - unnecessary html style - too big .book files
Summary: unnecessary html style - too big .book files
Status: RESOLVED FIXED
Alias: None
Product: kjots
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Debian testing Linux
: NOR normal
Target Milestone: ---
Assignee: Stephen Kelly
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-02-07 16:32 UTC by L_V
Modified: 2010-02-16 10:57 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description L_V 2009-02-07 16:32:52 UTC
Version:            (using KDE 4.2.0)
OS:                Linux
Installed from:    Debian testing/unstable Packages

Switching from Kjots KDE3 to KDE4 creates very big files with unnecessary style per line.
(153K size becomes 705K for the same book)
Kjots_4 is much heavier to load than Kjots_3.

Exemple of code to be improved: lines all starting by default with 

<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">

should be simply replaced by <p>
Comment 1 L_V 2009-05-25 11:19:54 UTC
No news, no feedback,  no progress after 4 months ?

Is it normal to be able to create an empty note filled with carriage returns which will create a file full of 
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">

????

Sounds weird.
Kjots of KDE4 is not usable to me: much too heavy / needs work for optimization.
Comment 2 L_V 2009-06-01 23:24:21 UTC
Kjots project seems dead.
If any reads this, should love to know which file in the source should be modified in order to replace default string:

<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
margin-right:0px; -qt-block-indent:0; text-indent:0px;">

simple by <p>

This makes a tremendous difference for big .book files. (/4 in size) 

To be noted that if .book files are manually edited to replace all <p blabla..> by <p>, Kjots will change it again to <p blabla..>.
Thanks for your advice.
Comment 3 Stephen Kelly 2009-06-01 23:48:34 UTC
> Kjots project seems dead.

Sorry about that. I've been very busy during the KDE 4.3 cycle, but that will probably improve soon, but not yet. For the moment I'm moving country and trying to finish a separate project (which incidentally will also fix this bug).

The proof-of-concept code for fixing this is already written, and is currently at http://websvn.kde.org/trunk/KDE/kdepimlibs/kpimtextedit/richtextbuilders/. I just haven't used it in KJots yet.

KJots 4.4 is going to rock :).

Unfortunately there is no short-term solution to your problem. Sorry.
Comment 4 Stephen Kelly 2009-06-01 23:52:56 UTC
Assigning to me.
Comment 5 L_V 2009-06-02 11:37:33 UTC
OK, understood, but I am not a developper to understand websvn.kde.

Importing book files from Kjots_3 is obviously plain text format.
It should be overloaded as less as possible in Kjots_4.

One thought.....
Why adding "<p blalbla...> .. </p>" at each line, and why not a simple <br>
for carriage return ?

Just an idea:
Why not getting the choice: plain text, or formatted text, for each new note ?
Or plain text as a default mode, and rich text on request ?

I would bet that 95% of notes of Kjots are plain text, not formatted.
Kjots should be very fast to load, and not giving the impression to open OOo .... ! This is the key point.
Comment 6 L_V 2009-07-21 19:35:25 UTC
I understand it can be a very long process to correct this bug.

In the meantime, I have installed Kjots of KDE3.5 as a workaround, and even now notice I don't use Kjots any more to avoid a potential mess between books created by Kjots versions KDE3 & 4 (current bugged one + new one).

However, having information on expected first shot of corrected Kjots would be valuable, even some sources to get somewhere for trial.
Thanks.
Comment 7 L_V 2009-08-05 12:49:20 UTC
Update:

I've tried to build Kjots from svn (trunk), supposed to be Kjots of KDE4.4.

I do not see any progress concerning this bug (although I understood it is already corrected in kpimtextedit).

Do I miss something ?
Do I simply miss the right svn site ?
Which svn is recommended to track this bug ?
Thanks.
Comment 8 L_V 2009-09-28 15:12:56 UTC
One thought .....
I really wonder why one year is necessary to correct a bug (= make correction available at user end).

If kjots is dead, it should be announced somewhere and tell what is the proposed replacement for KDE4.
Comment 9 Stephen Kelly 2009-09-28 20:08:37 UTC
Hi,

Sorry about this taking so long. I have been working on porting kjots to akonadi, but that effort is not yet ready to go into trunk. The way kjots stores its data files will be completely changed in the port to better suit rich text.

There is a workaround in kpimtextedit, but it has its own disadvantages. I will try implement a port to use the workaround in the next day or two anyway.

Apologies that this has taken a long time. I know I have fallen behind on these things. I will catch up.
Comment 10 L_V 2009-09-29 12:23:49 UTC
For a so small application, Kjots is too much dependent on file X of KDE4.4 and file Y of KDE4.5 or 4.6.
Three years to get a small/efficient note-taker on KDE4 platform seems really too long.
If you rewrite the code, may be something purely based on Qt will be easier/faster/safer, and would minimize impact on KDE3/4/5/6 transitions !
In the meantime, I am still using Kjots 3, and looking for a pure Qt app.
Good luck.
Comment 11 Stephen Kelly 2010-02-16 10:57:34 UTC
SVN commit 1090867 by skelly:

Merge KJots application and plasmoid from akonadi-ports into trunk where development will continue.

This is still very much a work in progress.

CCMAIL: kde-pim@kde.org
BUG: 162268
BUG: 175073
BUG: 183576
BUG: 195606



 M  +6 -1      CMakeLists.txt  
 A             cmake/modules/FindGrantlee.cmake   branches/work/akonadi-ports/kdepim/cmake/modules/FindGrantlee.cmake#1035244
 M  +44 -11    kjots/CMakeLists.txt  
 M  +6 -7      kjots/KJotsMain.cpp  
 M  +2 -2      kjots/KJotsMain.h  
 D             kjots/flatcollectionproxymodel.cpp  
 D             kjots/flatcollectionproxymodel.h  
 M  +27 -10    kjots/kjotsbookmarks.cpp  
 M  +5 -5      kjots/kjotsbookmarks.h  
 M  +4 -38     kjots/kjotsbrowser.cpp  
 M  +1 -10     kjots/kjotsbrowser.h  
 M  +89 -19    kjots/kjotsedit.cpp  
 M  +11 -9     kjots/kjotsedit.h  
 M  +20 -18    kjots/kjotslinkdialog.cpp  
 M  +2 -5      kjots/kjotslinkdialog.h  
 A             kjots/kjotsmodel.cpp   branches/work/akonadi-ports/kdepim/kjots/kjotsmodel.cpp#1035208 [License: LGPL (v2+)]
 A             kjots/kjotsmodel.h   branches/work/akonadi-ports/kdepim/kjots/kjotsmodel.h#1035208 [License: LGPL (v2+)]
 M  +3 -2      kjots/kjotspart.cpp  
 M  +2 -2      kjots/kjotspart.h  
 A             kjots/kjotstreeview.cpp   branches/work/akonadi-ports/kdepim/kjots/kjotstreeview.cpp#1041745 [License: LGPL (v2+)]
 A             kjots/kjotstreeview.h   branches/work/akonadi-ports/kdepim/kjots/kjotstreeview.h#1041745 [License: LGPL (v2+)]
 A             kjots/kjotswidget.cpp   branches/work/akonadi-ports/kdepim/kjots/kjotswidget.cpp#1035259 [License: LGPL (v2+)]
 A             kjots/kjotswidget.h   branches/work/akonadi-ports/kdepim/kjots/kjotswidget.h#1035259 [License: LGPL (v2+)]
 M  +4 -1      kjots/knowitimporter.cpp  
 M  +1 -3      kjots/knowitimporter.h  
 A             kjots/note.cpp   branches/work/akonadi-ports/kdepim/kjots/note.cpp#1045747 [License: LGPL (v2+)]
 A             kjots/note.h   branches/work/akonadi-ports/kdepim/kjots/note.h#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid (directory)   branches/work/akonadi-ports/kdepim/kjots/plasmoid#1040650
 M  +11 -1     kjots/plasmoid/CMakeLists.txt  
 A             kjots/plasmoid/akonotes_applet.ui   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_applet.ui#1041125
 A             kjots/plasmoid/akonotes_list.desktop   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_list.desktop#1045747
 A             kjots/plasmoid/akonotes_note.desktop   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_note.desktop#1045747
 A             kjots/plasmoid/akonotes_noteapplet.cpp   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_noteapplet.cpp#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid/akonotes_noteapplet.h   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_noteapplet.h#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid/akonotes_noteslistapplet.cpp   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_noteslistapplet.cpp#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid/akonotes_noteslistapplet.h   branches/work/akonadi-ports/kdepim/kjots/plasmoid/akonotes_noteslistapplet.h#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid/plasmatreeview.cpp   branches/work/akonadi-ports/kdepim/kjots/plasmoid/plasmatreeview.cpp#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid/plasmatreeview.h   branches/work/akonadi-ports/kdepim/kjots/plasmoid/plasmatreeview.h#1045747 [License: LGPL (v2+)]
 A             kjots/plasmoid/stickynote.svgz   branches/work/akonadi-ports/kdepim/kjots/plasmoid/stickynote.svgz#1045747
 A             kjots/themes (directory)   branches/work/akonadi-ports/kdepim/kjots/themes#1040526


WebSVN link: http://websvn.kde.org/?view=rev&revision=1090867