# Copyright (C) 2008 Weakish Jiang # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License version 2 as # published by the Free Software Foundation. # # You can get a copy of GPL version 2 at # http://www.gnu.org/licenses/gpl-2.0.html # # For user doc, see: # http://www.oddmuse.org/cgi-bin/oddmuse/Field_List_Extension use strict; use v5.10; AddModuleDescription('fieldlist.pl', 'Field List Extension'); our ($bol, @MyRules); push(@MyRules, \&FieldListRules); sub FieldListRules { # :fieldname: fieldbody if ($bol && m/\G\s*\:(?=(((\S.*\S)|\S)\:))/cg or InElement('dd') && m/\G\s*\n(\s)*\:(?=(((\S.*\S)|\S)\:))/cg) { return CloseHtmlEnvironmentUntil('dd') . OpenHtmlEnvironment('dl', 1, 'fieldlist') . AddHtmlEnvironment('dt'); # `:' needs special treatment, later } elsif (InElement('dt') and m/\G\:[ \t]*(?=((\S)+))/cg) { return CloseHtmlEnvironment() . AddHtmlEnvironment('dd'); } return; }