The PHP-based Content Management System.
It's actually been some time since I began using my own SVN repository for the XBBCode module (described in more detail in earlier posts). It's far more convenient than the combination of Dreamweaver and vim I have been using before.
Also, I have made it publically available, so if you have an SVN client (which you undoubtedly do if you have Linux), you can now get the current version by checking out the repository at this URL:
Through the pathauto module, my taxonomy has just become actually useful.
The idea of having multiple - even a multitude - of news streams, which are defined on the fly, is a pretty cool part of Drupal.
What is less cool is that the URLs invariably result in /taxonomy/term/[0-9]+. Call me spoiled, but if we're already dealing with clean URLs and free aliases, this should apply to the taxonomy as well.
BBCode has one drawback: Usually, it doesn't allow for tables.
If it does, you're stuck with endless
which is exactly what BBCode is meant to avoid: It should separate the user from the HTML syntax both for safety and convenience.
If it's not supported at all (usually the case), you have to make do with ASCII-formatted structures like this:
My module is quickly taking shape. Version 0.1.2 fixes several inconsistencies in the infrastructure.
One of the most significant changes is the addition of the "handler" system as an additional layer between the filter and the API hook.
Before, tags were simply gathered from all modules that implemented the hook, and collisions resulted in the latter module overwriting the tag of the earlier one.
Here's the first version of my XBBCode module.
Please note three things:
1. I have never developed a software product ready for deployment.
2. This is not yet intended for production.
3. My blog loads very slowly these days. Guess why.
I have left the "no cache" flag on in the filter to make debugging easier; meanwhile, the filter is kind of inefficient.
Honestly, this is less interesting to you as a tool than as a proof of concept work that will be interesting to look at and improve. However, it is functional.
My exams are done, and I finally have some time to get back to my XBBCode project.
As the last post stated, I am trying to build an extensible BBCode engine that can parse any tag added to it through a web form or through another module. In this way, the engine is supposed to emulate that of Invision Power Board, which also allows custom tags.
I've spent the last few hours developing the first version of a new Drupal module I've wanted for a long time.
It's dubbed XBBCode - short for Extensible BBCode.
The basic functionality of the BBCode module fo Drupal is kind of unsatisfying. Not only does it not allow any customization of how tags are rendered or what tags are recognized at all - it also does no validation on the tags at all. Unclosed BBCode tags will be rendered as broken HTML code as of the last version - which is exactly one thing BBCode is meant to fix.
I just made a little extension for Drupal that makes nicer quotes than the ones generated by the BBCode module. This one takes the IPB layout (including, incidentally, the corresponding IPB images, which is why I won't make the module publically available yet) for quotes and formats quotes according to that.
The design is also better than the standard BBCode in a few ways - for example, it checks (supposedly) for broken tags, so that an extra closing tag or an unclosed tag at the end will be left unparsed.
Traditionally, the delimiter "<--break-->" has been used in posts in Drupal to mark the point where the teaser should cut off - ie after which the user must click on "read more" to see the rest.
It has come to my attention that this has recently been replaced with a pseudo-tag, namely <break>
... and Drupal.
Well, I installed the gsitemap module, which is so far only released for 4.7.x, but whose CVS repository already has a 5.x-compatible version... with a bit of meddling required.
Finally, I've been able to submit a sitemap and verification page for Google (that "google495953..." thing), and also look at the request logs to see what exactly Google requests from my site: