guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

29/31: gnu: Add texlive-makecell.


From: guix-commits
Subject: 29/31: gnu: Add texlive-makecell.
Date: Wed, 16 Aug 2023 05:25:43 -0400 (EDT)

ngz pushed a commit to branch master
in repository guix.

commit 8f56ab79e808375430ecb5ef4839ade4b0df31c9
Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
AuthorDate: Wed Aug 16 10:04:32 2023 +0200

    gnu: Add texlive-makecell.
    
    * gnu/packages/tex.scm (texlive-makecell): New variable.
---
 gnu/packages/tex.scm | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 65 insertions(+)

diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index cf368b3dae..2d2b642fa6 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -16720,6 +16720,71 @@ process.  It also provides a library which can be used 
to create customized
 conversion tools.")
     (license license:lppl1.3+)))
 
+(define-public texlive-makecell
+  (package
+    (name "texlive-makecell")
+    (version (number->string %texlive-revision))
+    (source (texlive-origin
+             name version
+             (list "doc/latex/makecell/"
+                   "source/latex/makecell/"
+                   "tex/latex/makecell/")
+             (base32
+              "1n122230s49jizldn8ps1pfa5dsg8wmh5x8wla4y6rsgjcccqn4s")))
+    (outputs '("out" "doc"))
+    (build-system texlive-build-system)
+    (arguments
+     (list
+      #:tex-format "latex"
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'replace-obsolete-package
+            ;; "slashbox" is no longer provided in TeX Live.  It is superseded
+            ;; by `diagbox', which is backward compatible.
+            (lambda _
+              (substitute* "source/latex/makecell/makecell.dtx"
+                (("\\\\usepackage\\{slashbox\\}")
+                 "\\usepackage{diagbox}"))))
+          (add-after 'replace-obsolete-package 'load-float
+            ;; Loading `float' package prevents the "Unknown float option `H'"
+            ;; error.
+            (lambda _
+              (substitute* "source/latex/makecell/makecell.dtx"
+                (("usepackage\\{diagbox\\}.*" line)
+                 (string-append line "\\usepackage{float}\n")))))
+          (add-after 'load-float 'remove-hsize-reference
+            ;; Replace "\hsize" primitive with a dummy value to prevent
+            ;; a "missing number treated as zero" error.
+            (lambda _
+              (substitute* "source/latex/makecell/makecell.dtx"
+                (("\\\\ttabbox\\[\\\\hsize\\]") "\\ttabbox[10cm]")))))))
+    (native-inputs
+     (list (texlive-updmap.cfg
+            (list texlive-diagbox
+                  texlive-float
+                  texlive-hypdoc
+                  texlive-multirow
+                  texlive-pict2e))))
+    (home-page "https://ctan.org/pkg/makecell";)
+    (synopsis "Tabular column heads and multilined cells")
+    (description
+     "This package supports common layouts for tabular column heads in whole
+documents, based on one-column tabular environment.  In addition, it can
+create multi-lined tabular cells.
+
+The package also offers:
+@itemize
+@item a macro which changes the vertical space around all the cells in a 
@code{tabular}
+environment,
+@item macros for multirow cells, which use the facilities
+of the @code{multirow} package,
+@item macros to number rows in tables, or to skip cells;
+@item diagonally divided cells;
+@item horizontal lines in @code{tabular} environments with defined thickness.
+@end itemize")
+    (license license:lppl)))
+
+
 (define-public texlive-optexcount
   (package
     (name "texlive-optexcount")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]