Re: [Zim-wiki] Port to Qt

2015-03-28 Thread Bill Oldroyd
I have no plans to make the application public because it is not in a 
sufficiently good state at present. This is partly because I decided to 
move it to Python3 and Qt5 and that version is still in the early stages 
due to lack of time. I don't want to start a discussion of an 
application which isn't Zim on a Zim forum. I just wanted to point out 
that in my view switching to Qt is not necessarily easy and if you want 
to do that it is probably best to use the design ideas of Zim to build a 
new application rather than base it on existing code.


I have not considered using the application on a phone or laptop because 
the design is aimed at a desktop. I don't think it would work on a small 
format screen without some significant re-design.


As Zim aims to be a Python application it might be worth looking at the 
Whoosh library to provide Python-based full-text indexing. I found it 
fairly easy to add to my application. Searching data is provided by 
special formatting of text in the notebook page, for example you can 
search by place, date, description etc..


I use the application to build up information about historical 
photographs by creating a notebook page; adding the photograph; creating 
notes to describe the content, origin etc.; assigning keywords; copying 
relevant information and links from the Internet. The long-term aim is 
to have a read-only version that can be used in kiosk mode. A read-only 
version would be the most likely target for a phone or tablet version, 
in which case I would serve the pages as web-pages using HTML5.


Bill

3/03/15 03:03, Matt Bromberg wrote:

Are you releasing your efforts to the public?
Can't you link to any note from any other note in zim?  How does this 
constrain your hierarchy?  Are you referring to the directory 
structure in zim?


Also did the use of Qt actually enable you to create a tablet/phone 
ready version of your code?
I ask this because it would be nice to have a successful use case of 
real cross platform, desktop to tablet, gui development.



I'm also curious what kind of data you handle?
From the note taking point of view and text handling the only thing 
that's really missing in zim would be a way to handle code syntax with 
syntax highlighting.


One of the things I love about zim is how easy it is to create cross 
links to other notes or even empty links to yet to be created notes.


The second thing, which is indispensable, is the ability to handle 
equations.  I still use kile to enter my latex though because the 
latex window in zim is a bit cramped.


-Matt

On 03/22/2015 07:31 AM, Bill Oldroyd wrote:
I use Zim a little. It is a fine piece of software, but I don't have 
a day-to-day need for it. There were features I needed that were not 
present - for example handling data, full text searching, pages 
appearing in more than one hierarchy.


So, for my own use I have written a replacement in Python 2 using the 
PyQt4 libraries. Qt has some nice tools for creating a notebook 
application, for example QtTextEdit. Likewise QtWebKit allows you to 
integrate a browser with the editor. You might wonder why, but data 
extraction from one to the other is useful when the notebook 
application has direct access to the web page content.


It was also easy to include full text indexing using the Whoosh library.

In my experience, it would be better to start from scratch on 
something similar to Zim rather than trying to migrate the current 
code to Qt, though someone who is more familiar with the Zim code 
might disagree.





___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp



___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-22 Thread Matt Bromberg

Are you releasing your efforts to the public?
Can't you link to any note from any other note in zim?  How does this 
constrain your hierarchy?  Are you referring to the directory 
structure in zim?


Also did the use of Qt actually enable you to create a tablet/phone 
ready version of your code?
I ask this because it would be nice to have a successful use case of 
real cross platform, desktop to tablet, gui development.



I'm also curious what kind of data you handle?
From the note taking point of view and text handling the only thing 
that's really missing in zim would be a way to handle code syntax with 
syntax highlighting.


One of the things I love about zim is how easy it is to create cross 
links to other notes or even empty links to yet to be created notes.


The second thing, which is indispensable, is the ability to handle 
equations.  I still use kile to enter my latex though because the latex 
window in zim is a bit cramped.


-Matt

On 03/22/2015 07:31 AM, Bill Oldroyd wrote:
I use Zim a little. It is a fine piece of software, but I don't have a 
day-to-day need for it. There were features I needed that were not 
present - for example handling data, full text searching, pages 
appearing in more than one hierarchy.


So, for my own use I have written a replacement in Python 2 using the 
PyQt4 libraries. Qt has some nice tools for creating a notebook 
application, for example QtTextEdit. Likewise QtWebKit allows you to 
integrate a browser with the editor. You might wonder why, but data 
extraction from one to the other is useful when the notebook 
application has direct access to the web page content.


It was also easy to include full text indexing using the Whoosh library.

