Je lisais le code source R essayé de comprendre comment il fait paginier les pages d'aide (par exemple ? C code>). Je pense qu'il utilise moins code>, mais je n'ai pas pu trouver la fonction qui fait cela. Je suppose que je pourrais faire système (gettextf ("echo% s | moins", my_text)) code>, mais cela ne fonctionnera pas dans Windows. P>
3 Réponses :
Regardez à ? Page code> et ? File.show CODE>: page(runif(1e5))
Merci. Savez-vous s'il y a un moyen de faire du texte de page sans le sauver dans un fichier?
@nochocab: page code> Utilisez également un fichier temporaire. Je ne sais pas si / comment pourriez avoir une pagination sans fichier temporaire.
+1 à @sgibb, page () code> est vraiment utile. Il y a quelques cas où je veux cependant aller avec une solution plus compliquée. Vous pouvez également utiliser ? Évier dans conjonction avec ? File.show : sink(file="tempSink", type="output")
...
# various commands
...
sink()
file.show(file="tempSink", delete.file=TRUE, title="my output")
C'est exactement la même chose que page code> si vous utilisez méthode = "Imprimer" code> (consultez: page (page) code>). Bien sûr, vous devez inclure vos différentes commandes i> dans une fonction.
N'oubliez pas que avec page () code> Vous devez spécifier méthode = "Imprimer" code> pour obtenir le formatage lisible que vous avez vu à partir de l'invite: > capture.output(smry, file=pipe("less"))