1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
#!/usr/bin/perl
use strict;
use diagnostics;
use lib qw(/usr/lib/libDrakX);
use standalone; #- warning, standalone must be loaded very first, for 'explanations'
use interactive;
use common;
use any;
use ctxhelp;
use log;
sub usage() {
print STDERR N(" drakhelp 0.1
Copyright (C) 2003-2004 Mandrakesoft.
This is free software and may be redistributed under the terms of the GNU GPL.
Usage:
") . N(" --help - display this help
") . N(" --id <id_label> - load the html help page which refers to id_label
") . N(" --doc <link> - link to another web page ( for WM welcome frontend)
");
exit(0)
}
my ($opt, $idlabel) = @ARGV;
@ARGV == 2 && ($opt eq '--id' || $opt eq '--doc' || $opt eq '--help') or usage();
my $in = interactive->vnew;
my ($instpath, $ancpath, $package) = ctxhelp::path2help($opt, $idlabel);
-e $instpath or system("/usr/sbin/drakhelp_inst $package");
-e $instpath or $in->ask_warn(N("Mandrake Help Center"), N("%s cannot be displayed \n. No Help entry of this type\n", $instpath));
my $wm = any::running_window_manager();
my %launchhelp = (
'kwin' => sub { system("webclient-kde " . $ancpath . "&") },
'gnome-session' => sub { system("yelp ghelp://" . $ancpath . "&") },
'other' => sub { my $browser = $ENV{BROWSER} || find { -x "/usr/bin/$_" } qw(mozilla konqueror epiphany galeon) or $in->ask_warn('drakhelp', N("No browser is installed on your system, Please install one if you want to browse the help system"));
log::explanations("Loading help system : $ancpath");
system("$browser " . $ancpath . "&")
}
);
member($wm, 'kwin', 'gnome-session') or $wm = 'other';
-e $instpath and eval { $launchhelp{$wm}->() };
|