diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-04-21 21:50:34 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-04-21 23:52:19 +0200 |
commit | cc753650eccf3dcbf074999c458e42df8d3c0827 (patch) | |
tree | d90d9ef51c624baa0b02c06eb04c2dc693fe4577 | |
parent | cb26edc8f62145d58fc55cc9b3a76128786b57b2 (diff) | |
download | patches-cc753650eccf3dcbf074999c458e42df8d3c0827.tar patches-cc753650eccf3dcbf074999c458e42df8d3c0827.tar.gz |
self: translate-texi-manuals: Don't hardcode "guix.texi".
* guix/self.scm (translate-texi-manuals)[build](translate-texi): Add
'prefix' and #:extras parameters and honor them. Adjust callers.
-rw-r--r-- | guix/self.scm | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/guix/self.scm b/guix/self.scm index 1040c27a6b..93dcb9bee3 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -339,35 +339,35 @@ TRANSLATIONS, an alist of msgid and msgstr." #f regexp1 content 'pre "ref{" msgstr "," 'post) 'pre "ref{" msgstr "}" 'post)))))) content translations)) - - (define (translate-texi po lang) - "Translate the manual for one language LANG using the PO file." + + (define* (translate-texi prefix po lang + #:key (extras '())) + "Translate the manual for one language LANG using the PO file. +PREFIX must be the prefix of the manual, 'guix' or 'guix-cookbook'. EXTRAS is +a list of extra files, such as '(\"contributing\")." (let ((translations (call-with-input-file po read-po-file))) - (translate-tmp-texi po "guix.texi" - (string-append "guix." lang ".texi.tmp")) - (translate-tmp-texi po "contributing.texi" - (string-append "contributing." lang ".texi.tmp")) - (let* ((texi-name (string-append "guix." lang ".texi")) - (tmp-name (string-append texi-name ".tmp"))) - (with-output-to-file texi-name - (lambda _ - (format #t "~a" - (translate-cross-references - (call-with-input-file tmp-name get-string-all) - translations))))) - (let* ((texi-name (string-append "contributing." lang ".texi")) - (tmp-name (string-append texi-name ".tmp"))) - (with-output-to-file texi-name - (lambda _ - (format #t "~a" - (translate-cross-references - (call-with-input-file tmp-name get-string-all) - translations))))))) + (for-each (lambda (file) + (translate-tmp-texi po (string-append file ".texi") + (string-append file "." lang + ".texi.tmp"))) + (cons prefix extras)) + + (for-each (lambda (file) + (let* ((texi (string-append file "." lang ".texi")) + (tmp (string-append texi ".tmp"))) + (with-output-to-file texi + (lambda () + (display + (translate-cross-references + (call-with-input-file tmp get-string-all) + translations)))))) + (cons prefix extras)))) (for-each (lambda (po) (match (reverse (string-split po #\.)) ((_ lang _ ...) - (translate-texi po lang)))) + (translate-texi "guix" po lang + #:extras '("contributing"))))) (find-files "." "^guix-manual\\.[a-z]{2}(_[A-Z]{2})?\\.po$")) (for-each |