rename ikiwiki-prefix-directives into ikiwiki-transition
If we have transitions of this sort in the future, this program will hopefully be used to handle them too.master
parent
4c18058dfb
commit
61ffa4a816
|
@ -35,7 +35,7 @@ extra_build: ikiwiki.out
|
|||
./mdwn2man ikiwiki 1 doc/usage.mdwn > ikiwiki.man
|
||||
./mdwn2man ikiwiki-mass-rebuild 8 doc/ikiwiki-mass-rebuild.mdwn > ikiwiki-mass-rebuild.man
|
||||
./mdwn2man ikiwiki-makerepo 1 doc/ikiwiki-makerepo.mdwn > ikiwiki-makerepo.man
|
||||
./mdwn2man ikiwiki-prefix-directives 1 doc/ikiwiki-prefix-directives.mdwn > ikiwiki-prefix-directives.man
|
||||
./mdwn2man ikiwiki-transition 1 doc/ikiwiki-transition.mdwn > ikiwiki-transition.man
|
||||
./mdwn2man ikiwiki-update-wikilist 1 doc/ikiwiki-update-wikilist.mdwn > ikiwiki-update-wikilist.man
|
||||
$(MAKE) -C po
|
||||
if [ "$$PROFILE" = 1 ]; then dprofpp; fi
|
||||
|
@ -68,7 +68,7 @@ extra_install:
|
|||
install -d $(DESTDIR)$(PREFIX)/share/man/man1
|
||||
install -m 644 ikiwiki.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki.1
|
||||
install -m 644 ikiwiki-makerepo.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki-makerepo.1
|
||||
install -m 644 ikiwiki-prefix-directives.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki-prefix-directives.1
|
||||
install -m 644 ikiwiki-transition.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki-transition.1
|
||||
install -m 644 ikiwiki-update-wikilist.man $(DESTDIR)$(PREFIX)/share/man/man1/ikiwiki-update-wikilist.1
|
||||
|
||||
install -d $(DESTDIR)$(PREFIX)/share/man/man8
|
||||
|
@ -82,7 +82,7 @@ extra_install:
|
|||
|
||||
install -d $(DESTDIR)$(PREFIX)/bin
|
||||
install ikiwiki.out $(DESTDIR)$(PREFIX)/bin/ikiwiki
|
||||
install ikiwiki-makerepo ikiwiki-prefix-directives ikiwiki-update-wikilist $(DESTDIR)$(PREFIX)/bin/
|
||||
install ikiwiki-makerepo ikiwiki-transition ikiwiki-update-wikilist $(DESTDIR)$(PREFIX)/bin/
|
||||
|
||||
$(MAKE) -C po install DESTDIR=$(DESTDIR) PREFIX=$(PREFIX)
|
||||
}
|
||||
|
|
|
@ -18,10 +18,10 @@ ikiwiki (2.21) unstable; urgency=low
|
|||
in their setup files.
|
||||
|
||||
To convert your wiki to the new syntax, ikiwiki provides a new script
|
||||
ikiwiki-prefix-directives. It will convert preprocessor directives in
|
||||
ikiwiki-transition. It will convert preprocessor directives in
|
||||
all files given on the command line. To convert an entire wiki:
|
||||
|
||||
find wikidir/ -type f -name '*.mdwn' -print0 | xargs -0 ikiwiki-prefix-directives
|
||||
find wikidir/ -type f -name '*.mdwn' -print0 | xargs -0 ikiwiki-transition prefix_directives
|
||||
|
||||
Even with prefix_directives disabled, ikiwiki now allows an optional '!'
|
||||
prefix on preprocessor directives (but still requires a space). Thus, a
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
# NAME
|
||||
|
||||
ikiwiki-prefix-directives - convert ikiwiki pages to prefixed directive syntax
|
||||
|
||||
# SYNOPSIS
|
||||
|
||||
ikiwiki-prefix-directives page.mdwn...
|
||||
|
||||
# DESCRIPTION
|
||||
|
||||
`ikiwiki-prefix-directives` converts an ikiwiki page from the old
|
||||
preprocessor directive syntax, requiring a space, to the new syntax,
|
||||
prefixed by '!'.
|
||||
|
||||
Preprocessor directives which already use the new syntax will remain
|
||||
unchanged.
|
||||
|
||||
Note that if the page contains wiki links with spaces, which some
|
||||
older versions of ikiwiki accepted, ikiwiki-prefix-directives will
|
||||
treat these as preprocessor directives and convert them.
|
||||
|
||||
# AUTHOR
|
||||
|
||||
Josh Triplett <josh@freedesktop.org>
|
||||
|
||||
Warning: this page is automatically made into ikiwiki-prefix-directives's man page, edit with care
|
|
@ -0,0 +1,29 @@
|
|||
# NAME
|
||||
|
||||
ikiwiki-transition - transition ikiwiki pages to new syntaxes
|
||||
|
||||
# SYNOPSIS
|
||||
|
||||
ikiwiki-transition prefix_directives page.mdwn...
|
||||
|
||||
# DESCRIPTION
|
||||
|
||||
`ikiwiki-transition` aids in converting ikiwiki pages when
|
||||
there's a major change in ikiwiki syntax.
|
||||
|
||||
Currently only one such transition is handled, the `prefix_directives` mode
|
||||
converts an ikiwiki page from the old preprocessor directive syntax,
|
||||
requiring a space, to the new syntax, prefixed by '!'.
|
||||
|
||||
Preprocessor directives which already use the new syntax will remain
|
||||
unchanged.
|
||||
|
||||
Note that if the page contains wiki links with spaces, which some
|
||||
older versions of ikiwiki accepted, ikiwiki-prefix-directives will
|
||||
treat these as preprocessor directives and convert them.
|
||||
|
||||
# AUTHOR
|
||||
|
||||
Josh Triplett <josh@freedesktop.org>
|
||||
|
||||
Warning: this page is automatically made into ikiwiki-transition's man page, edit with care
|
|
@ -2,8 +2,6 @@
|
|||
use warnings;
|
||||
use strict;
|
||||
|
||||
undef $/; # process whole files at once
|
||||
|
||||
my $regex = qr{
|
||||
(\\?) # 1: escape?
|
||||
\[\[(!?) # directive open; 2: optional prefix
|
||||
|
@ -41,7 +39,28 @@ sub handle_directive {
|
|||
return "[[!${directive}${args}]]"
|
||||
}
|
||||
|
||||
while (<>) {
|
||||
s{$regex}{handle_directive($1, $2, $3, $4)}eg;
|
||||
print;
|
||||
sub prefix_directives {
|
||||
$/=undef; # process whole files at once
|
||||
|
||||
while (<>) {
|
||||
s{$regex}{handle_directive($1, $2, $3, $4)}eg;
|
||||
print;
|
||||
}
|
||||
}
|
||||
|
||||
sub usage {
|
||||
print STDERR "Usage: ikiwiki-transition type file ...\n";
|
||||
print STDERR "Currently supported transition types:\n";
|
||||
print STDERR " prefix_directives\n";
|
||||
exit 1;
|
||||
}
|
||||
|
||||
usage() unless @ARGV;
|
||||
|
||||
my $mode=shift;
|
||||
if ($mode eq 'prefix_directives') {
|
||||
prefix_directives(@ARGV);
|
||||
}
|
||||
else {
|
||||
usage();
|
||||
}
|
Loading…
Reference in New Issue