I have an idea to make a dictionary out of TiddlyWiki document, and
wants to know what other think on how to implement this idea. Whether
it is possible, what are the limitations and what are the possible
workarounds, if any.
! TiddlyWiki as a bidirectional dictionary
The first problem I can imagine is on the size of the dictionary,
which I think can be solved using LocalAdapterPlugin, by having
multiple tidlers on its separate files.
The second problem is the javascript performance to wikify all the
loaded contents, which can be solved possibly by using
LazyLoadingPlugin (Is there any?).
The LazyLoading idea can be found here: http://tinyurl.com/ys7olu
The third problem is that every word should be clickable. If we have
to wrap all words inside <a href></a> tags, I am afraid this will also
degrade performance because of javascript processing time to wikify
and WikiWording all the word. And also, I prefer not to enclose all
words with double square brackets [[theword]] to make the word
clickable.
I think this is the time for someone to develop a LinkAllWordPlugin,
hopefully by using eventBubble?
Since I am not (yet) literate in javascript development, and try only
few of the available plugins, I need some advice on what available
plugins do I need for the above functionality.
Use Cases:
* User select translate to Indonesian : (xlat_to = "id")
* User click any of the displayed word (eg: the word "simple")
TiddlyWiki will LazyLoad from file "simple.id.tiddler"
(Loaded file : ClickedWord (dot) xlat_to (dot) tiddler)
* Manual operation:
User can manually commit all the updated / createad tiddlers to SVN
repository
This dictionary is a simple dictionary, not the complex thesaurus
found on this thread ( http://tinyurl.com/ynugkl )
I also prefer to make this dictionary as simple as possible (no tags,
for example), so that everybody can collaborate on completing the
contents by adding their definitions for every possible words.
Just word linked to its translation.
Regards,
Abd Shomad
Looks like it works in IE only, using some kind of ActiveX object, and
only works when the thing is saved locally.
If that's all OK with you, you might want to email jack and ask for a
demo or something..
;D
--
Daniel Baird
i neeber olok at ym kyebord wen i tpey
Thank you for the suggestion. I will (also) try this plugin :)
Has anyone try the "double-click" feature @ Answer (dot) com? I think
that feature suite the need to implement this dictionary, but I have
no knowledge (yet) as to how to create the plugin.
Abd Shomad
Hi Kashgarinn,
What do you think if we don't load all the tiddlers? I mean, we can
load the "requested" tiddler on demand (Lazy Loading).
On the very first screen, we display only the list of the alphabet (A
~ Z), and one search box.
When user click on "A", TW will loads the "A.[lang-selected].tiddler"
on demand (Lazy Loading), which can contain as many words starting
with letter "A" (as the index).
And suppose that user clicks on "abacus", then TW will loads the
"abacus.[lang-selected].tiddler" on demand (Lazy Loading, again...).
This can also be applied to the inputted word in the search box. If
user just type "abacus" in the search box, TW will loads the
"abacus.[lang-selected].tiddler" on demand (Lazy Loading, again and
again... ).
I will try this approach and let others know the result (maybe after
some weeks, since I am not yet fluent in TW, javascript and plugin
development).
I think, the key to the performance problem is on the Lazy Loading
mechanism here.
The reason TW is probably a good solution for creating Collaborative
Dictionary is that with LocalAdapterPlugin, other contributors can
submit their "revisions", which is a collection of small tiddlers.
This will attract more users / contributors, since they can work
"offline" and submit their changes / additions only when connected to
the internet.
Regards,
Abd Shomad