X-Original-To: alpine-devel@lists.alpinelinux.org Delivered-To: alpine-devel@mail.alpinelinux.org Received: from psyche.piasta.pl (psyche.piasta.pl [83.175.144.5]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.alpinelinux.org (Postfix) with ESMTPS id A1DD5CCFD12 for ; Wed, 1 Jun 2011 10:24:29 +0000 (UTC) Received: from [10.0.20.128] (helo=desant) by psyche.piasta.pl with esmtpa (Pocztex KoBa) (envelope-from ) id 1QRibA-0003yd-Kh for alpine-devel@lists.alpinelinux.org; Wed, 01 Jun 2011 12:24:26 +0200 Date: Wed, 1 Jun 2011 12:24:35 +0200 From: Paul Onyschuk To: alpine-devel@lists.alpinelinux.org Subject: [alpine-devel] [apkbuild] mdocml - man page tool Message-Id: <20110601122435.20658e79.blink@bojary.koba.pl> X-Mailer: Sylpheed 3.0.3 (GTK+ 2.10.14; i686-pc-mingw32) X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Multipart=_Wed__1_Jun_2011_12_24_35_+0200_tEY/Zb1cP/Tc.pCd" X-Invalid-HELO: HELO is no FQDN (contains no dot) (See RFC2821 4.1.1.1) X-Sender-Verify: SUCCEEDED (sender exists & accepts mail) X-Date: 2011-06-01 12:24:26 This is a multi-part message in MIME format. --Multipart=_Wed__1_Jun_2011_12_24_35_+0200_tEY/Zb1cP/Tc.pCd Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Mdocml[1] is sane groff replacment for processing man/mdoc pages. It can be used like this: $ mandoc /usr/share/man/man1/some-man.1 | less It has also support for html output, so it can be piped to webrowser: $ mandoc -Thtml /usr/share/man/man1/some-man.1 | lynx -stdin I checked some manuals (python, openssl) and they works just fine. APKBUILD[2] is straightforward - please point out my mistakes ;) I don't know if it works under x86_64. Busybox man(1) command can be easy modified to use mdocml isteed of groff. After building Busybox with patch[3], simple commands can be used: $ man some-man This patch is optional, just to show how it can be done. Mdocml tool makewhatis(1) can be build also (subpackage?) to create apropos/whereis database. [1] http://mdocml.bsd.lv/ [2] import-mdocml-1.11.3.patch [3] add-support-for-mdocml-in-busybox-man-1.patch -- Paul Onyschuk --Multipart=_Wed__1_Jun_2011_12_24_35_+0200_tEY/Zb1cP/Tc.pCd Content-Type: application/octet-stream; name="add-support-for-mdocml-in-busybox-man-1.patch" Content-Disposition: attachment; filename="add-support-for-mdocml-in-busybox-man-1.patch" Content-Transfer-Encoding: base64 RnJvbSA3ZmU0YzQzNjc1MzQwMTg4ZWU5NTY4MzU1ZTFlOGQ0YTIzNWQ0NjYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIE9ueXNjaHVrIDxibGlua0Bib2phcnkua29iYS5wbD4K RGF0ZTogVHVlLCAzMSBNYXkgMjAxMSAxODozODowMyArMDAwMApTdWJqZWN0OiBbUEFUQ0hdIGFk ZCBzdXBwb3J0IGZvciBtZG9jbWwgaW4gYnVzeWJveCBtYW4oMSkKCi0tLQogbWFpbi9idXN5Ym94 L0FQS0JVSUxEICAgICAgICAgIHwgICAgNCArKystCiBtYWluL2J1c3lib3gvYnVzeWJveC1tYW4u cGF0Y2ggfCAgIDExICsrKysrKysrKysrCiBtYWluL2J1c3lib3gvYnVzeWJveGNvbmZpZyAgICAg fCAgICAyICstCiAzIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25z KC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgbWFpbi9idXN5Ym94L2J1c3lib3gtbWFuLnBhdGNoCgpk aWZmIC0tZ2l0IGEvbWFpbi9idXN5Ym94L0FQS0JVSUxEIGIvbWFpbi9idXN5Ym94L0FQS0JVSUxE CmluZGV4IDhlNWE2NTMuLjBmYTllMWQgMTAwNjQ0Ci0tLSBhL21haW4vYnVzeWJveC9BUEtCVUlM RAorKysgYi9tYWluL2J1c3lib3gvQVBLQlVJTEQKQEAgLTE4LDYgKzE4LDcgQEAgc291cmNlPSJo dHRwOi8vYnVzeWJveC5uZXQvZG93bmxvYWRzLyRwa2duYW1lLSRwa2d2ZXIudGFyLmJ6MgogCSRw a2duYW1lLTEuMTEuMS1iYi5wYXRjaAogCWJ1c3lib3gtdW5hbWUtaXMtbm90LWdudS5wYXRjaAog CWxvZ2ludXRpbHMtc2hhNTEyLnBhdGNoCisJYnVzeWJveC1tYW4ucGF0Y2gKIAlidXN5Ym94Y29u ZmlnIgogCiBfYnVpbGRkaXI9IiRzcmNkaXIiLyRwa2duYW1lLSRwa2d2ZXIKQEAgLTg4LDQgKzg5 LDUgQEAgYTgxZjJkN2QzYmRmMWEzNWFiNzdjNDQxNGE1MzBkMzggIGJ1c3lib3gtMS4xOC40LWh1 c2gucGF0Y2gKIDRjMGYzYjQ4NmVhYTA2NzQ5NjFiN2RkY2QwYzYwYTliICBidXN5Ym94LTEuMTEu MS1iYi5wYXRjaAogYjUzNzUyMTBmMTNmZDZlMWNhNjFhNTY1ZThmYWJkMzUgIGJ1c3lib3gtdW5h bWUtaXMtbm90LWdudS5wYXRjaAogZDIxZDcwZDU5MGU5ZTA0YmZjNjVlY2IyM2I5ZDE2MTcgIGxv Z2ludXRpbHMtc2hhNTEyLnBhdGNoCi03Mjk3ZTIxMmQ1ZTJhNTUxN2Y3NzBiNGFkMWY0NjU0ZCAg YnVzeWJveGNvbmZpZyIKKzY3OWQ1OGVjMzM0YzZhNWExNmU0MmNlMDVjYTc1NTZlICBidXN5Ym94 LW1hbi5wYXRjaAorMGM5NTNkM2I5Mzg5MDQzMmY4ZGQ2NzRhZGUwNTVlODMgIGJ1c3lib3hjb25m aWciCmRpZmYgLS1naXQgYS9tYWluL2J1c3lib3gvYnVzeWJveC1tYW4ucGF0Y2ggYi9tYWluL2J1 c3lib3gvYnVzeWJveC1tYW4ucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uMmZkODZhYQotLS0gL2Rldi9udWxsCisrKyBiL21haW4vYnVzeWJveC9idXN5Ym94LW1hbi5w YXRjaApAQCAtMCwwICsxLDExIEBACistLS0gYnVzeWJveC0xLjE4LjQvbWlzY3V0aWxzL21hbi5j CisrKysgYnVzeWJveC0xLjE4LjQvbWlzY3V0aWxzL21hbi5jCitAQCAtMTA5LDcgKzEwOSw3IEBA CisgCS8qICIyPiYxIiBpcyBhZGRlZCBzbyB0aGF0IG5yb2ZmIGVycm9ycyBhcmUgc2hvd24gaW4g cGFnZXIgdG9vLgorIAkgKiBPdGhlcndpc2UgaXQgbWF5IHNob3cganVzdCBlbXB0eSBzY3JlZW4g Ki8KKyAJY21kID0geGFzcHJpbnRmKAorLQkJbWFuID8gImd0YmwgfCBucm9mZiAtVGxhdGluMSAt bWFuZG9jIDI+JjEgfCAlcyIKKysJCW1hbiA/ICJtYW5kb2MgMj4mMSB8ICVzIgorIAkJICAgIDog IiVzIiwKKyAJCXBhZ2VyKTsKKyAJc3lzdGVtKGNtZCk7CmRpZmYgLS1naXQgYS9tYWluL2J1c3li b3gvYnVzeWJveGNvbmZpZyBiL21haW4vYnVzeWJveC9idXN5Ym94Y29uZmlnCmluZGV4IGEwNGFh NTMuLjgyNzIwNDEgMTAwNjQ0Ci0tLSBhL21haW4vYnVzeWJveC9idXN5Ym94Y29uZmlnCisrKyBi L21haW4vYnVzeWJveC9idXN5Ym94Y29uZmlnCkBAIC02NzcsNyArNjc3LDcgQEAgQ09ORklHX0ZF QVRVUkVfTEVTU19MSU5FTlVNUz15CiAjIENPTkZJR19NQUtFREVWUyBpcyBub3Qgc2V0CiAjIENP TkZJR19GRUFUVVJFX01BS0VERVZTX0xFQUYgaXMgbm90IHNldAogIyBDT05GSUdfRkVBVFVSRV9N QUtFREVWU19UQUJMRSBpcyBub3Qgc2V0Ci0jIENPTkZJR19NQU4gaXMgbm90IHNldAorQ09ORklH X01BTj15CiBDT05GSUdfTUlDUk9DT009eQogQ09ORklHX01PVU5UUE9JTlQ9eQogIyBDT05GSUdf TVQgaXMgbm90IHNldAotLSAKMS43LjQuNQoK --Multipart=_Wed__1_Jun_2011_12_24_35_+0200_tEY/Zb1cP/Tc.pCd Content-Type: application/octet-stream; name="import-mdocml-1.11.3.patch" Content-Disposition: attachment; filename="import-mdocml-1.11.3.patch" Content-Transfer-Encoding: base64 RnJvbSA1ZWI2YzZkMTQ0MGU5MGM4YTc0NmQxNTU0ZDQ0NThiYTUzMmQyNjJhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIE9ueXNjaHVrIDxibGlua0Bib2phcnkua29iYS5wbD4K RGF0ZTogVHVlLCAzMSBNYXkgMjAxMSAxOTowMDoxNCArMDAwMApTdWJqZWN0OiBbUEFUQ0hdIGlt cG9ydCBtZG9jbWwtMS4xMS4zCgotLS0KIG1haW4vbWRvY21sL0FQS0JVSUxEIHwgICAyNSArKysr KysrKysrKysrKysrKysrKysrKysrCiAxIGZpbGVzIGNoYW5nZWQsIDI1IGluc2VydGlvbnMoKyks IDAgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgbWFpbi9tZG9jbWwvQVBLQlVJTEQK CmRpZmYgLS1naXQgYS9tYWluL21kb2NtbC9BUEtCVUlMRCBiL21haW4vbWRvY21sL0FQS0JVSUxE Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZiZjU5N2EKLS0tIC9kZXYvbnVs bAorKysgYi9tYWluL21kb2NtbC9BUEtCVUlMRApAQCAtMCwwICsxLDI1IEBACisjIENvbnRyaWJ1 dG9yOgorIyBNYWludGFpbmVyOgorcGtnbmFtZT1tZG9jbWwKK3BrZ3Zlcj0xLjExLjMKK3BrZ3Jl bD0wCitwa2dkZXNjPSJNYW4gcGFnZSB0b29sIChtZG9jIG1hY3JvIGNvbXBpbGVyKSIKK3VybD0i aHR0cDovL21kb2NtbC5ic2QubHYiCithcmNoPSJhbGwiCitsaWNlbnNlPSJCU0QiCitzdWJwYWNr YWdlcz0iJHBrZ25hbWUtZGV2ICRwa2duYW1lLWRvYyIKK3NvdXJjZT0iJHVybC9zbmFwc2hvdHMv JHBrZ25hbWUtJHBrZ3Zlci50YXIuZ3oiCisKK19idWlsZGRpcj0iJHNyY2RpciIvJHBrZ25hbWUt JHBrZ3ZlcgorCitidWlsZCgpIHsKKwljZCAiJF9idWlsZGRpciIKKwltYWtlIFBSRUZJWD0vdXNy IE1BTkRJUj0vdXNyL3NoYXJlL21hbiB8fCByZXR1cm4gMQorfQorCitwYWNrYWdlKCkgeworCWNk ICIkX2J1aWxkZGlyIgorCW1ha2UgUFJFRklYPS91c3IgTUFORElSPS91c3Ivc2hhcmUvbWFuIERF U1RESVI9IiRwa2dkaXIiIGluc3RhbGwgfHwgcmV0dXJuIDEKK30KKworbWQ1c3Vtcz0iNDk3YjQy NzhhY2I5NmEwODdlZTZmOTJjNjRiNGE1NmQgIG1kb2NtbC0xLjExLjMudGFyLmd6IgotLSAKMS43 LjQuNQoK --Multipart=_Wed__1_Jun_2011_12_24_35_+0200_tEY/Zb1cP/Tc.pCd-- --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---