Is there a common location of all of the man files, so I can view them in a different editor instead of the cli?

Or is there a $ man dump command that I can use to export each individual man file for what’s installed

Thanks, Forever noob

  • itsnotlupus@lemmy.world
    link
    fedilink
    arrow-up
    26
    ·
    edit-2
    11 months ago

    You can list every man page installed on your system with man -k . , or just apropos .
    But that’s a lot of random junk. If you only want “executable programs or shell commands”, only grab man pages in section 1 with a apropos -s 1 .

    You can get the path of a man page by using whereis -m pwd (replace pwd with your page name.)

    You can convert a man page to html with man2html (may require apt get man2html or whatever equivalent applies to your distro.)
    That tool adds a couple of useless lines at the beginning of each file, so we’ll want to pipe its output into a | tail +3 to get rid of them.

    Combine all of these together in a questionable incantation, and you might end up with something like this:

    mkdir -p tmp ; cd tmp
    apropos -s 1 . | cut -d' ' -f1 | while read page; do whereis -m "$page" ; done | while read id path rest; do man2html "$path" | tail +3 > "${id::-1}.html"; done
    

    List every command in section 1, extract the id only. For each one, get a file path. For each id and file path (ignore the rest), convert to html and save it as a file named $id.html.

    It might take a little while to run, but then you could run firefox . or whatever and browse the resulting mess.

    Or keep tweaking all of this until it’s just right for you.

  • saigot@lemmy.ca
    link
    fedilink
    arrow-up
    8
    ·
    edit-2
    11 months ago

    the command manpath will show the paths it searches. usually it’s /usr/share/man and /usr/man is a common location for them.

    • cbarrick@lemmy.world
      cake
      link
      fedilink
      arrow-up
      4
      ·
      11 months ago

      And the man path can be configured using the $MANPATH environment variable, just like $PATH.

      Oh, and if you leave a colon : at the end of $MANPATH, then it’s like appending the default search path (which is binary specific I suppose).