manpages para meu kindle?

9

Eu gostaria de ler man pages unix no meu kindle. Eu sei que posso apenas redirecionar a saída do homem para um arquivo e dar a ele uma extensão .txt. Mas existe uma maneira conveniente de convertê-los en masse em um formato com referências cruzadas adequadas?

Edit: Um pedido de desculpas pelo meu comportamento nesta questão. Eu disse que aceitaria o comentário se fosse enviado como resposta, e então as melhores respostas vieram e eu não cumpri minha promessa (Desculpe). Aceitei com entusiasmo a resposta de Caleb, que produz versões html das manpages; e algum tempo depois, quando tentei transferir os arquivos para o kindle, descobri que o kindle não exibia arquivos html; e mudei de aceitação sem explicação (Desculpe). O kindle parece exigir .txt ou .pdf (ou um dos vários formatos de eBook real ). Espero ter me explicado.

Além disso, eu não tenho um entendimento realista de quantas manpages existem com uma distribuição Debian Linux, e assim o comentário de Caleb sobre a seleção de uma coleção "Best Of" parece ser a melhor idéia. Mas eu realmente não tenho a inclinação de tentar fazer isso sozinho (o que é um pré-requisito para fazer perguntas nos sites do StackExchange), então não me sinto confortável perguntando como selecionar o "Melhor de", mesmo que seja realmente necessário praticamente para fazer isso.

    
por luser droog 29.12.2011 / 06:54

2 respostas

2

Para converter cada man page em pdf, fiz man -k . > temp . Eu criei um arquivo temporário e um script chamado file.sh :

#! /bin/bash
if [ $# -eq 1 ] ; then
    to_pdf=$(which ps2pdf)
    if [ -z "$to_pdf" ] ; then
    to_pdf=$(which pstopdf)
    fi
    name="$1"
    case "$to_pdf"  in
        *pstopdf) man -t "$name" | "$to_pdf" -i -o "$fname.pdf" ;;
        *ps2pdf)  man -t "$name" | "$to_pdf" - "$name.pdf" ;;
        *)        man -t "$name" > "$fname.ps"
    esac
    exit $?
fi
echo "Wrong number of parameters"
exit 1

Eu escrevi um arquivo python pythonfile.py

import os
f=open("temp","r")
for i in f:
    c="bash file.sh "+str(i)
    os.system(c)'

Então eu fiz

python pythonfile.py 

Isto irá criar um pdf para cada página man separadamente dentro do seu diretório de trabalho.

    
por 29.12.2011 / 11:01
7

Para despejar todas as seções de todas as páginas man do seu sistema em html, você pode tentar algo assim em um diretório em branco:

IFS=\.
find /usr/share/man/man* -type f -exec basename {} .gz \; |
    while read page section; do
        man -Thtml $section $page > $page.$section.html
    done
    
por 29.12.2011 / 10:29

Tags