FadingMessagesPlugin

9 views
Skip to first unread message

Paul Downey (psd)

unread,
Dec 21, 2008, 5:39:58 AM12/21/08
to TiddlyWiki
Announcing the FadingMessagesPlugin:

http://whatfettle.com/2008/07/FadingMessagesPlugin/

This removes the need to close displayed messages, by making them
automatically disappear after a short interval.

The FadingMessagesPlugin depends on another new plugin, the
WikifiedMessagesPlugin:

http://whatfettle.com/2008/07/WikifiedMessagesPlugin/

which enables displayed messages to contain wikified content.

Enjoy!
Paul (psd)
--
http://blog.whatfettle.com

Russ Thomas

unread,
Dec 21, 2008, 10:06:48 AM12/21/08
to Tiddl...@googlegroups.com
Paul

I'm getting: Error: TypeError: config.extensions is undefined

from both plugins.

TW 2.4.1
MPTW 2.5.2
FF 3.0.4

2008/12/21 Paul Downey (psd) <paul.s...@gmail.com>

Eric Shulman

unread,
Dec 21, 2008, 10:27:09 AM12/21/08
to TiddlyWiki
> I'm getting: Error: TypeError: config.extensions is undefined
> from both plugins.
>
> TW 2.4.1

config.extensions is a NEW object that was only added recently, and
requires TW2.4.2, which just entered the "beta 1" pre-release testing
phase this past Friday.

To avoid this error, the "CoreVersion" slice value in the plugin
should be set to "2.4.2" instead of just "2.4"... this will block the
plugin from being loaded in any version prior to 2.4.2

See:
http://www.TiddlyWiki.com/beta
http://trac.tiddlywiki.org/ticket/735
http://trac.tiddlywiki.org/changeset/6903

enjoy,
-e
Eric Shulman
TiddlyTools / ELS Design Studios

Paul Downey (psd)

unread,
Dec 21, 2008, 10:43:43 AM12/21/08
to TiddlyWiki
On Dec 21, 3:06 pm, "Russ Thomas" <russgtho...@gmail.com> wrote:
>
> I'm getting: Error: TypeError: config.extensions is undefined
>
> from both plugins.
>
> TW 2.4.1
> MPTW 2.5.2
> FF 3.0.4

Ah, my bad - I've been working with the latest TW core, which includes
this changeset:

http://trac.tiddlywiki.org/changeset/6903

so have added a workround to WikifiedMessagesPlugin:

http://trac.tiddlywiki.org/changeset/8307

and tried it with 2.4.1/MPTW on TiddlySpot:

http://fadingmessagesplugin.tiddlyspot.com/

FND

unread,
Dec 23, 2008, 10:17:20 AM12/23/08
to Tiddl...@googlegroups.com
This is good stuff, Paul, I really like it!

Just a word of caution: As long as TiddlyWiki doesn't have a persistent
message store*, faded messages are irretrievable. (Of course this isn't
much different from the current situation where messages are usually
dismissed manually.)


-- F.


* cf. http://trac.tiddlywiki.org/ticket/31
FWIW, Saq and I had done a tiny bit of exploratory hacking last year:
http://twconsole.tiddlyspot.com/#TwConsolePlugin

Paul Downey (psd)

unread,
Dec 23, 2008, 11:24:31 AM12/23/08
to TiddlyWiki
> Just a word of caution: As long as TiddlyWiki doesn't have a persistent
> message store*, faded messages are irretrievable.

I can see two additional plugins in this area:

1) a "log" of previous messages, probably a temporary tiddler
2) some notion of prioratizing a message - ERROR,WARNING,NOTICE, etc,
probably with the data stored in one place against the messages,
similar to lingo, and then syslog type rules for routing messages.

#1 seems doable, but as I'm strongly hinting, #2 is a slippery slope
to reinventing syslog :)

Eric Shulman

unread,
Dec 23, 2008, 12:01:22 PM12/23/08
to TiddlyWiki
> > Just a word of caution: As long as TiddlyWiki doesn't have a persistent
> > message store*, faded messages are irretrievable.
> I can see two additional plugins in this area:
> 1) a "log" of previous messages, probably a temporary tiddler
> #1 seems doable,

Try this:
http://www.TiddlyTools.com/#MessageLogPlugin

