diff options
author | Mike Gerwitz <mike@mikegerwitz.com> | 2013-05-29 20:51:08 -0400 |
---|---|---|
committer | Mike Gerwitz <mike@mikegerwitz.com> | 2013-05-29 20:51:09 -0400 |
commit | efad11371e0835b99f3eee352c4996cdf6f95558 (patch) | |
tree | a0dcdc1fbe19adb67dc7b26f9f762e270686c37b /tools | |
parent | 94f3e09af8d811dca0535f1fd969821eaf1a1f74 (diff) | |
download | thoughts-efad11371e0835b99f3eee352c4996cdf6f95558.tar.gz thoughts-efad11371e0835b99f3eee352c4996cdf6f95558.tar.bz2 thoughts-efad11371e0835b99f3eee352c4996cdf6f95558.zip |
Added extfmt tool (repo2html msgfmt extensions for inlining images and code samples)
The inline image extension does not belong in repo2html (see comments), but the
source code highlighting may be moved in (code samples do make sense in commit
messages).
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/extfmt | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/tools/extfmt b/tools/extfmt new file mode 100755 index 0000000..a7fa233 --- /dev/null +++ b/tools/extfmt @@ -0,0 +1,45 @@ +#!/bin/bash +# +# Augments default repo2html message formatter +# +# Copyright (C) 2013 Mike Gerwitz +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +## + +# adds inline image and source code include support to default formatter (which +# does not necessarily make sense in repo2html, since it styles commit +# messages...if you try to inline an image in a commit message using this +# format, then you should probably pretend the brackets are staples and lodge +# them into your skull) +"$msgfmt_default" "$@" \ + | awk -vpath_root="$path_root" ' + match($0, /\[img:([^:]+?)(:(.*?))?\]/, g) { + print "<div class=\"inline-img\">" + print " <img src=\"/images/" g[1] "\" alt=\"" g[3] "\" title=\"" g[3] "\" />" + print "</div>" + + next + } + + match($0, /\[src:(.*?):(.*?)\]/, g) { + c = "source-highlight -s" g[2] " -i" path_root "/" g[1] + + print "<div class=\"listingblock\">" + while ( c | getline ) print + print "</div>" + } + + { print } + ' |