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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
|
Author: Osamu Aoki <osamu@debian.org>
Description: Use Evince
--- a/gman.1x
+++ b/gman.1x
@@ -40,6 +40,12 @@
.sp
This requires GhostView (command "gv") to be available on your system.
.TP
+.B Evince
+gman will present man pages in an Evince window for you to view and print
+the man page.
+.sp
+This requires GNOME Evince (command "evince") to be available on your system.
+.TP
.B LocalBrowse
gman will launch a web browser window to show you the man page.
.sp
--- a/gman.c
+++ b/gman.c
@@ -91,6 +91,7 @@
context->set_default_value("show_mode","int",(void*)0); // 0 = xterm, 1 = ghostview
context->set_default_value("xterm_command","char*",(void*)"x-terminal-emulator");
context->set_default_value("gv_command","char*",(void*)"gv");
+ context->set_default_value("evince_command","char*",(void*)"evince");
context->set_default_value("browser_command","char*",(void*)"sensible-browser"); // kfm also works
context->set_default_value("cgi_host","char*",(void*)"localhost");
context->set_default_value("cgi_location","char*",(void*)"/cgi-bin/gman.pl");
--- a/mandata.c
+++ b/mandata.c
@@ -275,6 +275,26 @@
_exit(0);
}
break;
+ case 2:
+ sprintf(loc_name," ~/.gman.%s.ps ",get_display_name(buffer1));
+ sprintf(buffer,"man -t ");
+ len = strlen(buffer);
+ attach(buffer+len,man_path->GetPath(),file_name);
+ strcat(buffer," >> ");
+ strcat(buffer,loc_name);
+ strcat(buffer," ; ");
+ strcat(buffer,(char*)context->get_value("evince_command"));
+ strcat(buffer,loc_name);
+ strcat(buffer," ; rm ");
+ strcat(buffer,loc_name);
+ //g_warning(buffer);
+ if(!fork())
+ {
+ //printf(buffer);
+ system(buffer);
+ _exit(0);
+ }
+ break;
/*
case 2:
sprintf(loc_name," ~/.gman.%s.html ",get_display_name(buffer1));
@@ -304,7 +324,7 @@
}
break;
*/
- case 2:
+ case 3:
sprintf(loc_name," ~/.gman.%s.html ",get_display_name(buffer1));
//g_warning(loc_name);
strcpy(buffer,"/usr/lib/cgi-bin/gman.pl ");
@@ -329,7 +349,7 @@
_exit(0);
}
break;
- case 3:
+ case 4:
sprintf(buffer,(char*)context->get_value("browser_command"));
len = strlen(buffer);
strcat(buffer," \"http://");
--- a/menu.c
+++ b/menu.c
@@ -78,8 +78,9 @@
{"/_View", NULL, NULL, 0, "<Branch>"},
{"/View/x_Term", "<control>T", (void (*)())show_mode_callback, 0, "<RadioItem>"},
{"/View/_GhostView", "<control>G", (void (*)())show_mode_callback, 1, "/View/xTerm"},
- {"/View/_LocalBrowse", "<control>L", (void (*)())show_mode_callback, 2, "/View/xTerm"},
- {"/View/_NetBrowse", "<control>N", (void (*)())show_mode_callback, 3, "/View/xTerm"},
+ {"/View/_Evince", "<control>E", (void (*)())show_mode_callback, 2, "/View/xTerm"},
+ {"/View/_LocalBrowse", "<control>L", (void (*)())show_mode_callback, 3, "/View/xTerm"},
+ {"/View/_NetBrowse", "<control>N", (void (*)())show_mode_callback, 4, "/View/xTerm"},
{"/_Options", NULL, NULL, 0, "<Branch>"},
{"/Options/Status bar", NULL, (void (*)())status_bar_callback, 0, "<CheckItem>"},
{"/Options/sep1", NULL, NULL, 0, "<Separator>"},
@@ -164,8 +165,9 @@
searching_mode_buttons[1] = gtk_item_factory_get_widget(item_factory, "/Options/Key word search");
show_mode_buttons[0] = gtk_item_factory_get_widget(item_factory, "/View/xTerm");
show_mode_buttons[1] = gtk_item_factory_get_widget(item_factory, "/View/GhostView");
- show_mode_buttons[2] = gtk_item_factory_get_widget(item_factory, "/View/LocalBrowse");
- show_mode_buttons[3] = gtk_item_factory_get_widget(item_factory, "/View/NetBrowse");
+ show_mode_buttons[2] = gtk_item_factory_get_widget(item_factory, "/View/Evince");
+ show_mode_buttons[3] = gtk_item_factory_get_widget(item_factory, "/View/LocalBrowse");
+ show_mode_buttons[4] = gtk_item_factory_get_widget(item_factory, "/View/NetBrowse");
status_bar_button = gtk_item_factory_get_widget(item_factory, "/Options/Status bar");
// gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(section_buttons[4]),1);
updata_menu_buttons(0);
|