I've been slowly working away at a TW for bible study, using the World English Bible (public domain) and have just finished inputting (using Udo's pure store TW, notepad, and a spreadsheet) all of 1Samuel with each verse as a separate tiddler, and its already slowing down. (here: http://biblestudy.tiddlyspot.com/ )
I think where I'm going to have to go is with having each book as a separate TW on a website and using includePlugin to go get the books and verses as needed (I think I read somewhere that you can delay the call for what's included until needed in real time)
Anyway, the whole point of this TW is to be able to do your own annotation and adding of links to whats already there.
Q: Is there some existing way or approach that would allow one to annotate (e.g. add highlighting or bolding or links from text) an included and therefore unchanging tiddler, and save that annotation for yourself (or to share) while another person could use those same source tiddlers and annotate to their hearts content and save that in their own TW? Microsoft Reader has a separate annotation file, and that's the approach I'm thinking of.
Dave, Have you considered TiddlyChatter? It could work something like this: 1. Source Tiddlywiki (TiddlyChatter enabled) has the tiddler content and generates an RSS. 2. Each individual has a subscription Tiddlywiki (TiddlyChatter enabled) that subscribes to this source RSS file and synchronises with the source. This effectively imports the tiddlers from the source and allows each individual to add notes/comments (which are seperate tiddlers) in their own Tiddlywiki. While it is possible to edit the source tiddler, the next time you synchronise from the source you may loose any changes to the original text but not your notes.
That's it - See attached image for a sample tiddler in the subscription Tiddlywiki (TiddlyChatter enabled) . Does this work for you?
Dawn.
On 10/23/07, Dave Parker <cedar...@telus.net> wrote:
> I've been slowly working away at a TW for bible study, using the World > English Bible (public domain) and have just finished inputting (using > Udo's pure store TW, notepad, and a spreadsheet) all of 1Samuel with > each verse as a separate tiddler, and its already slowing down. > (here: http://biblestudy.tiddlyspot.com/ )
> I think where I'm going to have to go is with having each book as a > separate TW on a website and using includePlugin to go get the books > and verses as needed (I think I read somewhere that you can delay the > call for what's included until needed in real time)
> Anyway, the whole point of this TW is to be able to do your own > annotation and adding of links to whats already there.
> Q: Is there some existing way or approach that would allow one to > annotate (e.g. add highlighting or bolding or links from text) an > included and therefore unchanging tiddler, and save that annotation > for yourself (or to share) while another person could use those same > source tiddlers and annotate to their hearts content and save that in > their own TW? Microsoft Reader has a separate annotation file, and > that's the approach I'm thinking of.
I don't have any technical advice to offer, but I'm interested in this question because I too would like to put up big texts to be annottated / indexed - in my case I'm interested in parliamentary hearings on issues of public policy.
First Question: speed.
What exactly are the slow spots? #1 it takes a while to load, initially - and this will get worse as you add the other books
#2 Because the text is broken up into so many tiddlers, it sometimes takes a while to display things. For example, this table is a bit slow: http://biblestudy.tiddlyspot.com/#%5B%5B1st%20Samuel%5D%5D And clicking on the first chapter from the table is slow to bring a whole list of tiddlers - all the verses, I guess they're called.
Are these the slow points you're seeing?
Which of these problems would be solved by load on demand / lazy loading, which I gather is in the works? #1, I think, but not #2. Is that right, can anyone confirm? Even with deferred loading, a TW that has to display 20+ tiddlers is going to be slow. If that's right, it suggests using fewer tiddlers for the same amount of text (bigger tiddlers - say, 5 verses at a time).
Second Question: Input.
Suppose I have a series of HTML files of my Parliamentary hearings. Is there any way to get this material into TW without copy and pasting? That would take forever, plus each tiddler would have to be manually tagged with time, date, speaker etc. Lots of error. Has anyone done any work on automated conversion into TW format? People have already put together a large number of online texts - for example, in the Liberty Fund's Online Library of Liberty. Some of those are PDF of actual public domain books, but some are also html versions. It would be fantastic if there were a way of taking those texts and "dumping" them into TW.
Third Question: Display.
When a longer text is broken up into smaller tiddlers, for purposes of easy cross-referencing and indexing, the separations between tiddlers become distracting when trying to read the whole text. Have you experimented with the older TW style, without the grey background?
On Oct 23, 5:24 pm, Dave Parker <cedar...@telus.net> wrote:
> I've been slowly working away at a TW for bible study, using the World > English Bible (public domain) and have just finished inputting (using > Udo's pure store TW, notepad, and a spreadsheet) all of 1Samuel with > each verse as a separate tiddler, and its already slowing down. > (here:http://biblestudy.tiddlyspot.com/)
> I think where I'm going to have to go is with having each book as a > separate TW on a website and using includePlugin to go get the books > and verses as needed (I think I read somewhere that you can delay the > call for what's included until needed in real time)
> Anyway, the whole point of this TW is to be able to do your own > annotation and adding of links to whats already there.
> Q: Is there some existing way or approach that would allow one to > annotate (e.g. add highlighting or bolding or links from text) an > included and therefore unchanging tiddler, and save that annotation > for yourself (or to share) while another person could use those same > source tiddlers and annotate to their hearts content and save that in > their own TW? Microsoft Reader has a separate annotation file, and > that's the approach I'm thinking of.
It partially does, but I'd really like to somehow get direct annotation of a tiddler as a "layer" over top of the original content. That's why I have the word "stupid" in the title of this question, i.e. I have great doubts that what I want actually is acheivable with TW right now - but then I've been wrong many times before, so I thought I'd give it a try.
TiddlyChatter does look interesting though. Looking at the screenshot you provided, I assume those are all tiddlers that are attached to a single tiddler in the source document, and the "add note" at the end means add another note to that one source document?
Lets say I did want to use this, and lets say the anticipated deferred loading of included tiddlers has arrived: would you be able to add a note to one of the included tiddlers?
On Oct 24, 6:11 am, Andrew Lister <lis...@post.queensu.ca> wrote:
> Hi Dave,
> I don't have any technical advice to offer, but I'm interested in this > question because I too would like to put up big texts to be > annottated / indexed - in my case I'm interested in parliamentary > hearings on issues of public policy.
Aside: Another related use of TW is for reference to minutes of prior meetings (hearings?). I put all the minutes from previous meetings (church board meetings) in a single TW with Udos great YourSearchPlugin (that is Udo's right (maybe Eric?)). Its great for looking up to see if certain things are in the constitution or not - and it has already saved 30 minutes of discussion about things we'd already decided on 4 months earlier.
> First Question: speed.
> What exactly are the slow spots? > #1 it takes a while to load, initially - and this will get worse as > you add the other books
Yes this is one part of the issue - 1Samuel alone has over 800 verses. Its only moderately slow on my newer computer, but horrendous on my ancient computer at home. Putting the entire bible in would be a show stopper.
> #2 Because the text is broken up into so many tiddlers, it sometimes > takes a while to display things. For example, this table is a bit > slow:http://biblestudy.tiddlyspot.com/#%5B%5B1st%20Samuel%5D%5D > And clicking on the first chapter from the table is slow to bring a > whole list of tiddlers - all the verses, I guess they're called.
> Are these the slow points you're seeing?
Yup. I think I could make the second part speed up (possibly) by switching to just having the individual verses tagged by the chapter tiddler and then opening all subtiddlers, but that would subtract from ease of use. Right now I'm using code that someone (I think it was FND) gave me on a previous thread - it searches for all tiddlers with a certain value int he title. I'd assume if all the verses already have the tag that rendering them all would be faster.
> Which of these problems would be solved by load on demand / lazy > loading, which I gather is in the works? #1, I think, but not #2. Is > that right, can anyone confirm? Even with deferred loading, a TW that > has to display 20+ tiddlers is going to be slow. If that's right, it > suggests using fewer tiddlers for the same amount of text (bigger > tiddlers - say, 5 verses at a time).
Yes, I've thought of that. Originally I had the entire chapter as a single tiddler, but theoretically when I have the whole bible in place, I'd want to be able to refer to single verses from one book and see just that verse appear (e.g. say you're reading the book of Mathew, and there's a reference to Daniel or Revelation, I just want a peek at the reference - not the entire book out of which you'd have to hunt down the original verse (now if I could somehow lasso YourSearchPlugin into the process, that might be helpful))
> Second Question: Input.
> Suppose I have a series of HTML files of my Parliamentary hearings. > Is there any way to get this material into TW without copy and > pasting? That would take forever, plus each tiddler would have to be > manually tagged with time, date, speaker etc. Lots of error. Has > anyone done any work on automated conversion into TW format? People > have already put together a large number of online texts - for > example, in the Liberty Fund's Online Library of Liberty. Some of > those are PDF of actual public domain books, but some are also html > versions. It would be fantastic if there were a way of taking those > texts and "dumping" them into TW.
This also was a big hurdle. I don't know if this would help you with html files, but I'll elaborate a bit on what I did. I made use of this: http://www.abego-software.de/references/TiddlyWikiPureStoreFormat.html . I copied the pure store code into a spreadsheet and made it so you could just plunk in the tiddler text as a column in the spreadsheet. My source was a copy of World English Bible that already had the verses as single rows of ascii text (which helped) so I then went back and forth between notepad and the spreadsheet tweaking things until I could plunk in the titles and text into the sheet, then copy the entire thing into notepad and rename the extension as "html". from that point you can then just "import all" the tiddlers into your target TW. I haven't tried this with the source being html from the start.
> Third Question: Display.
> When a longer text is broken up into smaller tiddlers, for purposes > of easy cross-referencing and indexing, the separations between > tiddlers become distracting when trying to read the whole text. Have > you experimented with the older TW style, without the grey background?
yes, that's on my todo list (as well as figuring out how to get rid of the spaces inbetween the tiddlers
>TiddlyChatter does look interesting though. Looking at the screenshot you
provided, I assume those are all tiddlers that are attached to a single tiddler in the source document, and the "add note" at the end means add another note to that one source document? The notes are in the subscription TiddlyWiki. The source Tiddlywiki does not get changed at all. Add another note will add a tiddler in the subscription TiddlyWiki only. So what you have is a master-slave scenario. See the attached diagram - MasterSlaveScenario.jpg.
>Lets say I did want to use this, and lets say the anticipated deferred
loading of included tiddlers has arrived: would you be able to add a note to one of the included tiddlers? As you have full control of your separate subscriber Tiddlywiki [slave], you can add notes to a included/synchronised tiddler with no impact on the original source tiddler.
Dawn
On 10/24/07, Dave Parker <cedar...@telus.net> wrote:
> It partially does, but I'd really like to somehow get direct > annotation of a tiddler as a "layer" over top of the original > content. That's why I have the word "stupid" in the title of this > question, i.e. I have great doubts that what I want actually is > acheivable with TW right now - but then I've been wrong many times > before, so I thought I'd give it a try.
> TiddlyChatter does look interesting though. Looking at the screenshot > you provided, I assume those are all tiddlers that are attached to a > single tiddler in the source document, and the "add note" at the end > means add another note to that one source document?
> Lets say I did want to use this, and lets say the anticipated deferred > loading of included tiddlers has arrived: would you be able to add a > note to one of the included tiddlers?
> > What exactly are the slow spots? > > #1 it takes a while to load, initially - and this will get worse as > > you add the other books
> Yes this is one part of the issue - 1Samuel alone has over 800 > verses. Its only moderately slow on my newer computer, but horrendous > on my ancient computer at home. Putting the entire bible in would be > a show stopper.
I read somewhere in the dev group by Jeremy, that TiddlyWiki would be still responding reasonably with 3 MB. I didn't understand what he talked about - if mine slows down already considerable at 1 MB?!?
So I made the test, before I would start converting huge amounts of text into a TiddlyWiki and possible having to give up at one point because of unresponsiveness.
However, I heeded the words of Jeremy - that it would be reasonably responding only with a MINIMUM of plugins enabled!
What else would be more worthwhile for such an experiment - pushing and knowing the limits of TiddlyWiki - other then the sum total of all systemConfig, macro, script and stylesheet Tiddler available out there?
Therefore I imported all these in one single TiddlyWiki with the ImportPlugin, which lets you choose only those tiddler tagged with the above mentioned Tags. However, only enabling a minimum of Plugins with the systemConfig tag.
Although it became a complete mess in terms of content (to many different versions of Plugins overwritting each other..) - by now I arrived at 5.87 MB with about 1200 tiddlers (of which half were originally tagged with systemConfig).
This TW taken at it's core functions is still responding as a TW below 1 MB! And if I compare the swiftness of this TW with the time biblestudy needs to respond (for example just opening the tags tab - Jeremy was absolutely right that it is the plugins, which slows a TiddlyWiki down! (except - for saving [20 sec] and reloading [10])
You have 54 !! plugins enabled in biblestudy, so really no wonder why already now it's so lame. Just disable the number of your plugins by 2/3 (of which most are anyway unnecessary because of having equal functions) - and you will be really surprised at your biblestudies new speed!
(One small suggestion though, don't use GoToPlugin. I don't know why, but YourSearch is still quick at about 6 MB - while Goto needs more than seconds for each single letter. Additionally, you don't even need to install YourSearch with the following script as a tiddler tagged with systemConfig!:
//{{{ (function() { var script=document.createElement("script"); script.src="http://tiddlywiki.abego-software.de/archive/ YourSearchPlugin/Plugin-YourSearch-src.2.1.1.js"; script.onload=function() {refreshPageTemplate();displayMessage("YourSearch has been loaded");}; document.getElementsByTagName("head")[0].appendChild(script);
> > #2 Because the text is broken up into so many tiddlers, it sometimes > > takes a while to display things. For example, this table is a bit > > slow:http://biblestudy.tiddlyspot.com/#%5B%5B1st%20Samuel%5D%5D > > And clicking on the first chapter from the table is slow to bring a > > whole list of tiddlers - all the verses, I guess they're called.
> > Are these the slow points you're seeing?
> Yup. I think I could make the second part speed up (possibly) by > switching to just having the individual verses tagged by the chapter > tiddler and then opening all subtiddlers, but that would subtract from > ease of use. Right now I'm using code that someone (I think it was > FND) gave me on a previous thread - it searches for all tiddlers with > a certain value int he title. I'd assume if all the verses already > have the tag that rendering them all would be faster.
> > Which of these problems would be solved by load on demand / lazy > > loading, which I gather is in the works? #1, I think, but not #2. Is > > that right, can anyone confirm? Even with deferred loading, a TW that > > has to display 20+ tiddlers is going to be slow. If that's right, it > > suggests using fewer tiddlers for the same amount of text (bigger > > tiddlers - say, 5 verses at a time).
> Yes, I've thought of that. Originally I had the entire chapter as a > single tiddler, but theoretically when I have the whole bible in > place, I'd want to be able to refer to single verses from one book and > see just that verse appear (e.g. say you're reading the book of > Mathew, and there's a reference to Daniel or Revelation, I just want a > peek at the reference - not the entire book out of which you'd have to > hunt down the original verse (now if I could somehow lasso > YourSearchPlugin into the process, that might be helpful))
Also the PartTiddlerPlugin would help still being able to call individual verses, while leaving the whole text one. EasySlicer would make this not too much of a huge task.
> > Second Question: Input.
> > Suppose I have a series of HTML files of my Parliamentary hearings. > > Is there any way to get this material into TW without copy and > > pasting? That would take forever, plus each tiddler would have to be > > manually tagged with time, date, speaker etc. Lots of error. Has > > anyone done any work on automated conversion into TW format? People > > have already put together a large number of online texts - for > > example, in the Liberty Fund's Online Library of Liberty. Some of > > those are PDF of actual public domain books, but some are also html > > versions. It would be fantastic if there were a way of taking those > > texts and "dumping" them into TW.
One straight way of "dumping" html files and converting them to tiddlers is the great FileDropPlugin of BradleyMeck:
With this you are really able to drop .txt, php., html... files into a TW - and instantly a tiddler is created with its content! Each such tiddler - in the case of html - only needs to be enclosed by <html> ...droped source code... </html> , and the text displays nicely formatted. (and this enclosing with <html> .. </html> could be easily done by the ViewTemplate too).
The only hindrance to this would be that html files usually have much unnecessary overhead code - bloating such a TW even further.
> I think where I'm going to have to go is with having each book as > a separate TW on a website and using includePlugin to go get the > books and verses as needed (I think I read somewhere that you can > delay the call for what's included until needed in real time)
A great option for this would be ArchivePlugin. Because - as far as I understood it - it only loads tiddlers one by one when you individually call them. It does that by only keeping the meta data of each tiddler in its storeArea (title, modifier, tags, fields), and storing the plain text of each tiddler, as it is visible in the editor window, to an external .html file each.
Hope I could provide something helpful to your tasks,
> A great option for this would be ArchivePlugin. Because - as far as I > understood it - it only loads tiddlers one by one when you > individually call them. It does that by only keeping the meta data of > each tiddler in its storeArea (title, modifier, tags, fields), and > storing the plain text of each tiddler, as it is visible in the editor > window, to an external .html file each.
Yup, just double checked it ;-) and imported my huge TiddlyWiki into an empty one, and while importing these 1200 tiddlers with ImportPlugin, this Plugin is also the most convenient way to add the - for the ArchivePlugin necessary - 'Archive' tag to each of these tiddlers. (every other plugin would take ages to add a tag to so many tiddler at once)
Now the first save took about 35 seconds, during which all these tiddlers where saved separately in the subfolder 'archive'. But the second save and reload took just as long as a 500 kb TW takes!!! (it grew to this size by all the meta data)
And all archived tiddlers ready to be called there in the sidebartabs! - Really amazing!!
This ArchivePlugin - for including many MBs - has clearly beaten IncludePlugin (which takes almost as long to include the 6 MB TW as the ArchivePlugin needed to make its first save) at great length.
Though the single - or only double - file philosophy gone ;-)
thanks Wolfgang for your thoughts on this. It's a lot to take in and play around with. I'll probably have some more questions for you in a week or so, but this sure looks promising. Oh yeah, I looked at my plugins like you suggested and disabled a whack of them and it did seem to speed things up. I even noticed that I had multiple versions of the same plugins with slight spelling differences (what can I say? - I'm just a hack!)
Anyway, I'm going to have to take some time and play around with all of this. My first thought though is with the archive plugin, can you still edit the tiddlers?
> Anyway, I'm going to have to take some time and play around with all > of this. My first thought though is with the archive plugin, can you > still edit the tiddlers?
Yes, editing works just as usual from within the TiddlyWiki.
What makes this method with the ArchivePlugin even more attractive: You can open these separate tiddler .html files (which, by the way, have the same name as the tiddler title) in the subfolder with just any full blown editor with more advanced editing features.
- Opening up the further possibility of dropping a whole bunch of such .html files (which have been converted before into tiddlers with the FiledropPlugin) into such an editor and batch remove the whole html code overhead in one go! (also minimizing the serious high risk of having the javascript of a TW damaged by an editor when editing the whole of a TW)
A big 'thanks' for this Plugin to Jack, - and to you, Dave for having asked these questions ;-)
W.
PS: take care not to import all tiddlers of a TiddlyWiki AND adding the tag 'Archive' to ALL of them. Because then you would end up with a blank TW - as I did in my first try - with only the backstage remaining visible. - As far as I can tell till now, all the stylesheets, templates and plugin tiddler contents have to remain within the TW!
> > A great option for this would be ArchivePlugin. Because - as far as I > > understood it - it only loads tiddlers one by one when you > > individually call them. It does that by only keeping the meta data of > > each tiddler in its storeArea (title, modifier, tags, fields), and > > storing the plain text of each tiddler, as it is visible in the editor > > window, to an external .html file each.
Just checked also on this, if there wouldn't be a Tag Batch Renaming Plugin beside the Import/ExportTiddlersPlugin - which could alter the tag 'Archive' instantly - compared to TiddlerTweaker of Eric of MultiTagEditor of Ido - to have the 6 MB TiddlyWiki back as one whole file again.
And with TaggerPlugin of Saq this is indeed possible in an wink of an eyelid.
Sorry for the mistake, I meant to elaborate on this one paragraph:
> ... and while importing these 1200 tiddlers with > ImportPlugin, this Plugin is also the most convenient way to add the - > for the ArchivePlugin necessary - 'Archive' tag to each of these > tiddlers. (every other plugin would take ages to add a tag to so many > tiddler at once)
> (One small suggestion though, don't use GoToPlugin. I don't know why, > but YourSearch is still quick at about 6 MB - while Goto needs more > than seconds for each single letter.
has been updated to *vastly* reduce the key-by-key performance overhead: the 'master' list of all tiddlers, shadows, and tags is now retrieved and cached on the first keypress. In addition, I replaced the use of regular expressions for matching tiddler titles, and now use simple "indexOf" comparisons.
The result: while the overhead for the first keypress was only reduced by a little bit, the processing needed for each subsequent keystroke was decreased by TWO orders of magnitude (from around 95ms, down to less than 1ms! in a document containing 320 tiddlers).
I think you'll find that GotoPlugin is now MUCH more responsive when used in larger TW documents. In fact, I tested it with a document containing 1000 tiddlers, and the improvement is even more dramatic. While the first keystroke took about 200ms, the overhead for the following keystrokes was still <1ms!!
enjoy, -e Eric Shulman TiddlyTools / ELS Design Studios
Wolfgang: re GotoPlugin, I did take it out initially as per your suggestion but put it back in because its perfect for finding tiddler (in this case "verse") names only, rather than the plethora of instances of partial matches that you get with YourSearchPlugin.
Eric: I just updated GotoPlugin, and yes, its very much faster - Thank you for mentioning it here.
> This ArchivePlugin - for including many MBs - has clearly beaten > IncludePlugin (which takes almost as long to include the 6 MB TW as > the ArchivePlugin needed to make its first save) at great length.
Well. the biggest disadvantage is that the tiddler archived by ArchivePlugin doesn't get written by the ForEachTiddlerPlugin at all! Also SliceGridPlugin only writes the titles - and nothing from within the Slices of archived tiddlers.
Does anyone have any idea of a possible workaround for this problem?
There also remains the hope for Martin's upcoming LocalAdaptorPlugin to have some solution to this.
> re GotoPlugin, I did take it out initially as per your suggestion but > put it back in because its perfect for finding tiddler (in this case > "verse") names only, rather than the plethora of instances of partial > matches that you get with YourSearchPlugin.
Dave, you could also simply have narrowed YourSearch to look for titles only.
> Eric: > I just updated GotoPlugin, and yes, its very much faster - Thank you > for mentioning it here.
Eric, your quick responses to the needs of TiddlyWiki users is just charming.
> > This ArchivePlugin - for including many MBs - has clearly beaten > > IncludePlugin (which takes almost as long to include the 6 MB TW as > > the ArchivePlugin needed to make its first save) at great length.
> Well. the biggest disadvantage is that the tiddler archived by > ArchivePlugin doesn't get written by the ForEachTiddlerPlugin at all! > Also SliceGridPlugin only writes the titles - and nothing from within > the Slices of archived tiddlers.
> Does anyone have any idea of a possible workaround for this problem?
Sorry, but I concluded to early. In the process of updating to TW 2.2.6 one tiddler I used as a parameter with the ForEach call was lost during the update process.
Having copied this tiddler manually - and ForEach does indeed work on archived tiddler.
> > > This ArchivePlugin - for including many MBs - has clearly beaten > > > IncludePlugin (which takes almost as long to include the 6 MB TW as > > > the ArchivePlugin needed to make its first save) at great length.
> > Well. the biggest disadvantage is that the tiddler archived by > > ArchivePlugin doesn't get written by the ForEachTiddlerPlugin at all! > > Also SliceGridPlugin only writes the titles - and nothing from within > > the Slices of archived tiddlers.
> > Does anyone have any idea of a possible workaround for this problem?
> Sorry, but I concluded to early. In the process of updating to TW > 2.2.6 one tiddler I used as a parameter with the ForEach call was lost > during the update process.
> Having copied this tiddler manually - and ForEach does indeed work on > archived tiddler.
> However, with SliceGrids this problem does exist.