8
print "Creating test repository\n";
10
$SIG{__WARN__} = sub { print STDERR @_ unless $_[0] =~ /^#/ };
12
if (-e 't/repository') {
13
print "Deleting old files\n";
14
File::Path::rmtree('t/repository', 0, 0);
15
die "Couldn't remove 't/repository': $!\n" if -e 't/repository';
19
binmode DATA, ':utf8' if not $] < 5.008;
21
if (/^%%\t(\S+)\t%%$/) {
23
$file = Zim::File->new($1);
25
$fh = $file->open('w');
35
%% t/repository/Test/wiki.txt %%
38
This is a **test page** to see how parsing goes
40
arbitrary //content// through our __parser__
42
($ROOT, $PAGE, @BACK, @FORW, $UNDO, $REDO);
43
my (%tree_iter, $tree_loaded, $pane_visible);
44
my (@undo_chars, $undo_lock, $save_lock, $overwrite_toggle);
46
delete => 'insert', insert => 'delete',
47
apply_tag => 'remove_tag', remove_tag => 'apply_tag' );
48
my $link_icon = Gtk2->CHECK_VERSION(2, 6, 0) ? 'gtk-connect' : 'gtk-convert';
49
# gtk-connect stock item was introduced in 2.6.0
50
my $DATA_DIR = find_data_dir();
51
my $ICON_FILE = File::Spec->catfile($DATA_DIR, qw/images zim64.png/);
53
my %opts = ( 'read_only' => 0 );
56
if (/^(--version|-v)$/) {
61
my $iter = $buffer->get_iter_at_mark($buffer->get_insert());
62
return parse_backspace($iter);
64
elsif ($val == $k_tab or $val == ord(' ')) { # Other WhiteSpace
65
my $buffer = $self->get_buffer;
66
my $iter = $buffer->get_iter_at_mark($buffer->get_insert());
67
my $string = ($val == $k_tab) ? "\t" : ' ';
68
return parse_word($iter, $string);
70
#else { printf "key %x pressed\n", $val } # perldoc -m Gtk2::Gdk::Keysyms
73
unless $opts{read_only};
75
Glib::Timeout->add(5000, \&save_page)
76
unless $opts{read_only}; # TODO also use this timer for maintaining an undo stack
91
what do we need to type
99
sandwhich might do that ?
106
{{foo.png}}{{bar.png}}
117
%% t/repository/Test/foo/bar.txt %%
124
%% t/repository/Test/foo.txt %%