In my experience, it would be better to start from scratch on 
something similar to Zim rather than trying to migrate the current 
code to Qt, though someone who is more familiar with the Zim code 
might disagree.





___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-21 Thread Svenn Are Bjerkem
On 20 March 2015 at 09:07, Jaap Karssenberg jaap.karssenb...@gmail.com
wrote:

 For mobile versions I have more faith in HTML5 based solutions. So on my
 side I will not invest time in other toolkits.


I am probably getting too old because I don't understand what you mean by
HTML5 solutions. All I know is that the HTML solutions for wikis were
textarea and cgi to put data on the server. Maybe the '5' in HTML5 makes
the difference, but I don't know what that implies.

I have recently started to use Codiad for sharing editing of files accross
my various platforms, and I like it. This is kind of old-school ajax with
php and javascript, but it is an editor with a native file structure on the
server. The server is self-hosted because Codiad is free beer and speach so
I don't have to bother about lock-in stragegies of Google or Apple. When I
use Codiad to work on my various code and text, I often think that this
would also be a great platform for a desktop wiki like zim if the file
system is anyway shared on something like seafile, sparkleshare or
owncloud. It is a GUI in the browser.

As a desktop wiki, I find zim almost feature complete (except for hijacking
.txt for its own purpose) and moving from gtk2 to gtk3 is just going with
the development of gtk. Those who have ported from qt3 to qt4 to qt5 know
that that is not just a walk in the park. I am afraid that mixing in iOS
and Android will just cripple zim to become something totally different,
and less useful, than the zim we have today.

-- 
Svenn
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-21 Thread Matt Bromberg
I think actually zim would make an really nice tablet/phone 
application.  It's primarily text based, with a simple and useful 
interface,  that doesn't take up a lot of screen real estate.  Since it 
makes evernote look stupid by comparison,  it just might do well on ios 
or on android.  Again it's just one man's opinion.


I'll have to check out codiad, I've never used it personally.


Now using  html5 to create guis is a pretty good idea overall, at least 
in theory.  I'm not sure how responsive it would be. A google search 
gives me a few candidates,  each of which has their own flaws:


http://phonegap.com/
Somehow they 'compile' the html and css in phonegap to speed up 
performance.  I'm not sure how that works. There is no direct desktop 
support,  though some have hacked the output to support that.


http://rhomobile.com/
free for noncommercial, not sure if they support the desktop probably not.


http://www.appcelerator.com/titanium/
 This is actually javascript based.

Google supposedly has an html gui toolkit
 http://www.gwtproject.org/
 It's java based.  Google is even worse than microsoft at abandoning 
their projects so I just don't know.


However since we all like python,  perhaps looking at this cross 
platform toolkit is a good idea, outside of the usual pygtk or 
pyqt/pyside wrappers.


http://kivy.org/#home

-Matt



On 03/21/2015 07:39 AM, Svenn Are Bjerkem wrote:


I am probably getting too old because I don't understand what you mean 
by HTML5 solutions. All I know is that the HTML solutions for wikis 
were textarea and cgi to put data on the server. Maybe the '5' in 
HTML5 makes the difference, but I don't know what that implies.


I have recently started to use Codiad for sharing editing of files 
accross my various platforms, and I like it. This is kind of 
old-school ajax with php and javascript, but it is an editor with a 
native file structure on the server. The server is self-hosted because 
Codiad is free beer and speach so I don't have to bother about lock-in 
stragegies of Google or Apple. When I use Codiad to work on my various 
code and text, I often think that this would also be a great platform 
for a desktop wiki like zim if the file system is anyway shared on 
something like seafile, sparkleshare or owncloud. It is a GUI in the 
browser.


As a desktop wiki, I find zim almost feature complete (except for 
hijacking .txt for its own purpose) and moving from gtk2 to gtk3 is 
just going with the development of gtk. Those who have ported from qt3 
to qt4 to qt5 know that that is not just a walk in the park. I am 
afraid that mixing in iOS and Android will just cripple zim to become 
something totally different, and less useful, than the zim we have today.


--
Svenn



___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-20 Thread Christoph Zwerschke

Am 20.03.2015 um 00:44 schrieb Matt Bromberg:

I noticed that there was a recent branch that ports zim to gtk 3.
I'm sure that improves the esthetics, but I would think a far more
ambitious goal with a higher payoff would be to port to Qt.


