TikiText 0.50 Available.

| 28 Comments | 2 TrackBacks

UPDATE: I've released a patched version that corrected a few reported issues. More detail can be found here.

I've released a new version of the TikiText engine. It was time.

This release is an extensive refactoring bordering on a rewrite to address some of the issues I encountered in previous versions and the realization the road I had set out on was flawed for future development. This new release also adds the beginnings of some highly requested features – images (though not feature complete) and tables.

In addition to images and tables, the following changes where made to this release:

  • Changed code symbol from | (pipe) to % to make way for tables.
  • Blockquotes can be nested.
  • Blockquotes can contain lists and other block formatting.
  • Switched to WikiWord target names as opposed to camel case.
  • One line definitions and terms are no longer supported.
  • <pre> blocks can included TikiText notation. TikiText is still ignored in <code> blocks.

Download:
.ZIP
.GZ
Reference Guide 0.5

This ended up being a rough and circulative process and not what I initially imagined. As previously mentioned
I thought …in terms of processing, TikiText is not much different then XML. What I found (the hard way) is that, while similar, there where enough difference to make the streaming token method I first attempted was too difficult if not impossible when you do not have explict and easily identifiable end tags.

I have a new appreciation for the elegeance and simplicity of XML markup. Not that I didn't have one before – its just grown the size of the Empire state building and illuminated in neon.

The code still needs a lot of cleaning up and some optimization, but it works.
I've checked for the bugs that where reported and think I have addressed them, but with such an extensive refactoring I fear I may have introduced new quirks and bugs. I have identified a few minor quirks already that I've listed in this version's documentation.

Comments and bugs can be placed here. As always bug reports and feedback are appreciated.

<p>UPDATE: I&#39;ve released a patched version that corrected a few reported issues. More detail can be found <a href="http://www.timaoutloud.org/projects/tiki/beta2.html#000029">here</a>.</p>
<p>I&#39;ve released a new version of the TikiText engine. It was time.</p>
<p>This release is an extensive refactoring bordering on a rewrite to address some of the issues I encountered in previous versions and the realization the road I had set out on was flawed for future development. This new release also adds the beginnings of some highly requested features &#8211; images (though not feature complete) and tables.</p>
<p>In addition to images and tables, the following changes where made to this release:</p>
<ul>
<li>Changed code symbol from | (pipe) to % to make way for tables.</li>
<li>Blockquotes can be nested.</li>
<li>Blockquotes can contain lists and other block formatting.</li>
<li>Switched to WikiWord target names as opposed to camel case.</li>
<li>One line definitions and terms are no longer supported.</li>
<li>&lt;pre&gt; blocks can included TikiText notation. TikiText is still ignored in &lt;code&gt; blocks.</li>
</ul>
<p>Download: <br /><a href="http://www.timaoutloud.org/projects/tiki/tiki.zip">.ZIP</a> <br /><a href="http://www.timaoutloud.org/projects/tiki/tiki.tar.gz">.GZ</a><br /><a href="http://www.timaoutloud.org/projects/tiki/docs05.html">Reference Guide 0.5</a></p>
<p>This ended up being a rough and circulative process and not what I initially imagined. As <a href="http://www.timaoutloud.org/archives/000222.html">previously mentioned</a><br />I thought <q>&#8230;in terms of processing, TikiText is not much different then XML.</q> What I found (the hard way) is that, while similar, there where enough difference to make the streaming token method I first attempted was too difficult if not impossible when you do not have explict and easily identifiable end tags. </p>
<p>I have a new appreciation for the elegeance and simplicity of XML markup. Not that I didn&#39;t have one before &#8211; its just grown the size of the Empire state building and illuminated in neon. </p>
<p>The code still needs a lot of cleaning up and some optimization, but it works. <br />I&#39;ve checked for the bugs that where reported and think I have addressed them, but with such an extensive refactoring I fear I may have introduced new quirks and bugs. I have identified a few minor quirks already that I&#39;ve listed in <a href="http://www.timaoutloud.org/projects/tiki/docs05.html">this version&#39;s documentation</a>. </p>
<p><a href="http://www.timaoutloud.org/projects/tiki/beta2.html">Comments and bugs can be placed here</a>. As always bug reports and feedback are appreciated.</p>

