diff options
author | EuAndreh <eu@euandre.org> | 2021-06-23 20:44:40 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2021-06-23 21:01:24 -0300 |
commit | 412a3f36cb40dba18f4f0f70a6804882ac6c68eb (patch) | |
tree | 13555d96414c0f8289bc55582ebe16a4217af967 /doc/git-permalink.eo.1.in | |
parent | git mv doc/*.po po/ (diff) | |
download | git-permalink-412a3f36cb40dba18f4f0f70a6804882ac6c68eb.tar.gz git-permalink-412a3f36cb40dba18f4f0f70a6804882ac6c68eb.tar.xz |
aux/workflow/manpages.sh: Refactor how manpages and translations are made
I didn't like the previous version of aux/workflow/manpages.sh mainly for 2 reasons:
1. its CLI was terrible, ugly and fragile;
2. it mixed handling manpages and handling *translations*.
The first step was to split the translations part to a different file:
aux/workflow/l10n.sh. Now it has the base logic for running po4a, and
can apply it to manpages. It is useful for updating translated files
in other scenarios, such as catgets() message catalogs, markdown files,
etc.
After I used the venerable getopts to handle the command line
arguments, and give aux/workflow/manpages.sh a saner interface.
I disliked the fact that aux/workflow/manpages.sh still is being used
for the "install" and "uninstall" targets. Before this file, the
canonical workflow of "make && make install/uninstall" was 100%
embedded within the Makefile itself. But now the Makefile calls to an
external script for that. This isn't a real cost, other than how
obvious the behaviour is for someone looking at the Makefile for the
first time.
I still chose to do it anyway, because there was already too many
things in the Makefile itself, and it was getting worse with time. I
made sure to never cross the line of relying on an external tool for
the canonical "make && make install/uninstall", and even for
"make check". Those all work without requiring any extra tool outside
what POSIX defines, such as "sed", "awk", etc. Despite the cost of
adding this detour from the liner Makefile flow, I found it to be worth
it to call to the external script, as this script can now also be
shared across projects, and the customized Makefile be made simpler.
In other to remove the "-- $(do_subst)" horrendous hack, I chose to use
an inference rule for ".in" files, and remove the "$(do_subst)"
variable altogether. Now all the files that need to go through sed
should end in ".in", and the Makefile will take care of producing it.
The upside is that this model is much better integrater into make
itself.
Addresses #task-9ee2bbc8-295f-52b7-4104-483869bad017.
Diffstat (limited to 'doc/git-permalink.eo.1.in')
-rw-r--r-- | doc/git-permalink.eo.1.in | 206 |
1 files changed, 206 insertions, 0 deletions
diff --git a/doc/git-permalink.eo.1.in b/doc/git-permalink.eo.1.in new file mode 100644 index 0000000..0d799c0 --- /dev/null +++ b/doc/git-permalink.eo.1.in @@ -0,0 +1,206 @@ +.\"******************************************************************* +.\" +.\" This file was generated with po4a. Translate the source file. +.\" +.\"******************************************************************* +.TH GIT\-PERMALINK 1 @DATE@ "git\-permalink @VERSION@" "git\-permalink uzmanlibro" + + +.SH NOMO + +git\-permalink \- Git\-etendo por generi interretajn konstantajn ligojn +(permalink) de dosieroj en deponejo. + + +.SH RESUMO + +\fBgit\-permalink\fP [\fIEBLOJ\fP] \fIDOSIERO\fP [\fILINIONO\fP] + + +.SH PRISKRIBO + +\fBgit\-permalink\fP uzas Git por akiri a) la commit ĉe \fIHEAD\fP kaj b) la +\fIremote.origin.url\fP per \fBgit\-config\fP(1), kaj laŭvole c) URL ŝablono. Ĝi +tiam uzas tiujn por krei \fIkonstantan\fP URL ligon (permalink), kun la commit +ene por certigi ke ĝi estas konstantan, kaj laŭvole la linia numero +elektita. + +\fBgit\-permalink\fP tiam uzas \fBxdg\-open\fP(1) por malfermi la URL. + +.SH EBLOJ + +.TP +\fB\-p\fP +Nur presas la ligon per norma eligo (STDOUT), ne provas malfermi ĝin kun +\fBxdg\-open\fP(1) aŭ fari ion alian. Defaŭlte ĉi tio estas malŝaltita. + +.TP +\fB\-\-help\fP, \fB\-h\fP +Montras helpmesaĝon. + +.TP +\fB\-\-version\fP, \fB\-V\fP +Montras versian numeron. + + +.SH AGORDO + +.SS "SUBTENITAJ REMOTOJ" + +La nunaj subtenitaj remotoj estas: + +.RS +.IP \(bu +git.euandreh.xyz (kie git\-permalink estas gastiga =p) +.IP \(bu +sourcehut +.IP \(bu +git.kernel.org +.IP \(bu +savannah +.IP \(bu +notabug +.IP \(bu +codeberg +.IP \(bu +bitbucket +.IP \(bu +pagure +.IP \(bu +gitlab +.IP \(bu +github +.RE + +Ŝanĝoj por subteni pli da fontkodaj forĝejoj estas bonvenaj! + +Foliumu +.UR https://euandreh.xyz/git\-permalink/TODOs.html#task\-cebc5298\-17ad\-5c60\-dfa5\-a25b66433a3a +#task\-cebc5298\-17ad\-5c60\-dfa5\-a25b66433a3a +.UE +por diskuto kaj pli da +informoj. + +.SS SUPERREGOJ + +Se vi volas agordi la URL ŝablonon por projekto kun nesubtenita remoton, vi +povas uzi \fBgit\-config\fP(1). + +Estas du agordaj elektoj disponeblaj: + +.TP +\fBgit\-permalink.template\-file\-commit\fP +URL ŝablono, kie la nomo de la \fIdosiero\fP estas unue, kaj la \fIcommit\fP estas +due. cgit uzas ĉi tiun specon de URL, kiel en: + +.nf + https://git.euandreh.xyz/fallible/tree/%s?id=%s +.fi + +Laŭ ĉi tiu ekzemplo, la nomo de la \fIdosiero\fP estas unue kaj la \fIcommit\fP +estas fine post "id=". + +.TP +\fBgit\-permalink.template\-commit\-file\fP +URL ŝablono, kie la \fIcommit\fP estas unue, kaj la nomo de la \fIdosiero\fP estas +due. sourcehut uzas ĉi tiun specon de URL, kiel en: + +.nf + https://git.sr.ht/~sircmpwn/scdoc/tree/%s/item/%s +.fi + +Laŭ ĉi tiu ekzemplo, la \fIcommit\fP estas unue en la URL, kaj la nome de la +\fIdosiero\fP estas poste. + +.P +Se neniu el tiuj estas estas trovita por \fBgit\-config\fP(1) aŭ +\fBgit\-permalink\fP ne povas diveni la URL, ĝi eliras erare. + + +.SH EKZEMPLOJ + +Malfermas \fIsrc/fold.c\fP de projekto kiu origino direktiĝas al \fIsourcehut\fP: + +.nf + $ git permalink src/fold.c 125 + Malfermado de https://git.sr.ht/~sircmpwn/ctools/tree/fbf17d92f5ed1c38983f73df912f051ad0f9ef2d/item/src/fold.c#L125 +.fi + +Kreas ligon por linioj 59 ĝis 94 de \fInongnu/packages/clojure.scm\fP en +projekto gastigita ĉe \fIgitlab\fP, sed nur presu ĝin \fIsen\fP malfermi kun +\fBxdg\-open\fP(1): + +.nf + $ git permalink \-p nongnu/packages/clojure.scm 59\-94 + https://gitlab.com/nonguix/nonguix/\-/blob/c9d7f30bcbd3a6e3076e56a972c33963c73c4d58/nongnu/packages/clojure.scm#L59\-94 +.fi + +.P +Agordas URL superrego, kaj malfermas la dosieron \fIsrc/app_add.c\fP sen elekti +specifan linion: + +.nf + $ git config git\-permalink.template\-file\-commit 'https://git.alpinelinux.org/apk\-tools/tree/%s?id=%s' + $ git permalink src/app_add.c + Malfermado de https://git.alpinelinux.org/apk\-tools/tree/src/app_add.c?id=aeeb119fd8652c044cd5ceebce572b5c716914e3 +.fi + +.P +Malfermas \fI\-\-help\fP: + +.nf + $ git permalink \-\- \-\-help + Malfermado de https://git.euandreh.xyz/non\-existent\-repository/tree/\-\-help?id=470a9fa9329495cfcbef8cc5e32e3a38d3c3103e +.fi + +.SH ELIRKODOJ + +.TP +\fB0\fP +Bona ekzekuto. + +.TP +\fB1\fP +Nesubtenita remoto. Vidu la subtenitoj en SUBTENITAJ REMOTOJ, kaŭ kiel +aldoni ion en SUPERREGOJ. + +.TP +\fB2\fP +Malvalidaj argumentoj. + + +.SH "VIDU ANKAŬ" + +\fBgit\-config\fP(1) \fBxdg\-open\fP(1) + + +.SH AŬTOROJ + +.MT eu@euandre.org +EuAndreh +.ME +kaj la kontribuuloj. + + +.SH MISFUNKCIOJ + +.IP \(bu +Raportu misfunkcioj al la +.MT ~euandreh/public\-inbox@lists.sr.ht +dissendolisto +.ME . +Uzu la subjekton "\f(CR[git\-permalink] BUG aŭ TASK: +<priskribo>\fR". +.IP \(bu +Foliumu misfunkcioj +.UR https://euandreh.xyz/git\-permalink/TODOs.html +rete +.UE . +.IP \(bu +.UR https://euandreh.xyz/git\-permalink/ +Ĉefpaĝo +.UE . +.IP \(bu +.UR https://lists.sr.ht/~euandreh/public\-inbox?search=%5Bgit\-permalink%5D +Komentoj kaj diskutoj +.UE . |