From bdc47861c632976c18c84c8f7c1ae07fc0fa2f93 Mon Sep 17 00:00:00 2001 From: Mateusz Piotrowski <0mp@FreeBSD.org> Date: Mon, 28 Sep 2020 20:16:00 +0000 Subject: [PATCH] Add textproc/wikiman Wikiman is an offline search engine for manual pages, Arch Wiki, Gentoo Wiki and other documentation. Wikiman provides an easy interface for browsing documentation without the need to be exact and connected to the internet. This is achieved by utilizing full text search for wikis, partial name and description matching for man pages, and fuzzy filtering for search results. WWW: https://github.com/filiparag/wikiman PR: 249134 Submitted by: Filip Parag --- textproc/Makefile | 1 + textproc/wikiman/Makefile | 67 ++++++++++++++++++++++++++++++++++++++ textproc/wikiman/distinfo | 3 ++ textproc/wikiman/pkg-descr | 9 +++++ textproc/wikiman/pkg-plist | 12 +++++++ 5 files changed, 92 insertions(+) create mode 100644 textproc/wikiman/Makefile create mode 100644 textproc/wikiman/distinfo create mode 100644 textproc/wikiman/pkg-descr create mode 100644 textproc/wikiman/pkg-plist diff --git a/textproc/Makefile b/textproc/Makefile index e95fbec4e081..5535d8b1c21d 100644 --- a/textproc/Makefile +++ b/textproc/Makefile @@ -1814,6 +1814,7 @@ SUBDIR += website SUBDIR += weka SUBDIR += wiggle + SUBDIR += wikiman SUBDIR += word2x SUBDIR += wordnet SUBDIR += words diff --git a/textproc/wikiman/Makefile b/textproc/wikiman/Makefile new file mode 100644 index 000000000000..d6ed4b31f967 --- /dev/null +++ b/textproc/wikiman/Makefile @@ -0,0 +1,67 @@ +# Created by: Filip Parag +# $FreeBSD$ + +PORTNAME= wikiman +DISTVERSION= 2.12.1 +CATEGORIES= textproc + +MAINTAINER= filip@parag.rs +COMMENT= Offline interactive documentation search + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +RUN_DEPENDS= findutils>4:misc/findutils \ + fzf>0.2:textproc/fzf \ + gawk>5:lang/gawk \ + ripgrep>12:textproc/ripgrep \ + w3m>0.5:www/w3m + +USE_GITHUB= yes +GH_ACCOUNT= filiparag + +NO_ARCH= yes + +OPTIONS_DEFINE= BASH CONFIG DOCS FISH WDGTS ZSH +OPTIONS_DEFAULT= BASH CONFIG DOCS FISH WDGTS ZSH +OPTIONS_SUB= yes +CONFIG_DESC= Global configuration file +WDGTS_DESC= Shell keybind widgets +BASH_PLIST_FILES= etc/bash_completion.d/wikiman-completion.bash +FISH_PLIST_FILES= share/fish/completions/wikiman.fish +ZSH_PLIST_FILES= share/zsh/site-functions/_wikiman + +do-install: + ${INSTALL_SCRIPT} ${WRKSRC}/wikiman.sh ${STAGEDIR}${PREFIX}/bin/wikiman + + @${MKDIR} ${STAGEDIR}${DATADIR}/sources + (cd ${WRKSRC}/sources && ${COPYTREE_BIN} . ${STAGEDIR}${DATADIR}/sources) + + ${INSTALL_MAN} ${WRKSRC}/wikiman.1.man ${STAGEDIR}${MANPREFIX}/share/man/man1/wikiman.1 + +do-install-BASH-on: + @${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d + ${INSTALL_DATA} ${WRKSRC}/completions/completions.bash \ + ${STAGEDIR}${PREFIX}/etc/bash_completion.d/wikiman-completion.bash + +do-install-CONFIG-on: + @${MKDIR} ${STAGEDIR}${PREFIX}/etc + ${INSTALL_DATA} ${WRKSRC}/wikiman.conf ${STAGEDIR}${PREFIX}/etc/wikiman.conf.sample + +do-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} + +do-install-FISH-on: + @${MKDIR} ${STAGEDIR}${PREFIX}/share/fish/completions + ${INSTALL_DATA} ${WRKSRC}/completions/completions.fish ${STAGEDIR}${PREFIX}/share/fish/completions/wikiman.fish + +do-install-WDGTS-on: + @${MKDIR} ${STAGEDIR}${DATADIR}/widgets + (cd ${WRKSRC}/widgets && ${COPYTREE_BIN} . ${STAGEDIR}${DATADIR}/widgets) + +do-install-ZSH-on: + @${MKDIR} ${STAGEDIR}${PREFIX}/share/zsh/site-functions + ${INSTALL_DATA} ${WRKSRC}/completions/completions.zsh ${STAGEDIR}${PREFIX}/share/zsh/site-functions/_wikiman + +.include diff --git a/textproc/wikiman/distinfo b/textproc/wikiman/distinfo new file mode 100644 index 000000000000..f897f1ca8967 --- /dev/null +++ b/textproc/wikiman/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1601299087 +SHA256 (filiparag-wikiman-2.12.1_GH0.tar.gz) = d22e6525c8702e36d94dabd596b59b4abe8ff45ed2a18c3f2c4fb0ca2c5814d5 +SIZE (filiparag-wikiman-2.12.1_GH0.tar.gz) = 1373487 diff --git a/textproc/wikiman/pkg-descr b/textproc/wikiman/pkg-descr new file mode 100644 index 000000000000..b86c04133451 --- /dev/null +++ b/textproc/wikiman/pkg-descr @@ -0,0 +1,9 @@ +Wikiman is an offline search engine for manual pages, Arch Wiki, Gentoo Wiki and +other documentation. + +Wikiman provides an easy interface for browsing documentation without the need +to be exact and connected to the internet. This is achieved by utilizing full +text search for wikis, partial name and description matching for man pages, +and fuzzy filtering for search results. + +WWW: https://github.com/filiparag/wikiman diff --git a/textproc/wikiman/pkg-plist b/textproc/wikiman/pkg-plist new file mode 100644 index 000000000000..868bcda41fe1 --- /dev/null +++ b/textproc/wikiman/pkg-plist @@ -0,0 +1,12 @@ +bin/wikiman +share/man/man1/wikiman.1.gz +%%DATADIR%%/sources/arch.sh +%%DATADIR%%/sources/fbsd.sh +%%DATADIR%%/sources/gentoo.sh +%%DATADIR%%/sources/man.sh +%%DATADIR%%/sources/tldr.sh +@sample %%CONFIG%%etc/wikiman.conf.sample +%%DOCS%%%%PORTDOCS%%%%DOCSDIR%%/README.md +%%WDGTS%%%%DATADIR%%/widgets/widget.bash +%%WDGTS%%%%DATADIR%%/widgets/widget.fish +%%WDGTS%%%%DATADIR%%/widgets/widget.zsh