diff options
Diffstat (limited to 'perl-install')
-rw-r--r-- | perl-install/standalone/drakhelp | 35 |
1 files changed, 17 insertions, 18 deletions
diff --git a/perl-install/standalone/drakhelp b/perl-install/standalone/drakhelp index a3a0a9653..4f2eca29f 100644 --- a/perl-install/standalone/drakhelp +++ b/perl-install/standalone/drakhelp @@ -17,22 +17,21 @@ my $in = interactive->vnew; my $locale = lang::read('', $>); if (!member($locale->{lang}, qw(de en es fr it ru))) { $locale->{lang} = 'en' }; -my $path_to_help = "/usr/share/doc/mandrake/" . $locale->{lang} . "/"; - --d $path_to_help or $in->do_pkgs->install('mandrake_doc-drakxtools-' . $locale->{lang}); - -if ((my $wm = any::running_window_manager()) eq 'kwin') { - system("mdklaunchhelp " . $path_to_help . $ARGV[0] . "&"); -} elsif ($wm eq 'gnome-session') { - system("yelp ghelp://" . $path_to_help . $ARGV[0] . "&") -} else { - on_request_help($path_to_help . $ARGV[0]) -} - -sub on_request_help { - my ($link) = @_; - my $browser = $ENV{BROWSER} || find { -x "/usr/bin/$_" } qw(mozilla konqueror 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")); - standalone::explanations("Connection to help system at $link"); - system("$browser $link &"); -} +my $path2help = "/usr/share/doc/mandrake/" . $locale->{lang} . "/"; +-d $path2help or $in->do_pkgs->install('mandrake_doc-drakxtools-' . $locale->{lang}); + +my $path = $ARGV[0] =~ /^http|^www/ ? $ARGV[0] : $path2help . $ARGV[0]; + +my $wm = any::running_window_manager(); +my %launchhelp = ( + 'kwin' => sub { system("mdklaunchhelp " . $path . "&") }, + 'gnome-session' => sub { system("yelp ghelp://" . $path . "&") }, + 'other' => sub { my $browser = $ENV{BROWSER} || find { -x "/usr/bin/$_" } qw(mozilla konqueror 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")); + standalone::explanations("Connection to help system at $link"); + system("$browser " . $path . "&") + } + ); +member($wm, 'kwin', 'gnome-session') or $wm = 'other'; +eval { $launchhelp{$wm}->() }; + |