3ed98e8
--- lib/helpdef.gi.orig	2018-11-01 16:56:12.000000000 -0600
3ed98e8
+++ lib/helpdef.gi	2019-01-21 09:11:54.961416746 -0700
3ed98e8
@@ -402,6 +402,11 @@ HELP_BOOK_HANDLER.default.ReadSix := fun
Jerry James f93ce6d
       res.pdffile := ShallowCopy(fname);
Jerry James f93ce6d
       Add(res.formats, "pdf");
Jerry James f93ce6d
     fi;
Jerry James f93ce6d
+    fname{[Length(fname)-5..Length(fname)]} := "dvi.gz";
Jerry James f93ce6d
+    if IsExistingFile( fname ) = true then
Jerry James f93ce6d
+      res.dvifile := ShallowCopy(fname);
Jerry James f93ce6d
+      Add(res.formats, "dvi");
Jerry James f93ce6d
+    fi;
Jerry James f93ce6d
   fi;
3ed98e8
   res.directories := [ Directory(fname{[1..Length(fname)-10]}) ];
Jerry James f93ce6d
   return res;
3ed98e8
--- lib/helpview.gi.orig	2018-11-01 16:56:12.000000000 -0600
3ed98e8
+++ lib/helpview.gi	2019-01-21 09:11:54.985416307 -0700
3ed98e8
@@ -436,6 +436,27 @@ if IsHPCGAP then
3ed98e8
     MakeReadOnlyObj(HELP_VIEWER_INFO);
3ed98e8
 fi;
574c352
 
574c352
+# View HTML, DVI, or PDF files with xdg-open, which opens documents with the
574c352
+# user's preferred application.
574c352
+HELP_VIEWER_INFO.xdghtml := rec(
574c352
+type := "url",
574c352
+show := function(url)
574c352
+  Exec(Concatenation("xdg-open \"", url, "\""));
574c352
+end
574c352
+);
574c352
+HELP_VIEWER_INFO.xdgdvi := rec(
574c352
+type := "dvi",
574c352
+show := function(file)
574c352
+  Exec(Concatenation("xdg-open \"", file, "\""));
574c352
+end
574c352
+);
574c352
+HELP_VIEWER_INFO.xdgpdf := rec(
574c352
+type := "pdf",
574c352
+show := function(file)
574c352
+  Exec(Concatenation("xdg-open \"", file, "\""));
574c352
+end
574c352
+);
574c352
+
574c352
 #############################################################################
574c352
 ##
574c352
 #F  SetHelpViewer(<viewer>):  Set the viewer used for help