Yes - for instance I tried to implement dragdrop for Links from the 
Browser to Zim, but it turned out to be impossible with GTK (at least 
under Windows with the GTK version Zim was using at the time). I expect 
that such things should be better supported in Qt.


 biggest gain thereby would be to the ability to run zim on an ios
 device.

... and on Android.

-- Chris

___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-20 Thread Jaap Karssenberg
On Fri, Mar 20, 2015 at 12:44 AM, Matt Bromberg mattc...@earthlink.net
wrote:


 Just how hard would such a project be?


As hard as writing the user interface from scratch. Porting gtk2 to gtk3
needs some repairs, but is mostly re-use of the same API. Going to a
different toolkit means re-writing all the code that we have.

For mobile versions I have more faith in HTML5 based solutions. So on my
side I will not invest time in other toolkits.

But don't let me stop you from trying.

Regards,

Jaap
___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-20 Thread Brendan Kidwell
On Fri, Mar 20, 2015, at 04:07, Jaap Karssenberg wrote:
 On Fri, Mar 20, 2015 at 12:44 AM, Matt Bromberg
 mattc...@earthlink.net wrote:


Just how hard would such a project be?

 As hard as writing the user interface from scratch. Porting gtk2 to
 gtk3 needs some repairs, but is mostly re-use of the same API. Going
 to a different toolkit means re-writing all the code that we have.

 For mobile versions I have more faith in HTML5 based solutions. So on
 my side I will not invest time in other toolkits.

I don't know much about IOS development, but as I understand it, I think
you'd have to rewrite the whole storage layer of Zim too. You don't just
put arbitrary file trees on an IOS device and then use an editor to edit
the files. The only way Zim could work on IOS would be to implement file
embedded in an SQLite database locally, or read and write DIRECTLY from
a service like Dropbox.

It's not just a matter of tweaking the UI to make it small-screen
friendly, even if you have a GUI toolkit that supports the target.

Brendan Kidwell

___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


Re: [Zim-wiki] Port to Qt

2015-03-20 Thread Matt Bromberg
Yeah I ran into that storage issue just trying to figure out how to read 
exported zim html on an ios device.  I tried to launch it off of dropbox 
on the iphone and all the internal relative links just barfed.  dropbox 
does some kind of odd remapping of the directory structure.  I think the 
obfuscation is deliberate for non-paying dropbox customers.


There is Apple's  icloud drive, but that is even more locked down.  Only 
approved app.s can access it.  One halfway approach would be to simply 
get some kind of output from zim that can actually be read on an ios 
device.  You could save html on your own server on the cloud, or maybe 
zim - latex - pdf is the way to go.  I haven't tried the latter path 
just yet.


If you have some way of reading your zim notes on ios, and then some 
reasonable method of importing ios note app output into zim, you would 
get a half solution for the interim.


I have done some development with PySide, the python Qt interface, and 
it's really pretty nice IMHO.  My biggest complaint is that Qt dropped 
their C interface, its all C++.  I realize that GTK is an entire 
framework, as is QT and thus it's a big switch.  There only a few tools 
that have decent cross platform support and sufficient libraries to be 
of any interest.  Qt is probably on that list, maybe Java.  Cross 
platform development is still a pain the arse even with a great tool 
like python.


Matt Bromberg


On 03/20/2015 11:57 PM, Brendan Kidwell wrote:

On Fri, Mar 20, 2015, at 04:07, Jaap Karssenberg wrote:
On Fri, Mar 20, 2015 at 12:44 AM, Matt Bromberg 
mattc...@earthlink.net mailto:mattc...@earthlink.net wrote:



Just how hard would such a project be?

As hard as writing the user interface from scratch. Porting gtk2 to 
gtk3 needs some repairs, but is mostly re-use of the same API. Going 
to a different toolkit means re-writing all the code that we have.
For mobile versions I have more faith in HTML5 based solutions. So on 
my side I will not invest time in other toolkits.
I don't know much about IOS development, but as I understand it, I 
think you'd have to rewrite the whole storage layer of Zim too. You 
don't just put arbitrary file trees on an IOS device and then use an 
editor to edit the files. The only way Zim could work on IOS would be 
to implement file embedded in an SQLite database locally, or read and 
write DIRECTLY from a service like Dropbox.
It's not just a matter of tweaking the UI to make it small-screen 
friendly, even if you have a GUI toolkit that supports the target.

Brendan Kidwell


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~zim-wiki
Post to : zim-wiki@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zim-wiki
More help   : https://help.launchpad.net/ListHelp