2 TrackBacks

TrackBack URL: http://appnel.com/mt/pings/96

Obviously, I'm currently embarking on a similar mission, and share Tim's appreciation for XML. My goals, however, are much lower than Tim's: I'm not trying to create a full markup language. I'm applying 80/20 whenever I can: e.g., unordered lists ar Read More

Das Plugin für TikiText funktioniert. Jetzt kann ich neue Eintraege mit folgenden Formatierungen schreiben. Jedoch nur, wenn man bei der Eingabe das Text Formatting auf TikiText stellt.... Read More

28 Comments

I'm really excited to use TikiText, and I've got it working, but I'm getting this error on rebuild *and* on creation of a new entry with TikiText:

MT::App::CMS=HASH(0x8323ff4) Use of uninitialized value in string eq at /home/virtual/site120/fst/var/www/cgi-bin/mt/extlib/Text/Tiki.pm line 120.

I get it 10 times in a row.
Any idea what's gone wrong?

Yes. My programming. ;)

MT displays warning messages to the screen. This one is telling me I'm being sloppy. Its should not have any side effects to your ability to publish.

Most of my testing has been done outside of MT since the engine is a seperate independent module that can be deployed anywhere. In the next release I will address this issue.

Tim,
It seems there is a problem with the hyperlink substitution? It looks like unless the address portion of the hyperlink is followed by a comma, the rest of the paragraph text following the hyperlink gets omitted. See sample:

-- beginning of sample --
Paragraph.

This is a [link]:http://www.google.com this text mysteriously disappears when processed.

This is a [link]:http://www.google.com, this text is visible after processing.

Paragraph.
--- end of sample ---

Also, as far as features, you stated in your doc that intra-paragraph line breaks are not supported, however, I think that would be a nice capability if it could be added.

Great piece of work!

Best Regards, Brad Adkins

You're correct. Thanks for pointing that out. The regular expression I'm using is being too greedy and not terminating at the first space it encounters. Instead it needs a puncuation-space combination to make it stop matching. I'm going to set to work on a release to fix a few of these issues.

I've uploaded a patched version TikiText that corrects the issues reported by Graham and Brad. I've also added the Tiki Blosxom plugin that Rael Dornfest wrote for convience. Thanks all. Please keep posting any bugs of feedback you may have.

0.51 fix is working great.

I want to make a suggestion that you add a callback mechanism. I'm thinking this would be a good way for users to add additional formatting features. I would use a callback to implement intra-paragraph breaks.

Regards!

Good to hear it Brad. I'm open to the idea of callbacks. Implementing them would probably be a good idea for my own sanity.

What would you propose for user defined markers?

Uhmmm, maybe %markup% where "markup" is the token that the user's callback function intends to translate, e.g., I would use %br% and my callback would translate that to . Frankly though, I'm not too particular about markers, whatever is easiest to incorporate into your regexes would work for me in the final analysis.

Regards!

Found a bug...

[email]:mailto:foo.bar@domain.com works, but

[email]:mailto:foobar@domain.com gets seriously mangled.

Robert: Could you post what the mangled string looks like. Also please verify what version of TikiText you are using. Thanks.

Brad: Just asking to see if you had something specific. %br% would conflict with the inline code markup that use the same delimiters. I'll write this down and look into possibly addressing it in a later release.

Nope, I don't have anything specific in mind. There is no hurry on this, right now I am doing my own "additional" markup processing after I make the call to Tiki::Text::format().

my sorta-weblog using Text::Tiki is up and running. Don't look too closely, I'm not a *real* blogger.

I'm having trouble with quoted text. When I place "'s around words to quote them they don't show up in the tiki output... any thoughts?

ba

Can you do a view sorce and verify if the tags getting wrapped around said text?

Also, sadly, with tables, the left cell align and right cell align are not working. Center cell align is working.

How would you feel about making tables width="100%" or the option to designate them as such...?