Description:
-----------
By default, messages displayed by TiddlyWiki are not retained once
they are dismissed from the display. This plugin automatically appends
each message to a shadow tiddler, MessageLog, to provide a short-term,
per-session record of messages without altering any 'real' tiddlers in
your document.

You can view the MessageLog tiddler at any time to review the previous
messages and, if you convert the shadow tiddler to a 'real' tiddler
(by editing it), then any subsequent messages will be added to that
real tiddler instead of the shadow. This real tiddler will, of course,
be saved with the rest of your TW document when you save the file,
allowing you to keep a persistent, inter-session log rather than a
short-term, per-session log.
-------------

Eric Shulman

unread,
Dec 23, 2008, 12:27:28 PM12/23/08
to TiddlyWiki
> This plugin automatically appends
> each message to a shadow tiddler, MessageLog, to provide a short-term,
> per-session record of messages without altering any 'real' tiddlers in
> your document.

Although either a shadow tiddler or a temporary tiddler might have
been used here, I deliberately chose to use a shadow tiddler rather
than a temporary tiddler so that the default message logging behavior
would have absolutely no impact on users that don't care about the
MessageLog.

By using a shadow, it is 100% guaranteed that no changes to the
tiddler 'store' will occur and thus no triggering of notification
handlers that might cause unwanted side-effects. In contrast, a
temporary tiddler still modifies the tiddler 'store', and could still
trigger notification handlers, as well as appearing in the tabbed
lists of tiddlers (unless it was also tagged with 'excludeLists'),
even if the [[MessageLog]] tiddler would be meaningless (or even
distracting) to the specific audience for that document.

-e

Eric Shulman

unread,
Dec 23, 2008, 8:05:10 PM12/23/08
to TiddlyWiki
>    http://whatfettle.com/2008/07/FadingMessagesPlugin/
> This removes the need to close displayed messages, by making them
> automatically disappear after a short interval.
> The FadingMessagesPlugin depends on another new plugin, the
>    http://whatfettle.com/2008/07/WikifiedMessagesPlugin/
> which enables displayed messages to contain wikified content.

Although I have some usability concerns about making *all* messages
automatically disappear, I do like the overall effect!! it just seems
to 'feel right'... though there are a few minor points of feedback for
you to consider:

1) Try to eliminate the dependency on WikifiedMessagesPlugin, either
by combining code from both tiddlers into a single plugin, or at least
make it optional; i.e., check to see if
config.extensions.WikifiedMessages is defined and, if not, fallback to
the current TW core method that just renders a line of text with a
possible link to an external URL.

2) Instead of drawing each message within it's own *visible* container
(i.e, an element with borders/background colour), I'd like to preserve
the current appearance of the message box area as much as possible.
In particular, there is only one visible container surrounding all
messages, even if several messages are displayed in rapid succession.
I still want the powerful new fade and wikify handling, but applied to
individual message DIVs with no border/background that are created
*within* that one container, rather than each message being rendered
into a separate visible container.

3) I'd like a simple checkbox option to disable/enable the fading
timer, as well as a text option input field to enter a the desired
display time before fading the messages.

your thoughts?

Russ Thomas

unread,
Dec 24, 2008, 3:36:58 AM12/24/08
to Tiddl...@googlegroups.com
2008/12/24 Eric Shulman <elsd...@gmail.com>

>    http://whatfettle.com/2008/07/FadingMessagesPlugin/
> This removes the need to close displayed messages, by making them
> automatically disappear after a short interval.
> The FadingMessagesPlugin depends on another new plugin, the
>    http://whatfettle.com/2008/07/WikifiedMessagesPlugin/
> which enables displayed messages to contain wikified content.

Although ...

Yeah... what Eric said, :-D


Eric Shulman

unread,
Dec 24, 2008, 4:51:03 AM12/24/08
to TiddlyWiki
> 3) ... a text option input field to enter the desired display time before fading the messages.

I see this is already included in the plugin:
<<option txtFadingMessagesTimeout>>

However, the plugin always hard-codes this setting to 5 seconds, and
even if you change the value, the next time the document is loaded, it
will always revert to the hard-coded value. Try this code instead:

if (config.options.txtFadingMessagesTimeout===undefined)
config.options.txtFadingMessagesTimeout=5;

Also, perhaps a separate checkbox isn't needed: rather, one could just
set the fading timeout == 0 (or blank input) to indicate that no
fading is desired.
Reply all
Reply to author
Forward
0 new messages