In response to quotes, I do see "" and "" around the text to be quoted. ("bracket q bracket" adn "bracket slash q bracket").

Brad: The plugin is working as advertised. this sounds like either a stylesheet or browser issue.

On the tables, please send me the table text you are trying to use and the markup its generating. I'll see if I can figure out the problem

You can see the source and rendered versions here:

http://localhost/cgi-bin/bsblog.pl/Perl/Text-Tiki/

This is simply the sample from the doc.

I see it now. The markers for left and right justification (the "angle brackets") are getting encoded first before processing or more precisely the table processor is ignoring them that the encoding process picks them up. I haven't traced how this is happening yet, but will be sure to rectify the matter in the next release.

Hi Tim,

I just installed TikiText, and I love it. I'm having a few problems.

First, TikiText seems to interpret a blank line before an asterisked line as an empty bullet. For example, given these four lines:
----
Two features I love about [Mozilla 1.3]:http://www.mozilla.org/:

* spam filtering
* popup suppression
----

TikiText emits:
----
<p>
Two features I love about Mozilla 1.3:
</p>
<ul>
<li>
</li>
<li> spam filtering
</li>
<li> popup suppression

</li>
</ul>
<p>
----

I don't know whether this is a TikiText error, or maybe it isn't legal for me to put that blank line there. What do you think?

Second, I can't get em-dashes to work. If I type "fred--barney", TikiText emits "fred--barney". I was expecting "fred&#8212;barney".

If I type "fred -- barney" (spaces around the hyphens), TikiText emits "fred <del></del> barney", taking the hypens as deleted text markers.

Thanks,
Dale

I have a question about how Tiki text is supposed to work. It says that a blank line ends a block, but I find block level formatting doesn't survive the first line break, except for paragraphs. It seems to me, that this indicates that

> some text with a line break
to this line in a block quote

should result in <blockquote><p>some text with a line break to this line in a block quote</p></blockquote>

instead, it results in <blockquote><p>some text with a line break</p></blockquote>
<p>to this line in a block quote</p>

Am I misunderstanding the rules of tiki text?

Sorry for the horribly slow response.

Dale: You are correct. These are both bugs I need to track down.

Tamara: I'm sure my hasty documentation needs to be more clear on this. Each line needs to begin with the block formatting symbol. No doing so is interepted as a new type of block. The output you are seeing to what should happen. In order to continue the blockquote you would need to either add a > to the second line or remove the break between the two. Hope that clarifies the matter.

I've uploaded a maintenance release (v0.52) of TikiText that patches most of the bugs that have been reported to me via this board and private email.

The new version can be downloaded from the TikiText project page: http://www.mplode.com/tima/projects/tiki/

Tim,

It's working great for me. I do have a feature request.

I often find myself posting a small piece of HTML or style sheet as an example into a post and would love something that translated all the characters that cause it to be processed in the browser to HTML entities. Any lines between a defined pair of tags would be perfect.

Tony Williams

I am getting this odd error message:

----------------

Can't locate Text/Tiki.pm in @INC (@INC contains: ../lib plugins ./extlib ./lib /usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0 /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl .) at plugins/mt-tikitext.pl line 27.

---------------

I installed the mt-tikitext.pl and trans-tiki.pl files into my plugins directory, and the tiki.pm into my extlib/mtplugins directory. Where did I go wrong?

Thank you

Ahhh, thanks for the tiki code. It made moving my wiki (being used as a blog) to a blog engine a reasonable thing.

I'd like to add a vote for the cite= feature on your ToDo list.

I also appreciate your clean implimentation. It made it a snap to add:

$$line=~s!(^|(?<=\s))\(DEG\)!°!go;

to enable degree symbols for when I talk about temperatures. That was a constant aggravation wit h my old wiki engine.

What about umlauts?
and I think ACRONYM() has a bug: SVG(Scalable Vector Graphics)

Leave a comment

About this Entry

This page contains a single entry by Timothy Appnel published on March 10, 2003 12:21 PM.

Barbie is Blogging. was the previous entry in this blog.

Comments and TrackBack = WriteBack. is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Pages

Powered by Movable Type 4.2rc2-en