summaryrefslogtreecommitdiff
path: root/macros/latex/contrib
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2023-08-18 03:00:59 +0000
committerNorbert Preining <norbert@preining.info>2023-08-18 03:00:59 +0000
commit0585a72dae13da024145995031edb2a1cf21dece (patch)
treea1870789311942cc1b9ab311b6f446da76f657bc /macros/latex/contrib
parent5248edc6ec87b3acdb196687a1af5b6292c8510a (diff)
CTAN sync 202308180300
Diffstat (limited to 'macros/latex/contrib')
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/00readme.heb605
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/README.md26
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/heb209.dtx165
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/heb209.pdfbin152604 -> 0 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/hebinp.pdfbin199654 -> 0 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx249
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/hebrew.ins205
-rw-r--r--macros/latex/contrib/babel-contrib/hebrew/hebrew.pdfbin418939 -> 410253 bytes
-rw-r--r--[l---------]macros/latex/contrib/chronology/README16
-rw-r--r--macros/latex/contrib/chronology/README.md8
-rw-r--r--macros/latex/contrib/chronology/chronology.pdfbin0 -> 412402 bytes
-rw-r--r--macros/latex/contrib/chronology/chronology.sty38
-rw-r--r--macros/latex/contrib/chronology/example.pdfbin14227 -> 0 bytes
-rw-r--r--macros/latex/contrib/chronology/example.tex24
-rw-r--r--macros/latex/contrib/expex-glossonly/README.md9
-rw-r--r--macros/latex/contrib/expex-glossonly/expex-glossonly.pdfbin123056 -> 39048 bytes
-rw-r--r--macros/latex/contrib/expex-glossonly/expex-glossonly.sty88
-rw-r--r--macros/latex/contrib/expex-glossonly/expex-glossonly.tex141
-rw-r--r--macros/latex/contrib/expex-glossonly/testfiles/covington-expex.pdfbin0 -> 7800 bytes
-rw-r--r--macros/latex/contrib/expex-glossonly/testfiles/covington-expex.tex20
-rw-r--r--macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.pdfbin14835 -> 5519 bytes
-rw-r--r--macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.tex48
-rw-r--r--macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.pdfbin15454 -> 4720 bytes
-rw-r--r--macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.tex27
-rw-r--r--macros/latex/contrib/hebrew-fonts/README.md31
-rw-r--r--macros/latex/contrib/hebrew-fonts/hebfontenc.fdd (renamed from macros/latex/contrib/babel-contrib/hebrew/hebrew.fdd)506
-rw-r--r--macros/latex/contrib/hebrew-fonts/hebfontenc.pdfbin0 -> 259077 bytes
-rw-r--r--macros/latex/contrib/hebrew-fonts/hebinp.dtx (renamed from macros/latex/contrib/babel-contrib/hebrew/hebinp.dtx)103
-rw-r--r--macros/latex/contrib/hebrew-fonts/hebinp.pdfbin0 -> 216449 bytes
-rw-r--r--macros/latex/contrib/hebrew-fonts/hebrew-fonts.ins111
30 files changed, 861 insertions, 1559 deletions
diff --git a/macros/latex/contrib/babel-contrib/hebrew/00readme.heb b/macros/latex/contrib/babel-contrib/hebrew/00readme.heb
deleted file mode 100644
index b4ae253092..0000000000
--- a/macros/latex/contrib/babel-contrib/hebrew/00readme.heb
+++ /dev/null
@@ -1,605 +0,0 @@
-% \iffalse meta-comment
-%
-% Copyright 1989-2005 Johannes L. Braams and any individual authors
-% listed elsewhere in this file. All rights reserved.
-%
-% This file is part of the Babel system.
-% --------------------------------------
-%
-% It may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.3
-% of this license or (at your option) any later version.
-% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3 or later is part of all distributions of LaTeX
-% version 2003/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% The Current Maintainer of this work is Johannes Braams.
-%
-% The list of all files belonging to the Babel system is
-% given in the file `manifest.bbl. See also `legal.bbl' for additional
-% information.
-%
-% The list of derived (unpacked) files belonging to the distribution
-% and covered by LPPL is defined by the unpacking scripts (with
-% extension .ins) which are part of the distribution.
-% \fi
- Hebrew Package for babel system and LaTeX2e
-
-This new support package for Hebrew language is based on the old LaTeX 2.09
-hebrew.sty and is backward compatible with it. A new babel-based language
-switching interface is also supported.
-
-Bi-directional support uses TeX--XeT or newer e-TeX engine.
-
-The package is available on-line at http://www.dsg.technion.ac.il/heblatex/
-or at ftp://tochna.technion.ac.il/pub/staff/lavva/heblatex/. It consists of:
-
- 1. Hebrew package for babel/LaTeX 2e: heblatex.tar.gz or heblatex.zip.
- 2. Hebrew fonts (available also on CTAN or ftp.cc.huji.ac.il):
- hebfonts.tar.gz or hebfonts.zip.
- 3. Examples of hebrew documents: hebexmpl.tar.gz or hebexmpl.zip.
- 4. This README.html file, available also in plain text format as
- README.txt.
-
-The babel/LaTeX 2e edition of the hebrew package, as well as documentation
-(including this README file) was developed and will be supported by Boris
-Lavva, lavva@tx.technion.ac.il. Please direct your additions, modifications,
-bug fixes and comments to this address.
-
-------------------------------------------------------
-Table of contents
-
- Acknowledgement
- Copyright
- Installation
- Hebrew package usage
- Input code pages
- Font encodings
- Bi-directional sectioning commands
- Table of contents, List of figures, List of tables
- Hebrew calendar
- Document class for preparing Hebrew/English or English/Hebrew thesis
- Compatibility with LaTeX 2.09 style
- Future work
-
-------------------------------------------------------
-Acknowledgment
-
-The following people have contributed to Hebrew package in one way or
-another, knowingly or unknowingly. In alphabetical order:
-Irina Abramovici, Yaniv Bargury, Yael Dubinsky, Sergio Fogel, Dan Haran,
-Rama Porrat, Michail Rozman, Alon Ziv.
-
-Johannes Braams is the author of babel - a multilingual support for LaTeX.
-
-Tatiana Samoilov and Vitaly Surazhsky found a number of serious bugs in
-preliminary version of Hebrew package.
-
-A number of other people have contributed comments and information. Specific
-contributions are acknowledged within the documentation.
-
-I want to thank my wife, Vita, and son, Mishka, for their infinite love and
-patience.
-
-If you made a contribution and I haven't mentioned it, don't worry, it was
-an accident. I'm sorry. Just tell me and I will add you to the next version.
-
-------------------------------------------------------
-Copyright
-
-The copyright similar to other LaTeX 2e packages is added to prevent
-inconsistency in version numbers and wide-spread distribution of unsupported
-macro files (which was common with the old distributions).
-
-Changes, bug fixes and additions are always welcome, but they should be or
-distributed under other name, or incorporated in this package (by mailing
-me).
-
- --------------------------------------------------
-
- Copyright 1997-1998 Boris Lavva and any individual authors listed
- elsewhere in this file. All rights reserved.
-
- For further copyright information, and conditions for modification and
- distribution, see any other copyright notices in this file.
-
- This file is contributed to the Babel system, release 3.6.
-
- --------------------------------------------------
- This system is distributed in the hope that
- it will be useful, but WITHOUT ANY WARRANTY; without even the implied
- warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- For error reports concerning UNCHANGED versions of this file no more
- than one year old, see bugs.txt.
-
- Please do not request updates from me directly. Primary distribution
- will be through the CTAN archives.
-
- IMPORTANT COPYRIGHT NOTICE:
-
- You are NOT ALLOWED to distribute this file alone.
-
- You are allowed to distribute this file under the condition that it
- is distributed together with all the files listed in manifest.txt.
-
- If you receive only some of these files from someone, complain!
-
- Permission is granted to customize the declarations in this file to
- serve the needs of your installation, provided that you comply with the
- conditions in the file legal.txt.
-
- However, NO PERMISSION is granted to distribute a modified version of
- this file under its original name.
-
- MODIFICATION ADVICE:
- If you want to customize this file, it is best to make a copy of the
- source file(s) from which it was produced. Use a different name for your
- copy(ies) and modify the copy(ies); this will ensure that your modifications
- do not get overwritten when you install a new release of the standard system.
-
- You can then easily distribute your modifications by distributing the
- modified and renamed copy of the source file, together with a suitable
- .ins file, taking care to observe the conditions in legal.txt; this will
- ensure that other users can safely use your modifications.
-
-------------------------------------------------------
-Installation
-
- 1. Full LaTeX 2e distribution should be installed, including TeX--XeT or
- e-TeX. Known such distributions include:
- o teTeX 0.9 for UNIX with e-TeX
- (ftp://ftp.informatik.uni-hannover.de/home/te/private/.0.9/)
- o NTeX for UNIX with TeX--XeT
- (http://darfnix.mathematik.uni-stuttgart.de/pub/tex/ntex/)
- o Web2C for Windows 95 and NT (see at CTAN:systems/win32, for
- example, ftp://ftp.dante.de/tex-archive/systems/win32/)
- o TeX Live CD-ROMs distributed by TeX Users Group (TUG), see details
- at http://www.tug.org.
- 2. If e-TeX is installed, check if its format is available in extended
- mode, by running elatex or latex on some .tex file:
- -----------------------------------------------------------------------
-
- This is e-TeX, Version 3.14159-1.1 (Web2c 7.0)
- entering extended mode
- -----------------------------------------------------------------------
-
- The second line should be "entering extended mode".
- 3. If TeX--XeT is installed, it will use a LaTeX 2e format file, called
- laxet.fmt from the formats directory. This directory is commonly
- located at texmf/web2c or texmf/web2c/ini subdirectories. To produce
- format file, run initexxet program on the following laxet.ini file:
- -----------------------------------------------------------------------
-
- % Prevent dumping of LaTeX2e
- \let\xxdump=\dump
- \let\dump=\endinput
- % LaTeX2e format
- \input latex.ltx
- % Read latex2e.add
- \openin1=latex2e.add
- \ifeof1\closein1\message{latex2e.add not found}
- \else\closein1\input latex2e.add
- \fi
- % dump
- \let\dump=\xxdump
- \let\xxdump=\undefined
- \dump
- -----------------------------------------------------------------------
-
- Put the resulting file laxet.fmt to the formats directory and link (or
- copy) the virtexxet program as laxet.
- 4. Download the babel sources from the CTAN sites, directory
- macros/latex/packages/babel. This version of Hebrew package is tested
- with babel version 3.6.
- 5. Apply the following changes to the standard babel sources:
- o babel.dtx -- after the line 916 (greek) add:
- \DeclareOption{hebrew}{\input{rlbabel.def}\input{hebrew.ldf}}
- o bbcompat.dtx -- after the line 134 (welsh) add:
- %<+hebrew>\input rlbabel.def\input hebrew.ldf\relax
- o babel.ins -- after the line 346 (bahasa) add:
- \generate{\compatfile{hebrew}}
- 6. Download the hebrew package, fonts and examples from the above
- mentioned place.
- 7. Open heblatex to the babel sources directory.
- 8. Run latex babel.ins and then latex hebrew.ins.
- 9. Move all *.cls, *.sty, *.def, *.fd, *.ldf to the babel directory
- searchable by TeX (run MakeTeXls-R or similar program). Usually, babel
- is located at TEXROOT/share/texmf/tex/latex/packages/babel or
- TEXROOT/share/texmf/tex/generic/babel.
- 10. Install hebrew fonts from hebfonts as following:
- o Find your public font sources directory, it is usually:
- TEXROOT/share/texmf/fonts/source/public.
- o Unpack hebfonts file into the abovenamed public directory. It will
- create a new directory called hebrew inside public.
- o Find your special.map file - it is usually found at
- TEXROOT/share/texmf/fontname/special.map and add the following
- lines at the end of this file:
- @c Hebrew fonts
- jerus10 public hebrew
- deads10 public hebrew
- oldjaf10 public hebrew
- telav10 public hebrew
- crml10 public hebrew
- crmlsl10 public hebrew
- fr public hebrew
- frbx public hebrew
- frsl public hebrew
- hclassic public hebrew
- hcaption public hebrew
- redis7 public hebrew
- redis8 public hebrew
- redis9 public hebrew
- redis10 public hebrew
- redis12 public hebrew
- redis17 public hebrew
- redisb10 public hebrew
- rediss8 public hebrew
- rediss9 public hebrew
- rediss10 public hebrew
- rediss12 public hebrew
- shold10 public hebrew
- shscr10 public hebrew
- shstk10 public hebrew
- o Run REHASH from texconfig utility or program MakeTeXls-R or newer
- mktexlsr (if available) to build a new ls-R database in
- TEXROOT/share/texmf directory. You can add inserted file names
- manually to ls-R if you cannot find abovenamed programs.
- o Note that only 7-bit (old code) fonts are used by new Hebrew
- package.
- 11. You can check if your installation succeed by LaTeXing examples from
- hebexmpl file.
-
-Finally, you can prepare the LaTeX documentation of all components of the
-new Hebrew package by running:
-
- ------------------------------------
-
- latex hebrew.dtx
- makeindex -s bbind.ist hebrew.idx
- makeindex -s bbglo.ist -o hebrew.gls hebrew.glo
- latex hebrew.dtx
- latex hebrew.dtx
-
- ------------------------------------
-
-The same procedure can be applied on babel.dtx (or babel.drv) to create the
-babel documentation. Files bbind.ist and bbglo.ist are included with babel
-installation.
-
-------------------------------------------------------
-Hebrew package usage
-
-The usage is simple, for example:
-
-\documentclass[12pt,twoside]{book}
-\usepackage[hebrew,english,russian,danish,greek,...]{babel}
-
-LaTeX 2.09 style is also supported (in compatibility mode) to process
-existing documents, for example:
-
-\documentstyle[12pt,hebrew_newcode]{article}
-
-Languages can be switched by the following macros:
-
- 1. \sethebrew or \unsethebrew
- 2. \selectlanguage{hebrew}, \selectlanguage{english}, etc.
- 3. \begin{otherlanguage}{hebrew} ... \end{otherlanguage}, or any other
- language
- 4. \R{hebrew text} inside the latin text
- 5. \L{latin text} inside the hebrew text
-
-First three commands are equivalent: first one provides switching interface,
-compatible with LaTeX 2.09 hebrew style, while second and third ---
-babel-based interface.
-
-Last two commands are used for language and direction switching inside
-paragraph.
-
-hmbox and embox macros should be used for inserting Hebrew and English text
-(respectively) inside a mathematical formula.
-
-------------------------------------------------------
-Input code pages
-
-Hebrew package supports the following input code pages:
-
- 1. 7-bit hebrew encoding, also known as old code, defined by Israeli
- Standard 960 (si960)
- 2. IBM PC code page also known as pc code (cp862)
- 3. WINDOWS code page also known as new code (cp1255)
- 4. ISO 8859-8 Hebrew/Latin code page commonly used in UNIX, also known as
- new code (8859-8 also known as new code)
-
-The default input encoding can be set using option defined above in
-parentheses with inputenc style (but *before* babel), for example :
-
-\usepackage[cp1255]{inputenc}
-
-Input encoding can be changed also inside the document by the \inputencoding
-command, for example:
-
-\inputencoding{cp862}
-
-------------------------------------------------------
-Font encodings
-
-Various font encodings can be used, including, of course, Local Hebrew
-Encoding (LHE), with the aid of fontenc style (but *before* babel), for
-example:
-
-\usepackage[LHE,OT2,LCY,T1]{fontenc}
-
-Many useful font-switching commands are provided in hebfont package which
-can be included *after* the babel:
-
-\usepackage{hebfont}
-
-These commands are in format \text<font>{Hebrew text}, for example:
-\textoj{Text printed with Old Jaffa font}, \textredis{Text printed with
-redis font}.
-
-In addition, for backward compatibility in LaTeX 2.09 documents, the four
-old font-switching commands are supported:
-{\jm ...}, {\oj ...}, {\ds ...} and {\ta ...} for Jerusalem, Old Jaffa, Dead
-Sea and Tel-Aviv fonts respectively.
-
-The following TeX fonts are supported:
-
- * Jerusalem (used as default font)
- * Dead Sea (used as bold font)
- * Tel-Aviv (used as sans-serif or typewriter font)
- * Old Jaffa (used as italic or slanted font and for emphasize)
- * Hebrew classic normal and slanted (command \textclas)
- * Shalom Old Style (command \textshold)
- * Shalom Script (command \textshscr)
- * Shalom Stick (command \textshstk)
- * Carmel normal and slanted (command \textcrml)
- * Frank Ruehl normal, bold and slanted (command \textfr)
- * Redis normal, bold and slanted (command \textredis)
-
-------------------------------------------------------
-Bi-directional sectioning commands
-
-These commands inserts both Hebrew title to the RL table of contents or list
-of figures/tables, and English (or other LR language) title to the LR table
-of contents or list of figures/tables.
-
- 1. \bpart{hebrew}{english}
- 2. \bchapter{hebrew}{english}
- 3. \bsection{hebrew}{english}
- 4. \bsubsection{hebrew}{english}
- 5. \bsubsubsection{hebrew}{english}
- 6. \bcaption{hebrew}{english}
- 7. \bchapternn{hebrew}{english} - replaces \chapter*
- 8. \bsectionnn{hebrew}{english} - replaces \section*
-
-A number of additional bi-directional commands are defined in the
-hebtech.cls - thesis document class file, described below.
-
-------------------------------------------------------
-Table of contents, List of figures, List of tables
-
-Both Right-to-Left and Left-to-Right versions of the tables (toc, lof and
-lot) can be generated simultaneously. The LR files have the default
-extensions (.toc, .lof and .lot), while the RL files have reversed
-extensions (.cot, .fol and .tol). For example, to include RL tables at the
-beginning and LR tables before the end of the document:
-
- ------------------------------------
-
- \begin{document}
- \sethebrew
- \tableofcontents % Generates .cot file
- \listoffigures % Generates .fol file
- \listoftables % Generates .tol file
- ...
- \unsethebrew
- \tableofcontents % Generates .toc file
- \listoffigures % Generates .lof file
- \listoftables % Generates .lot file
- \end{document}
-
- ------------------------------------
-
-All 6 files are generated simultaneously in two latex passes !
-
-------------------------------------------------------
-Hebrew calendar
-
-Original Hebrew calendar style was created by Michail Rozman, and corrected
-by Rama Porrat, Michail Rozman and Dan Haran.
-
-This style was adjusted to LaTeX 2e by Boris Lavva, and provided in hebcal
-package. It can be included *after* the babel:
-
-\usepackage{hebcal}
-
-The following 2 user-level commands are provided with the package:
-
-\newcount\hd \newcount\hm \newcount\hy
-
-\hd=10 \hm=3 \hy=1992
-
-\HebrewDate{\hd}{\hm}{\hy}
-
-which converts the requested Gregorian date to Hebrew calendar date and
-prints it in Hebrew or English (depends on the current language) and:
-
-\HebrewToday or \hebrewtoday
-
-which prints the current Hebrew date (today) .
-
-------------------------------------------------------
-Document class for preparing Hebrew/English or English/Hebrew thesis
-
-A useful document class file hebtech for preparing M.Sc. and Ph.D. theses
-for the Technion (English/Hebrew and Hebrew/English) is included with this
-package too. I believe that it can be adjusted for the needs of other
-academic institutions in Israel too. This class automatically includes babel
-with hebrew and english option, hebfont and hebcal packages.
-
-The original version for LaTeX 2.09 and old code Hebrew was created in 1994
-by Irina Abramovici, at Taub Computer Center, Technion.
-
-How to use this document class?
-
-\documentclass[12pt]{hebtech}
-
-The following parameters should be included in thesis preamble (before
-\begin{document}):
-
- 1. Thesis title
- \title{hebrew}{english}
- 2. Thesis author
- \author{hebrew}{english}
- 3. Department name, e.g. Electrical Engineering Department
- \dept{hebrew}{english}
- 4. Domain of research, e.g. Food Processing
- \dom{hebrew}{english}
- 5. Main advisor
- \advisori{hebrew}{english}
- 6. Second advisor, if exists
- \advisorii{hebrew}{english}
- 7. Main sponsor
- \donori{hebrew}{english}
- 8. Additional sponsor, if exists
- \donorii{hebrew}{english}
- 9. Set thestype counter to:
- o 1 --- for a research thesis
- o 2 --- for a project thesis
- o 3 --- for a final paper
-
- \setcounter{thestype}{1}
- 10. Set grade counter to:
- o 1 --- for master of science
- o 2 --- for master
- o 3 --- for master of technology
- o 4 --- for doctor of science
-
- \setcounter{grade}{1}
- 11. Date is optional, if not included, today's date will be used. The
- Gregorian date entered will be printed and get converted the Jewish
- date.
- \date{28}{2}{1998}
- 12. Page style is optional too, if not included, plain will be used.
- \pagestyle{thesis}
-
-In the main document the following additional commands and environments can
-be used:
-
- 1. \makecover - creates Hebrew or English cover page, depending on the
- current language.
- 2. \maketitle - creates Hebrew or English title page, depending on the
- current language.
- 3. \begin{acknowledgment} ... \end{acknowledgment} - builds the
- acknowledgment page and adds inserted customized acknowledgment in
- Hebrew or English, depending on the current language.
- 4. \begin{dedication} ... \end{dedication} - builds the dedication page in
- Hebrew or English, depending on the current language.
- 5. \tableofcontents, \listoffigures, \listoftables - builds tables
- depending on the current language (all 6 tables can be used
- simultaneously).
- 6. \begin{abstract} ... \end{abstract} - builds the abstract pages in
- Hebrew or English, depending on the current language, adds contents
- line to the 2 tables of contents.
- 7. \frontmatter, \mainmatter, \backmatter - should be inserted at the
- beginning, before the main part, and at the ending of the thesis to
- change numbering and other style parameters.
- 8. \bibliography{...} - now adds "References" line to the 2 tables of
- contents: English and Hebrew.
-
-Some useful bi-directional commands, for figures and tables provided in this
-file too:
-
- 1. \bcaptionf{hebrew}{english} - similar to \bcaption but answers to
- thesis formatting requirements at the Technion, used for figures.
- 2. \bcaptionff{to RL lof}{to LR lof}{hebrew}{english} - a customized one
- for figures.
- 3. \bcaptiont{hebrew}{english} - similar to \bcaption but answers to
- thesis formatting requirements at the Technion, used for tables.
- 4. \bcaptiontt{to RL lot}{to LR lot}{hebrew}{english} - a customized one
- for tables.
-
-------------------------------------------------------
-Compatibility with LaTeX 2.09 style
-
-Generally, the new package is compatible with LaTeX 2.09 style file
-hebrew.sty, i.e. in most cases one can use the new package on old documents
-without any errors. Howver, it does not support Plain TeX, please use
-heb_macros.tex, or other TeX macro file for Hebrew instead.
-
-A few incompatibilities are described below:
-
- * The macros with Hebrew names are not provided, for example, macro
- \hadgesh when the command name "hadgesh" is given in Hebrew is not
- supported. The reason is that in new LaTeX 2e it is forbidden to use
- 8-bit macros, because all characters 128-255 became to be "active".
- However, the following English-coded equivalents are supported for
- backward compatibility with LaTeX 2.09 style and can be used even in
- the new documents:
- 1. \hebday (replaced "hayom").
- 2. \hebcopy (for use in letter style)
- 3. \hebincl (for use in letter style)
- 4. \hebpage (for use in letter style)
- 5. \hebto (for use in letter style)
- 6. \hadgesh (produces ``poor man's bold'' - heavy printout, it is
- advisable to use real bold fonts, e.g. DeadSea instead)
- 7. \piska (can be used only in compatibility mode)
- 8. \piskapiska (can be used only in compatibility mode)
- 9. \makafgadol (=\textendash)
- 10. \makafanak (=\textemdash)
- 11. \geresh (=\textquoteright)
- 12. \opengeresh (=\textquoteright)
- 13. \closegeresh (=\textquoteleft)
- 14. \openquote (=\textquotedblright)
- 15. \closequote (=\textquotedblleft)
- 16. \leftquotation (=\textquotedblright)
- 17. \rightquotation (=\textquotedblleft)
- 18. \undertext (=\underline, can be used only in compatibility mode)
- * In \documentstyle line the following 3 styles can be used in Hebrew
- documents:
- 1. \documentstyle[hebrew_oldcode,...]{...} in old 7-bit documents
- (instead of "hebrew"!).
- 2. \documentstyle[hebrew_newcode,...]{...} in 8-bit UNIX or Windows
- documents.
- 3. \documentstyle[hebrew_p,...]{...} in 8-bit DOS documents.
- * hebcal style should always be used (instead of older hebcal_p and
- hebcal_newcode).
- * Font names for the included 7-bit fonts were renamed (for the sake of
- multiplatform support) to lowercase names with no more than 8
- characters as following:
- o jerus10.mf - for Jerusalem (10pt)
- o deads10.mf - for Dead Sea (10pt)
- o telav10.mf - for TelAviv (10pt)
- o oldjaf10.mf - for Old Jaffa (10pt)
- o shold10.mf - for Shalom Old Style (10pt)
- o shscr10.mf - for Shalom Script (10pt)
- o shstk10.mf - for Shalom Stick (10pt)
- o Some other font-related files were renamed too (to lowercase and <
- 8 characters):
- + frank_ruehl.mf became frruehl.mf
- + redisfont.mf became redisfnt.mf
- + redisbx10.mf became redisb10.mf
- o All other font names remain unchanged
-
-------------------------------------------------------
-Future work
-
- 1. Visual enviroments i.e. tabular, tabbing and array have to be supported
- for hebrew. Now only left-to-right direction of lines is supported.
- 2. Update hebrew package for the future babel-3.7 release.
- 3. Hebrew points and dots ("nikud") support should be added, so it can be
- used in font-independent way.
- Currently, nikud can be used only on font-dependent way: only shalom
- and classic families of fonts provide nikud, and hebrew point glyphs
- are located in different places.
- 4. Machintosh Hebrew/English input code page support should be added.
- 5. Type1/TrueType Hebrew fonts should be supported.
-
-------------------------------------------------------
-Created by Boris Lavva, lavva@tx.technion.ac.il
-Last modified March 1, 1998
diff --git a/macros/latex/contrib/babel-contrib/hebrew/README.md b/macros/latex/contrib/babel-contrib/hebrew/README.md
new file mode 100644
index 0000000000..c81d658b83
--- /dev/null
+++ b/macros/latex/contrib/babel-contrib/hebrew/README.md
@@ -0,0 +1,26 @@
+babel-hebrew
+=============
+
+This is the babel style for the hebrew language.
+
+**Version**: 2.4
+
+**Copyright**: © 1997 -- 2005 Boris Lavva and Johannes Braams. © 2023 Udi Fogiel.
+
+Changes
+-------
+
+Fixes:
+* New default font and input encodings.
+* Fixing \underline.
+* Fixing clashes of \everypar with other packages.
+
+This work may be distributed and/or modified under the conditions of the
+[LaTeX Project Public License](http://www.latex-project.org/lppl.txt),
+either version 1.3 of this license or any later version.
+
+For questions, bug reports, or help, please contact udifoglle@gmail.com.
+
+
+
+
diff --git a/macros/latex/contrib/babel-contrib/hebrew/heb209.dtx b/macros/latex/contrib/babel-contrib/hebrew/heb209.dtx
deleted file mode 100644
index 69101ca766..0000000000
--- a/macros/latex/contrib/babel-contrib/hebrew/heb209.dtx
+++ /dev/null
@@ -1,165 +0,0 @@
-% \iffalse meta-comment
-%
-% Copyright 1989-2005 Johannes L. Braams and any individual authors
-% listed elsewhere in this file. All rights reserved.
-%
-% This file is part of the Babel system.
-% --------------------------------------
-%
-% It may be distributed and/or modified under the
-% conditions of the LaTeX Project Public License, either version 1.3
-% of this license or (at your option) any later version.
-% The latest version of this license is in
-% http://www.latex-project.org/lppl.txt
-% and version 1.3 or later is part of all distributions of LaTeX
-% version 2003/12/01 or later.
-%
-% This work has the LPPL maintenance status "maintained".
-%
-% The Current Maintainer of this work is Johannes Braams.
-%
-% The list of all files belonging to the Babel system is
-% given in the file `manifest.bbl. See also `legal.bbl' for additional
-% information.
-%
-% The list of derived (unpacked) files belonging to the distribution
-% and covered by LPPL is defined by the unpacking scripts (with
-% extension .ins) which are part of the distribution.
-% \fi
-% \CheckSum{8}
-%
-% \iffalse meta-comment
-%% File `heb209.dtx' - obsolete LaTeX 2.09 compatible style files.
-%% Copyright (C) 1997 -- 2004 Boris Lavva.
-%
-%% Babel package for LaTeX version 2e
-%% Copyright (C) 1989 -- 2004 by Johannes Braams,
-%% TeXniek
-%% All rights reserved.
-%\fi
-% \providecommand\dst{\textsc{docstrip}}
-% \providecommand\babel{\textsf{babel}}
-% \GetFileInfo{heb209.dtx}
-%
-% \changes{heb209~1.0a}{1998/01/06}{%
-% Initial version. Provides hebrew\_newcode, hebrew\_oldcode and
-% hebrew\_p style files for \LaTeX~2.09 (by Boris Lavva)}
-%
-% \section{Hebrew in \LaTeX~2.09 compatibility mode}\label{sec:heb209}
-%
-% |\documentstyle| command in the preamble of \LaTeX\ document
-% indicates that it is a \LaTeX~2.09 document, and should be processed
-% in \emph{compatibility mode}. In such documents, one of the following
-% three Hebrew style options can be included:
-% \begin{enumerate}
-% \item \texttt{hebrew\_newcode} indicates that document will use UNIX
-% ISO 8859-8 or Windows cp1255 input encoding, i.e.\ \emph{Alef}
-% letter will be represented as 224.
-% \item \texttt{hebrew\_p} indicates that document is encoded with IBM
-% PC cp862 encoding, i.e.\ \emph{Alef} letter will be represented as
-% 128.
-% \item \texttt{hebrew\_oldcode} indicates that document uses old 7-bit
-% encoding, as defined in Israeli Standard 960, i.e.\ \emph{Alef} is
-% character number 96.
-% \end{enumerate}
-% Note, that other hebrew-related styles, such as \texttt{hebcal} can
-% be included \emph{after} the abovenamed Hebrew style option, for
-% example:
-% \begin{quote}
-% |\documentstyle[12pt,hebrew_p,hebcal]{report}|.
-% \end{quote}
-%
-% Any Hebrew document which compiled under \LaTeX~2.09 should compile
-% under compatibility mode, unless it uses low-level commands such as
-% |\tenrm|.
-%
-% \subsection{The {\normalfont\dst{}} modules}
-%
-% The following modules are used in the implementation to direct
-% \dst{} in generating the external files:
-% \begin{center}
-% \begin{tabular}{ll}
-% newcode & produce \texttt{hebrew\_newcode.sty} \\
-% pccode & produce \texttt{hebrew\_p.sty} \\
-% oldcode & produce \texttt{hebrew\_oldcode.sty}
-% \end{tabular}
-% \end{center}
-%
-% \StopEventually{}
-%
-% \iffalse
-% \subsection{A driver for this document}
-%
-% The next bit of code contains the documentation driver file for
-% \TeX{}, i.e., the file that will produce the documentation you
-% are currently reading. It will be extracted from this file by
-% the \dst{} program.
-%
-% \begin{macrocode}
-%<*driver>
-\documentclass{ltxdoc}
-\title{Hebrew \LaTeX~2.09 compatibility style files}
-\author{Boris Lavva}
-\date{Printed \today}
-\begin{document}
- \maketitle
- \DocInput{heb209.dtx}
-\end{document}
-%</driver>
-% \end{macrocode}
-% \fi
-%
-% \subsection{Obsolete style files}
-%
-% For each of the Hebrew \LaTeX~2.09 Hebrew styles, we produce a
-% file which uses correct input encoding and calls \babel\ with
-% Hebrew and English language options.
-% This means that any styles which say |\input hebrew_newcode.sty|
-% or |\documentstyle[|\ldots|hebrew_newcode|\ldots|]{|\ldots|}|
-% should still work.
-%
-% \begin{macrocode}
-%<*newcode|pccode|oldcode>
-\NeedsTeXFormat{LaTeX2e}
-%</newcode|pccode|oldcode>
-% \end{macrocode}
-%
-% \begin{macrocode}
-%<*newcode>
-\@obsoletefile{hebrew.sty}{hebrew_newcode.sty}
-\RequirePackage[8859-8]{inputenc}
-%</newcode>
-%<*pccode>
-\@obsoletefile{hebrew.sty}{hebrew_p.sty}
-\RequirePackage[cp862]{inputenc}
-%</pccode>
-%<*oldcode>
-\@obsoletefile{hebrew.sty}{hebrew_oldcode.sty}
-\RequirePackage[si960]{inputenc}
-%</oldcode>
-% \end{macrocode}
-%
-% \begin{macrocode}
-%<*newcode|pccode|oldcode>
-\RequirePackage[english,hebrew]{babel}
-%</newcode|pccode|oldcode>
-% \end{macrocode}
-%
-% \Finale
-%%
-%% \CharacterTable
-%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
-%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
-%% Digits \0\1\2\3\4\5\6\7\8\9
-%% Exclamation \! Double quote \" Hash (number) \#
-%% Dollar \$ Percent \% Ampersand \&
-%% Acute accent \' Left paren \( Right paren \)
-%% Asterisk \* Plus \+ Comma \,
-%% Minus \- Point \. Solidus \/
-%% Colon \: Semicolon \; Less than \<
-%% Equals \= Greater than \> Question mark \?
-%% Commercial at \@ Left bracket \[ Backslash \\
-%% Right bracket \] Circumflex \^ Underscore \_
-%% Grave accent \` Left brace \{ Vertical bar \|
-%% Right brace \} Tilde \~}
-\endinput
diff --git a/macros/latex/contrib/babel-contrib/hebrew/heb209.pdf b/macros/latex/contrib/babel-contrib/hebrew/heb209.pdf
deleted file mode 100644
index e55684275c..0000000000
--- a/macros/latex/contrib/babel-contrib/hebrew/heb209.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/hebrew/hebinp.pdf b/macros/latex/contrib/babel-contrib/hebrew/hebinp.pdf
deleted file mode 100644
index 3fd35427f1..0000000000
--- a/macros/latex/contrib/babel-contrib/hebrew/hebinp.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx b/macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx
index 19f0fbf0fc..f97c57bcac 100644
--- a/macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx
+++ b/macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx
@@ -1,11 +1,5 @@
% \iffalse meta-comment
%
-% Copyright 1989-2005 Johannes L. Braams and any individual authors
-% listed elsewhere in this file. All rights reserved.
-%
-% This file is part of the Babel system.
-% --------------------------------------
-%
% It may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
@@ -16,26 +10,20 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% The Current Maintainer of this work is Johannes Braams.
-%
-% The list of all files belonging to the Babel system is
-% given in the file `manifest.bbl. See also `legal.bbl' for additional
-% information.
+% The Current Maintainer of this work is Udi Fogiel.
%
% The list of derived (unpacked) files belonging to the distribution
% and covered by LPPL is defined by the unpacking scripts (with
% extension .ins) which are part of the distribution.
% \fi
-% \CheckSum{3345}
%
% \iffalse meta-comment
-%% Hebrew language definition and additional packages.
-%% Copyright (C) 1997 -- 2005 Boris Lavva.
+% Hebrew language definition and additional packages.
+% Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
+%
+% Copyright (C) 2023 Udi Fogiel.
+% All rights reserved.
%
-%% Babel package for LaTeX version 2e
-%% Copyright (C) 1989 -- 2005 by Johannes Braams,
-%% TeXniek
-%% All rights reserved.
%<*calendar>
%% TeX & LaTeX macros for computing Hebrew date from Gregorian one
%% Copyright (C) 1991 by Michail Rozman, misha@iop.tartu.ew.su
@@ -48,17 +36,23 @@
%<hebrew>\ProvidesFile{hebrew.ldf}
%<rightleft>\ProvidesFile{rlbabel.def}
%<calendar>\ProvidesPackage{hebcal}
+%<newcode>\ProvidesPackage{hebrew_newcode}
+%<pccode>\ProvidesPackage{hebrew_p}
+%<oldcode>\ProvidesPackage{hebrew_oldcode}
%<*driver>
\ProvidesFile{hebrew.drv}
%</driver>
% \fi
% \ProvidesFile{hebrew.dtx}
- [2005/03/30 v2.3h %
+ [2023/08/16 v2.4 %
% \iffalse
%<hebrew> Hebrew language definition from the babel system
%<rightleft> Right-to-Left support from the babel system
%<calendar> Hebrew calendar
%<driver> Driver file for hebrew support
+%<newcode> Package for backwards compatibility
+%<pccode> Package for backwards compatibility
+%<oldcode> Package for backwards compatibility
% \fi
Hebrew language support from the babel system]
%
@@ -105,15 +99,12 @@
\CodelineIndex
\RecordChanges
\title{Hebrew language support from the \babel\ system}
-\author{Boris Lavva}
+\author{Boris Lavva\and Udi Fogiel}
\date{Printed \today}
\begin{document}
\maketitle
\tableofcontents
\DocInput{hebrew.dtx}
- \DocInput{hebinp.dtx}
- \DocInput{hebrew.fdd}
- \DocInput{heb209.dtx}
\clearpage
\def\filename{index}
\PrintIndex
@@ -230,6 +221,13 @@
% CAUTION: the changes to \pkg{hebcal.sty} make it dependent on
% \pkg{babel} and not useable as a stand-alone package. Is this a
% problem? (by Ron Artstein)}
+% \changes{hebrew~2.4}{2023/08/16}{
+% Moving hebinp and hebrew.fdd to a seperate package.
+% Changing the default input encoding to utf8 and
+% default font encoding to NHE8.
+% Merging heb209 and hebrew.dtx.
+% Fixed bugs in \everypar and
+% checked that \cs{l@chapter} is defined (Udi Fogiel)}
%
% \section{The Hebrew language}\label{sec:hebrew}
%
@@ -249,18 +247,16 @@
% \end{description}
%
% Additional Hebrew input and font encoding definition files that
-% should be included and used with \file{hebrew.ldf} are:
+% should be included and used with \file{hebrew.ldf} are
+% the files were moved to the hebrew-fonts package):
% \begin{description}
% \item[\file{hebinp.dtx}] provides Hebrew input encodings, such as
-% ISO 8859-8, MS Windows codepage 1255 or IBM PC codepage 862
-% (see Section~\ref{sec:hebinp} on page~\pageref{sec:hebinp}).
+% ISO 8859-8, MS Windows codepage 1255 or IBM PC codepage 862.
% \item[\file{hebrew.fdd}] contains Hebrew font encodings, related
% font definition files and \pkg{hebfont} package that
-% provides Hebrew font switching commands (see
-% Section~\ref{sec:hebfdd} on page~\pageref{sec:hebfdd} for
-% further details).
+% provides Hebrew font switching commands.
% \end{description}
-%
+%
% \LaTeX~2.09 compatibility files are included with
% \file{heb209.dtx} and gives possibility to compile existing
% \LaTeX~2.09 Hebrew documents with small (if any) changes (see
@@ -376,42 +372,18 @@
% \changes{hebrew-2.3h}{2004/02/20}{Make LHE the default encoding for
% compatibility reasons}
% \begin{macrocode}
-\providecommand{\HeblatexEncoding}{LHE}%
-\providecommand{\HeblatexEncodingFile}{lheenc}%
+% \changes{hebrew~2.4}{2023/08/16}{Make NHE8 the default font encoding}
+\providecommand{\HeblatexEncoding}{NHE8}%
+\providecommand{\HeblatexEncodingFile}{nhe8enc}%
\newcommand{\heblatex@set@encoding}[2]{
}
-\AtEndOfPackage{%
- \@ifpackageloaded{fontenc}{%
- \@ifl@aded{def}{%
- \HeblatexEncodingFile}{\def\hebrewencoding{\HeblatexEncoding}}{}%
- }{%
- \input{\HeblatexEncodingFile.def}%
- \def\hebrewencoding{\HeblatexEncoding}%
- }}
+\@ifl@aded{def}{\HeblatexEncodingFile}{}%
+{\input{\HeblatexEncodingFile.def}}
+\def\hebrewencoding{\HeblatexEncoding}
+\def\heb@NHEenc{NHE8}
% \end{macrocode}
% \end{macro}
-%
-% We also need to load inputenc package with one of the Hebrew
-% input encodings. By default, we set up the |8859-8| codepage.
-% If an user wants to use many input encodings in the same
-% document, for example, the MS Windows Hebrew codepage |cp1255|
-% and the standard IBM PC Russian codepage |cp866|, he/she has to
-% load the corresponding file \emph{before} the hebrew package
-% too. This may be done in the following way:
-% \begin{quote}
-% |\usepackage[cp1255,cp866]{inputenc}|\\
-% |\usepackage[hebrew,russian,english]{babel}|
-% \end{quote}
-%
-% An user can switch input encodings in the document using the
-% command |\inputencoding|, for example, to use the |cp1255|:
-% \begin{quote}
-% |\inputencoding{cp1255}|
-% \end{quote}
-% \begin{macrocode}
-\AtEndOfPackage{%
- \@ifpackageloaded{inputenc}{}{\RequirePackage[8859-8]{inputenc}}}
-% \end{macrocode}
+% \changes{hebrew~2.4}{2023/08/16}{Assuming utf8 as default input encoding.}
%
% The next step consists of defining commands to switch to (and
% from) the Hebrew language.
@@ -803,6 +775,17 @@
% |\p@enumiii|; instead, we let the language environment determine an
% explicit definition.
% \begin{macrocode}
+\ifx\heb@NHEenc\HeblatexEncoding
+\def\label#1{\@bsphack
+ \if@rl
+ \protected@write\@auxout{}%
+ {\string\newlabel{#1}{{\beginR\@currentlabel\endR}{\thepage}}}%
+ \else
+ \protected@write\@auxout{}%
+ {\string\newlabel{#1}{{\beginL\@currentlabel\endL}{\thepage}}}%
+ \fi
+ \@esphack}
+\else
\def\label#1{\@bsphack
\if@rl
\def\p@enumiii{\p@enumii)\theenumii(}%
@@ -814,6 +797,7 @@
{\string\newlabel{#1}{{\beginL\@currentlabel\endL}{\thepage}}}%
\fi
\@esphack}
+\fi
% \end{macrocode}
% NOTE: it appears that the definition of |\label| is
% language-independent and thus belongs in \pkg{rlbabel.def}, but
@@ -1384,14 +1368,17 @@
% \end{macro}
%
% Take care of Right-to-Left indentation in every paragraph.
-% Originally, \cs{noindent} was redefined for right-to-left by
-% Yaniv Bargury, then the implementation was rewritten by Alon Ziv
-% using an idea by Chris Rowley: \cs{noindent} now works
-% unmodified.
+% The old approach had conflicts with amsthm, so I addapted
+% the code from the bidi package by Vafa Khalighi.
+%
+%
% \begin{macrocode}
-\def\rl@everypar{\if@rl{\setbox\z@\lastbox\beginR\usebox\z@}\fi}
-\let\o@everypar=\everypar
-\def\everypar#1{\o@everypar{\rl@everypar#1}}
+\def\heb@rl@everypar{{\setbox\z@\lastbox\if@rl\beginR\else\beginL\fi\ifvoid\z@\else\usebox\z@\fi}}
+\let\heb@o@everypar=\everypar
+\newtoks\heb@n@everypar
+\heb@n@everypar\expandafter{\the\heb@o@everypar}
+\heb@o@everypar{\heb@rl@everypar\the\heb@n@everypar}
+\let\everypar=\heb@n@everypar
% \end{macrocode}
%
% \begin{macro}{\hmbox}
@@ -1413,8 +1400,12 @@
% bracket. Brackets can be square brackets, braces, or
% parentheses.
% \begin{macrocode}
+\ifx\heb@NHEenc\HeblatexEncoding
+\def\@brackets#1#2#3{#1#2#3}
+\else
\def\@brackets#1#2#3{\protect\if@rl #3#2#1\protect\else
#1#2#3\protect\fi}
+\fi
% \end{macrocode}
% \end{macro}
%
@@ -1880,6 +1871,7 @@
\@ifclassloaded{letter}{}{%
\@ifclassloaded{slides}{}{%
\@ifclassloaded{article}{}{%
+ \@ifundefined{l@chapter}{}{%
\renewcommand*\l@chapter[2]{%
\ifnum \c@tocdepth >\m@ne
\addpenalty{-\@highpenalty}%
@@ -1894,7 +1886,7 @@
#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss#2}\par
\penalty\@highpenalty
\endgroup
- \fi}}}}
+ \fi}}}}}
% \end{macrocode}
% \end{macro}
%
@@ -2285,8 +2277,13 @@
% We should explicitly use \cs{L} and \cs{R} commands in
% \cs{underline}d text.
% \begin{macrocode}
-\let\@@@underline=\underline
-\def\underline#1{\@@@underline{\if@rl\R{#1}\else #1\fi}}
+\DeclareRobustCommand\underline[1]{%
+ \relax
+ \ifmmode\@@underline{#1}%
+ \else
+\if@rl $\@@underline{\hbox{\beginR#1\endR}}\m@th$\relax
+\else
+$\@@underline{\hbox{#1}}\m@th$\relax\fi\fi}
% \end{macrocode}
% \end{macro}
%
@@ -3308,6 +3305,114 @@
% \end{macrocode}
% \end{macro}
%
+% \providecommand\dst{\textsc{docstrip}}
+% \providecommand\babel{\textsf{babel}}
+% \GetFileInfo{heb209.dtx}
+%
+% \changes{heb209~1.0a}{1998/01/06}{%
+% Initial version. Provides hebrew\_newcode, hebrew\_oldcode and
+% hebrew\_p style files for \LaTeX~2.09 (by Boris Lavva)}
+%
+% \section{Hebrew in \LaTeX~2.09 compatibility mode}\label{sec:heb209}
+%
+% |\documentstyle| command in the preamble of \LaTeX\ document
+% indicates that it is a \LaTeX~2.09 document, and should be processed
+% in \emph{compatibility mode}. In such documents, one of the following
+% three Hebrew style options can be included:
+% \begin{enumerate}
+% \item \texttt{hebrew\_newcode} indicates that document will use UNIX
+% ISO 8859-8 or Windows cp1255 input encoding, i.e.\ \emph{Alef}
+% letter will be represented as 224.
+% \item \texttt{hebrew\_p} indicates that document is encoded with IBM
+% PC cp862 encoding, i.e.\ \emph{Alef} letter will be represented as
+% 128.
+% \item \texttt{hebrew\_oldcode} indicates that document uses old 7-bit
+% encoding, as defined in Israeli Standard 960, i.e.\ \emph{Alef} is
+% character number 96.
+% \end{enumerate}
+% Note, that other hebrew-related styles, such as \texttt{hebcal} can
+% be included \emph{after} the abovenamed Hebrew style option, for
+% example:
+% \begin{quote}
+% |\documentstyle[12pt,hebrew_p,hebcal]{report}|.
+% \end{quote}
+%
+% Any Hebrew document which compiled under \LaTeX~2.09 should compile
+% under compatibility mode, unless it uses low-level commands such as
+% |\tenrm|.
+%
+% \subsection{The {\normalfont\dst{}} modules}
+%
+% The following modules are used in the implementation to direct
+% \dst{} in generating the external files:
+% \begin{center}
+% \begin{tabular}{ll}
+% newcode & produce \texttt{hebrew\_newcode.sty} \\
+% pccode & produce \texttt{hebrew\_p.sty} \\
+% oldcode & produce \texttt{hebrew\_oldcode.sty}
+% \end{tabular}
+% \end{center}
+%
+% \StopEventually{}
+%
+% \iffalse
+% \subsection{A driver for this document}
+%
+% The next bit of code contains the documentation driver file for
+% \TeX{}, i.e., the file that will produce the documentation you
+% are currently reading. It will be extracted from this file by
+% the \dst{} program.
+%
+% \begin{macrocode}
+%<*driver>
+\documentclass{ltxdoc}
+\title{Hebrew \LaTeX~2.09 compatibility style files}
+\author{Boris Lavva}
+\date{Printed \today}
+\begin{document}
+ \maketitle
+ \DocInput{heb209.dtx}
+\end{document}
+%</driver>
+% \end{macrocode}
+% \fi
+%
+% \subsection{Obsolete style files}
+%
+% For each of the Hebrew \LaTeX~2.09 Hebrew styles, we produce a
+% file which uses correct input encoding and calls \babel\ with
+% Hebrew and English language options.
+% This means that any styles which say |\input hebrew_newcode.sty|
+% or |\documentstyle[|\ldots|hebrew_newcode|\ldots|]{|\ldots|}|
+% should still work.
+%
+% \begin{macrocode}
+%<*newcode|pccode|oldcode>
+\NeedsTeXFormat{LaTeX2e}
+%</newcode|pccode|oldcode>
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<*newcode>
+\@obsoletefile{hebrew.sty}{hebrew_newcode.sty}
+\RequirePackage[8859-8]{inputenc}
+%</newcode>
+%<*pccode>
+\@obsoletefile{hebrew.sty}{hebrew_p.sty}
+\RequirePackage[cp862]{inputenc}
+%</pccode>
+%<*oldcode>
+\@obsoletefile{hebrew.sty}{hebrew_oldcode.sty}
+\RequirePackage[si960]{inputenc}
+%</oldcode>
+% \end{macrocode}
+%
+% \begin{macrocode}
+%<*newcode|pccode|oldcode>
+\RequirePackage[english,hebrew]{babel}
+%</newcode|pccode|oldcode>
+% \end{macrocode}
+%
% \Finale
%%
%% \CharacterTable
diff --git a/macros/latex/contrib/babel-contrib/hebrew/hebrew.ins b/macros/latex/contrib/babel-contrib/hebrew/hebrew.ins
index 80f35a41ec..b90547761a 100644
--- a/macros/latex/contrib/babel-contrib/hebrew/hebrew.ins
+++ b/macros/latex/contrib/babel-contrib/hebrew/hebrew.ins
@@ -3,199 +3,96 @@
%% driver files from the doc files in this package when run through
%% LaTeX or TeX.
%%
-%% Copyright 1989-2005 Johannes L. Braams and any individual authors
-%% listed elsewhere in this file. All rights reserved.
-%%
-%% This file is part of the Babel system.
-%% --------------------------------------
-%%
-%% It may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
-%% of this license or (at your option) any later version.
-%% The latest version of this license is in
+%% Hebrew language definition and additional packages.
+%% Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
+%%
+%% Copyright (C) 2023 Udi Fogiel.
+%% All rights reserved.
+%%
+%% It may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3 of this license or
+%% (at your option) any later version. The latest version of this
+%% license is in
%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2003/12/01 or later.
-%%
+%% and version 1.3 or later is part of all distributions of LaTeX version
+%% 2003/12/01 or later.
+%%
%% This work has the LPPL maintenance status "maintained".
-%%
-%% The Current Maintainer of this work is Johannes Braams.
-%%
-%% The list of all files belonging to the LaTeX base distribution is
-%% given in the file `manifest.bbl. See also `legal.bbl' for additional
-%% information.
-%%
+%%
+%% The Current Maintainer of this work is Udi Fogiel
+%%
%% The list of derived (unpacked) files belonging to the distribution
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
%% --------------- start of docstrip commands ------------------
%%
-%%
-%% Copyright (C) 1997 -- 1998 Boris Lavva.
-%% Copyright (C) 1989 -- 2004 by Johannes Braams,
-%% TeXniek
-%% All rights reserved.
-%%
-%% This file is contributed to the `babel' system.
-%%
-%% You are allowed to distribute this file together with all files
-%% mentioned in manifest.bbl.
-%%
-%% You are not allowed to modify its contents.
-%%
-\def\filedate{2004/02/20}
\def\batchfile{hebrew.ins}
-\input docstrip
+\def\filedate{2023/08/16}
+\input docstrip.tex
{\ifx\generate\undefined
-\Msg{**********************************************}
-\Msg{*}
-\Msg{* This installation requires docstrip}
-\Msg{* version 2.3c or later.}
-\Msg{*}
-\Msg{* An older version of docstrip has been input}
-\Msg{*}
-\Msg{**********************************************}
-\errhelp{Move or rename old docstrip.tex.}
-\errmessage{Old docstrip in input path}
-\batchmode
-\csname @@end\endcsname
+ \Msg{**********************************************}
+ \Msg{*}
+ \Msg{* This installation requires docstrip}
+ \Msg{* version 2.3c or later.}
+ \Msg{*}
+ \Msg{* An older version of docstrip has been input}
+ \Msg{*}
+ \Msg{**********************************************}
+ \errhelp{Move or rename old docstrip.tex.}
+ \errmessage{Old docstrip in input path}
+ \batchmode
+ \csname @@end\endcsname
\fi}
\declarepreamble\mainpreamble
This is a generated file.
-Copyright 1997-2004 Boris Lavva and any individual authors
-listed elsewhere in this file. All rights reserved.
-
-This is a generated file.
-
-Copyright 1989-2005 Johannes L. Braams and any individual authors
-listed elsewhere in this file. All rights reserved.
+Hebrew language definition and additional packages.
+Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
-This file was generated from file(s) of the Babel system.
----------------------------------------------------------
+Copyright (C) 2023 Udi Fogiel.
+ All rights reserved.
-It may be distributed and/or modified under the
-conditions of the LaTeX Project Public License, either version 1.3
-of this license or (at your option) any later version.
-The latest version of this license is in
- http://www.latex-project.org/lppl.txt
-and version 1.3 or later is part of all distributions of LaTeX
-version 2003/12/01 or later.
+It may be distributed and/or modified under the conditions of the
+LaTeX Project Public License, either version 1.3 of this license or
+(at your option) any later version. The latest version of this
+license is in
+ http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of LaTeX version
+2003/12/01 or later.
This work has the LPPL maintenance status "maintained".
-The Current Maintainer of this work is Johannes Braams.
-
-This file may only be distributed together with a copy of the Babel
-system. You may however distribute the Babel system without
-such generated files.
-
-The list of all files belonging to the Babel distribution is
-given in the file `manifest.bbl'. See also `legal.bbl for additional
-information.
+The Current Maintainer of this work is Udi Fogiel
The list of derived (unpacked) files belonging to the distribution
and covered by LPPL is defined by the unpacking scripts (with
extension .ins) which are part of the distribution.
-\endpreamble
-
-\declarepreamble\fdpreamble
-
-This is a generated file.
-
-Copyright 1997-2004 Boris Lavva and any individual authors
-listed elsewhere in this file. All rights reserved.
-
-This is a generated file.
-
-Copyright 1989-2005 Johannes L. Braams and any individual authors
-listed elsewhere in this file. All rights reserved.
-
-This file was generated from file(s) of the Babel system.
----------------------------------------------------------
-
-It may be distributed and/or modified under the
-conditions of the LaTeX Project Public License, either version 1.3
-of this license or (at your option) any later version.
-The latest version of this license is in
- http://www.latex-project.org/lppl.txt
-and version 1.3 or later is part of all distributions of LaTeX
-version 2003/12/01 or later.
-
-This work has the LPPL maintenance status "maintained".
-
-The Current Maintainer of this work is Johannes Braams.
-
-This file may only be distributed together with a copy of the Babel
-system. You may however distribute the Babel system without
-such generated files.
-
-The list of all files belonging to the Babel distribution is
-given in the file `manifest.bbl'. See also `legal.bbl for additional
-information.
-
-In particular, permission is granted to customize the declarations in
-this file to serve the needs of your installation.
-
-However, NO PERMISSION is granted to distribute a modified version
-of this file under its original name.
\endpreamble
+
\keepsilent
-\usedir{tex/generic/babel}
-
-\Msg{*** Generating hebrew font encoding files ***}
-\usepreamble\fdpreamble
-\generate{\file{lheenc.def}{\from{hebrew.fdd}{LHEenc}}
- \file{lhecmr.fd}{\from{hebrew.fdd}{LHEcmr,nowarn}}
- \file{lhecmss.fd}{\from{hebrew.fdd}{LHEcmss,nowarn}}
- \file{lhecmtt.fd}{\from{hebrew.fdd}{LHEcmtt,nowarn}}
- \file{lheclas.fd}{\from{hebrew.fdd}{LHEclas,nowarn}}
- \file{he8enc.def}{\from{hebrew.fdd}{HE8enc}}
- \file{he8cmr.fd}{\from{hebrew.fdd}{HE8cmr,nowarn}}
- \file{he8cmss.fd}{\from{hebrew.fdd}{HE8cmss,nowarn}}
- \file{he8cmtt.fd}{\from{hebrew.fdd}{HE8cmtt,nowarn}}
- \file{he8aharoni.fd}{\from{hebrew.fdd}{HE8aharoni,nowarn}}
- \file{he8david.fd}{\from{hebrew.fdd}{HE8david,nowarn}}
- \file{he8drugulin.fd}{\from{hebrew.fdd}{HE8drugulin,nowarn}}
- \file{he8frankruehl.fd}{\from{hebrew.fdd}{HE8frankruehl,nowarn}}
- \file{he8yad.fd}{\from{hebrew.fdd}{HE8yad,nowarn}}
- \file{he8miriam.fd}{\from{hebrew.fdd}{HE8miriam,nowarn}}
- \file{he8nachlieli.fd}{\from{hebrew.fdd}{HE8nachlieli,nowarn}}
- \file{he8OmegaHebrew.fd}{\from{hebrew.fdd}{HE8OmegaHebrew,nowarn}}
- \file{lheshold.fd}{\from{hebrew.fdd}{LHEshold,nowarn}}
- \file{lheshscr.fd}{\from{hebrew.fdd}{LHEshscr,nowarn}}
- \file{lheshstk.fd}{\from{hebrew.fdd}{LHEshstk,nowarn}}
- \file{lhefr.fd}{\from{hebrew.fdd}{LHEfr,nowarn}}
- \file{lhecrml.fd}{\from{hebrew.fdd}{LHEcrml,nowarn}}
- \file{lheredis.fd}{\from{hebrew.fdd}{LHEredis,nowarn}}
- \file{hebfont.sty}{\from{hebrew.fdd}{hebfont}}
- }
+\askforoverwritefalse
-\Msg{*** Generating hebrew input encoding files ***}
-\usepreamble\mainpreamble
-\generate{\file{8859-8.def}{\from{hebinp.dtx}{8859-8}}
- \file{cp1255.def}{\from{hebinp.dtx}{cp1255}}
- \file{cp862.def}{\from{hebinp.dtx}{cp862}}
- \file{si960.def}{\from{hebinp.dtx}{si960}}
- }
+\usedir{tex/generic/babel}
\Msg{*** Generating hebrew language support files ***}
+\usepreamble\mainpreamble
\generate{\file{hebrew.ldf}{\from{hebrew.dtx}{hebrew}}
\file{rlbabel.def}{\from{hebrew.dtx}{rightleft}}
\file{hebcal.sty}{\from{hebrew.dtx}{calendar}}
}
\Msg{*** Generating hebrew 2.09 compatibility files ***}
-\generate{\file{hebrew_newcode.sty}{\from{heb209.dtx}{newcode}}
- \file{hebrew_p.sty}{\from{heb209.dtx}{pccode}}
- \file{hebrew_oldcode.sty}{\from{heb209.dtx}{oldcode}}
+\usepreamble\mainpreamble
+\generate{\file{hebrew_newcode.sty}{\from{hebrew.dtx}{newcode}}
+ \file{hebrew_p.sty}{\from{hebrew.dtx}{pccode}}
+ \file{hebrew_oldcode.sty}{\from{hebrew.dtx}{oldcode}}
}
\ifToplevel{
@@ -212,4 +109,4 @@ of this file under its original name.
\Msg{*************************************************************}
}
-\endbatchfile
+\endinput
diff --git a/macros/latex/contrib/babel-contrib/hebrew/hebrew.pdf b/macros/latex/contrib/babel-contrib/hebrew/hebrew.pdf
index 4e46d124d9..23907586c6 100644
--- a/macros/latex/contrib/babel-contrib/hebrew/hebrew.pdf
+++ b/macros/latex/contrib/babel-contrib/hebrew/hebrew.pdf
Binary files differ
diff --git a/macros/latex/contrib/chronology/README b/macros/latex/contrib/chronology/README
index 42061c01a1..95ecffd34a 120000..100644
--- a/macros/latex/contrib/chronology/README
+++ b/macros/latex/contrib/chronology/README
@@ -1 +1,15 @@
-README.md \ No newline at end of file
+
+chronology
+==========
+
+A package that creates timelines featuring multiple events with per-day precision. Other features include relative positioning with unit specification, adjustable tick mark step size, and scaling to specified width.
+
+
+Version 2.0
+Uploaded to CTAN on 20 August, 2023
+
+Version 1.1
+Uploaded to GitHub on 12 March 2013
+Uploaded to CTAN on 4 April 2013
+
+
diff --git a/macros/latex/contrib/chronology/README.md b/macros/latex/contrib/chronology/README.md
deleted file mode 100644
index 4f220455f8..0000000000
--- a/macros/latex/contrib/chronology/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-chronology
-==========
-
-LaTeX time­line pack­age that al­lows la­belling of events with per-day gran­u­lar­ity
-
-Version 1.1
-Uploaded to GitHub on Mar 12., 2013
-Uploaded to CTAN on Apr 4., 2013 \ No newline at end of file
diff --git a/macros/latex/contrib/chronology/chronology.pdf b/macros/latex/contrib/chronology/chronology.pdf
new file mode 100644
index 0000000000..6a2412c808
--- /dev/null
+++ b/macros/latex/contrib/chronology/chronology.pdf
Binary files differ
diff --git a/macros/latex/contrib/chronology/chronology.sty b/macros/latex/contrib/chronology/chronology.sty
index 46c06c5746..774a26644e 100644
--- a/macros/latex/contrib/chronology/chronology.sty
+++ b/macros/latex/contrib/chronology/chronology.sty
@@ -1,5 +1,5 @@
\NeedsTeXFormat{LaTeX2e}%
-\ProvidesPackage{chronology}[2015/03/27 v1.1.1 Horizontal timeline]%
+\ProvidesPackage{chronology}[2023/08/20 v2.0 - Horizontal Timeline]%
\RequirePackage{calc}%
\RequirePackage{tikz}%
\RequirePackage{xparse}%
@@ -9,7 +9,9 @@
\newlength{\xstart}\newlength{\xstop}%
\newlength{\unit}\newlength{\timelinewidth}%
\newsavebox{\timelinebox}%
+%
% Defining TikZ styles for labels and events
+%
\tikzset{%
,chronevent/.style={fill=black,draw=none,opacity=0.5}
,chronlabel/.style={opacity=1}
@@ -17,8 +19,11 @@
,chroneventlabel/.style={chronlabel}
,eventlabel/.style={chroneventlabel,anchor=south west,yshift=.2\unit,rotate=45}
,flippedeventlabel/.style={chroneventlabel,anchor=north west,yshift=-.2\unit,rotate=-45}
+ ,eventlabelbottom/.style={chroneventlabel,anchor=south west,yshift=-1cm,rotate=0} % Bottom label
}
+%
% For compatibity with babel. Handling of active characters in TikZ.
+%
\tikzset{
handle active characters in code,
handle active characters in nodes
@@ -69,8 +74,11 @@
\fi%
}%
}%
+%
+% Event (legacy code for compatibility)
+%
\makeatother%
-\DeclareDocumentCommand \event {o m m}{%
+\DeclareDocumentCommand \event {o m m}{% [Startdate] Enddate Label
\pgfmathsetlength\xstop{(#2-\theyearstart)*\unit}%
\IfNoValueTF {#1} {%
\ifflipped%
@@ -95,6 +103,30 @@
\fi%
}%
}
+%
+% Eventspan
+%
+\DeclareDocumentCommand \eventspan {m m m O{black} O{0.3} O{0.2} o}{% Startdate Enddate Label Fill Opacity Height Bottom?
+ \pgfmathsetlength\xstop{(#2-\theyearstart)*\unit}%
+ \pgfmathsetlength\xstart{(#1-\theyearstart)*\unit}%
+ \IfNoValueTF {#7} {%
+ \draw[style={fill=#4,draw=none,opacity=#5},rounded corners=.05\unit]%
+ (\xstart,-#6\unit) rectangle node[eventlabel] {#3} (\xstop,.2\unit);%
+ }{%
+ \draw[style={fill=#4,draw=none,opacity=#5},rounded corners=.05\unit]% Event, bottom label
+ (\xstart,-#6\unit) rectangle node[eventlabelbottom, anchor=center]{#3} (\xstop,.2\unit);%
+ }%
+}
+%
+% Eventpoint
+%
+\DeclareDocumentCommand \eventpoint {m m O{red} O{1} O{0.3}}{% Date Label Fill Opacity Height
+ \pgfmathsetlength\xstop{(#1-\theyearstart)*\unit}%
+ \draw[style={fill=#3,draw=none,opacity=#4},rounded corners=0\unit]%
+ (\xstop, .1\unit) coordinate(A) -- (\xstop-.2*#5\unit,#5\unit) coordinate(B) -- (\xstop+.2*#5\unit,#5\unit)coordinate(C)%
+ -- cycle node[eventlabel] {#2};%
+}
+%
\newcommand{\decimaldate}[3]{(#1-1)/31/12+(#2-1)/12+#3}%
+%
\endinput%
-
diff --git a/macros/latex/contrib/chronology/example.pdf b/macros/latex/contrib/chronology/example.pdf
deleted file mode 100644
index 90c14a66b2..0000000000
--- a/macros/latex/contrib/chronology/example.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/chronology/example.tex b/macros/latex/contrib/chronology/example.tex
deleted file mode 100644
index 94bc873491..0000000000
--- a/macros/latex/contrib/chronology/example.tex
+++ /dev/null
@@ -1,24 +0,0 @@
-\documentclass{article}
-\usepackage{chronology}
-\begin{document}
-\begin{chronology}[5]{1983}{2010}{10cm}[7cm]
-\event{1984}{\color{blue}{one}}
-\event[1985]{1986}{\small{two}}
-\event{\decimaldate{25}{12}{2001}}{\huge{three}}
-\end{chronology}
-\vspace{5cm}
-
-\begin{chronology}*[5]{1983}{2010}{10cm}
-\event{1984}{\color{blue}{one}}
-\event[1985]{1986}{\small{two}}
-\event{\decimaldate{25}{12}{2001}}{\huge{three}}
-\end{chronology}
-\vspace{5cm}
-
-\begin{chronology}[5]{1983}{2010}{10cm}[13cm]
-\event{1984}{\color{blue}{one}}
-\event[1985]{1986}{\small{two}}
-\event{\decimaldate{25}{12}{2001}}{\huge{three}}
-\end{chronology}
-\end{document}
-
diff --git a/macros/latex/contrib/expex-glossonly/README.md b/macros/latex/contrib/expex-glossonly/README.md
index 1029552acf..627f813b6e 100644
--- a/macros/latex/contrib/expex-glossonly/README.md
+++ b/macros/latex/contrib/expex-glossonly/README.md
@@ -1,8 +1,9 @@
# The `expex-glossonly` package
-`expex-glossonly` is a package which allows `gb4e` and `linguex` users to use the glossing macros
-of the ExPex package, while still using the standard example and subexample numbering macros of
-those respective packages.
+## Version 0.7 2023/08/17
+
+`expex-glossonly` is a package which allows users of other popular example numbering package (`gb4e`, `linguex`, and `covington`) to use the glossing macros
+of the ExPex package, while still using the standard example and subexample numbering macros of those respective packages.
Copyright 2016-2023 by Alan Munn
@@ -19,7 +20,7 @@ This package has the LPPL maintenance status `maintained'.
The Current Maintainer of this package is Alan Munn.
This package consists of the file `expex-glossonly.sty` and documentation files
-`expex-glossonly.tex` and `expex-glossonly.pdf` plus two test files: `gb4e-expex.tex` and `linguex-expex.tex`
+`expex-glossonly.tex` and `expex-glossonly.pdf` plus three test files: `gb4e-expex.tex`, `linguex-expex.tex`, and `covington-expex.tex`.
This package is currently experimental. Use at your own risk.
diff --git a/macros/latex/contrib/expex-glossonly/expex-glossonly.pdf b/macros/latex/contrib/expex-glossonly/expex-glossonly.pdf
index df43f4d18f..22873f4f56 100644
--- a/macros/latex/contrib/expex-glossonly/expex-glossonly.pdf
+++ b/macros/latex/contrib/expex-glossonly/expex-glossonly.pdf
Binary files differ
diff --git a/macros/latex/contrib/expex-glossonly/expex-glossonly.sty b/macros/latex/contrib/expex-glossonly/expex-glossonly.sty
index b33b6b41c0..d881bfdf24 100644
--- a/macros/latex/contrib/expex-glossonly/expex-glossonly.sty
+++ b/macros/latex/contrib/expex-glossonly/expex-glossonly.sty
@@ -1,10 +1,10 @@
-\def\EPGL@version{0.6}
-\def\EPGL@date{2023/08/15}
+\def\EPGL@version{0.7}
+\def\EPGL@date{2023/08/17}
% expex-glossonly is a package which allows gb4e and linguex users to use the glossing macros
% of the ExPex package, while still using the standard example and subexample numbering macros of
% those respective packages.
%
-% Copyright 2016 by Alan Munn
+% Copyright 2016-2023 by Alan Munn
%
% This package may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -23,13 +23,15 @@
%
% This package is currently experimental. Use at your own risk.
%
-\ProvidesPackage{expex-glossonly}[\EPGL@date\ Compatibility package for using ExPex glosses with gb4e and linguex v. \EPGL@version ]
-\DeclareOption*{\PackageWarning{expex-glossonly}{Unknown option `\CurrentOption`}}
-\ProcessOptions
+\ProvidesPackage{expex-glossonly}[\EPGL@date\ Compatibility package for using ExPex glosses with other example packages v. \EPGL@version ]
\RequirePackage{calc}
\RequirePackage{expex}
-% First define a command to patch the ExPex main gloss command
-% Need to find out if other gloss commands need to be patched.
+\newif\ifEPGL@examplesloaded
+\@ifpackageloaded{linguex}{\PackageError{expex-glossonly}{Please load linguex using the package option!}{Please load linguex using the package option!}}{}
+\@ifpackageloaded{gb4e}{\PackageError{expex-glossonly}{Please load gb4e using the package option!}{Please load gb4e using the package option!}}{}
+\@ifpackageloaded{covington}{\PackageError{expex-glossonly}{Please load covington using the package option!}{Please load covington using the package option!}}{}
+% for now this is a separate macro in case it needs to be changed per package.
+\newcommand\EPGL@setglossmargin{\setlength{\leftskip}{\@totalleftmargin}}
\def\EPGL@patchexpexgloss{%
\let\xe\relax
\let\pex\relax
@@ -64,34 +66,48 @@
\let\everylist=\empty
\let\colorlist=\empty
}}
-% First check to see whether we are loaded first
-% Since there is some overlap in commands, gb4e and linguex must be loaded second
-\@ifpackageloaded{linguex}{\PackageError{expex-glossonly}{Please load expex-glossonly BEFORE linguex}{Please load expex-glossonly BEFORE linguex}}{}
-\@ifpackageloaded{gb4e}{\PackageError{expex-glossonly}{Please load expex-glossonly BEFORE gb4e}{Please load expex-glossonly BEFORE gb4e}}{}
-% Now only patch the command if the packages have been loaded
-% This means that the package will do no harm if loaded by itself
-\AtBeginDocument{%
-\@ifpackageloaded{linguex}{
- \def\EPGL@setglossmargin{%
- \ifnum\theExDepth=1%
- \setlength{\leftskip}{\Exindent+\Exlabelsep+\Exlabelwidth+.5em}
- \else
- \setlength{\leftskip}{\Exindent+\Exlabelsep+\Exlabelwidth+\SubExleftmargin+.5em}
- \fi}
- \EPGL@patchexpexgloss
- \PackageInfo{expex-glossonly}{Patching ExPex for use with linguex}
- \typeout{Patching ExPex for use with linguex}
+\DeclareKeys[expex-glossonly]
+{
+gb4e.code = {
+ \RequirePackage{gb4e}
+ \EPGL@examplesloadedtrue
+ \EPGL@patchexpexgloss
+ \lingset{belowglpreambleskip=-0.5ex, aboveglftskip=-0.5ex,everygla=\eachwordone}
+ \PackageInfo{expex-glossonly}{Patching ExPex for use with gb4e}
+ \typeout{Patching ExPex for use with gb4e}
+ },
+gb4e-emulate.code = {
+ \RequirePackage{gb4e-emulate}
+ \EPGL@examplesloadedtrue
+ \EPGL@patchexpexgloss
+ \lingset{belowglpreambleskip=-0.5ex, aboveglftskip=-0.5ex,everygla=\eachwordone}
+ \PackageInfo{expex-glossonly}{Patching ExPex for use with gb4e}
+ \typeout{Patching ExPex for use with gb4e}
+},
+linguex.code = {
+ \RequirePackage{linguex}
+ \EPGL@examplesloadedtrue
+ \EPGL@patchexpexgloss
+ \lingset{belowglpreambleskip=-0.5ex, aboveglftskip=-0.5ex,everygla=\eachwordone}
+ \PackageInfo{expex-glossonly}{Patching ExPex for use with linguex}
+ \typeout{Patching ExPex for use with linguex}
+},
+covington.code = {
+ \PassOptionsToPackage{covington}{#1}
+ \let\ex\relax
+ \RequirePackage{covington}
+ \EPGL@examplesloadedtrue
+ \EPGL@patchexpexgloss
+ \newcommand*{\EPGL@glosslineone}{%
+ \@ifundefined{glosslineone@global}{\glosslineone}{\glosslineone@global}}
+ \lingset{belowglpreambleskip=-0.5ex, aboveglftskip=-0.5ex,everygla=\EPGL@glosslineone}
+ \PackageInfo{expex-glossonly}{Patching ExPex for use with covington}
+ \typeout{Patching ExPex for use with covington}
}
-{\@ifpackageloaded{gb4e}{
- \def\EPGL@setglossmargin{%
- \ifnum\@xnumdepth=1%
- \setlength{\leftskip}{\leftmargin+\widthof{\@exwidth}+1em}
- \else
- \setlength{\leftskip}{\leftmargin+\labelwidth+\labelsep+1.5em}
- \fi}
- \EPGL@patchexpexgloss
- \PackageInfo{expex-glossonly}{Patching ExPex for use with gb4e}
- \typeout{Patching ExPex for use with gb4e}
-}{}}
}
+\DeclareUnknownKeyHandler[expex-glossonly]{\PackageError{expex-glossonly}{Please specify which example package you are using as a package option!}{Please specify which example package you are using as a package option!}}
+
+\ProcessKeyOptions[expex-glossonly]
+\ifEPGL@examplesloaded\else\PackageWarning{expex-glossonly}{No example package specified! Assuming ExPex}\fi
+
\endinput \ No newline at end of file
diff --git a/macros/latex/contrib/expex-glossonly/expex-glossonly.tex b/macros/latex/contrib/expex-glossonly/expex-glossonly.tex
index 5fc2a2e9d7..cc64244625 100644
--- a/macros/latex/contrib/expex-glossonly/expex-glossonly.tex
+++ b/macros/latex/contrib/expex-glossonly/expex-glossonly.tex
@@ -1,22 +1,17 @@
-% !TEX TS-program = pdflatexmk
-\def\EPGLversion{0.6}
-\def\EPGLdate{August 15, 2023}
+% !TEX TS-program = lualatexmk
+\def\EPGLversion{0.7}
+\def\EPGLdate{August 17, 2023}
\documentclass[11pt]{article}
\title{\textbf{The \textsf{expex-glossonly} package}}
\author{\textbf{Alan Munn}\\Department of Linguistics and Languages\\Michigan State University\\\texttt{\href{mailto:amunn@msu.edu}{amunn@msu.edu}}}
\date{Version \EPGLversion\\\EPGLdate}
-\usepackage[T1]{fontenc}
\usepackage[margin=1in,includefoot]{geometry}
\usepackage{titling}
-\usepackage[utf8]{inputenc}
\usepackage{array, booktabs, multicol, fancyhdr, xspace,tabularx}
\usepackage{enumitem}
\usepackage{fancyvrb,listings,url}
\usepackage[sf,compact]{titlesec}
-\usepackage[]{he-she}
-\usepackage{gb4e}
\usepackage[colorlinks=true]{hyperref}
-\noautomath
\DefineShortVerb{\|}
@@ -44,6 +39,7 @@
breakindent=1em,
xrightmargin=2.5em,
captionpos=t,
+ frame=tl,
language=TeX,
}
@@ -68,33 +64,132 @@
\maketitle
\thispagestyle{empty}
\renewcommand{\abstractname}{\sffamily Abstract}
-\abstract{\noindent\begin{quote}This is an experimental package which is designed to let \pkg{gb4e} and \pkg{linguex} package users use the advanced glossing capabilities of the very powerful ExPex package.\end{quote}}
+\abstract{\noindent\begin{quote}This is an experimental package which is designed to let \pkg{gb4e}, \pkg{linguex} and \pkg{covington} package users use the advanced glossing capabilities of the very powerful ExPex package.\end{quote}}
\section{Introduction}
-The ExPex package by John Frampton provides very fine-grained control over glossing and example formatting, including unlimited gloss lines and various ways of formatting multiline glosses. By contrast the \pkg{cgloss4e} glossing macros provided with both \pkg{gb4e} and \pkg{linguex}, although very capable at basic glossing, lack the degree of customization that is sometimes needed for more complex glossing.
+The ExPex package by John Frampton provides very fine-grained control over glossing and example formatting, including unlimited gloss lines and various ways of formatting multiline glosses. By contrast the \pkg{cgloss4e} glossing macros provided with both \pkg{gb4e} and \pkg{linguex}, and to some extent, the glossing macros of \pkg{covington} although very capable at basic glossing, lack the degree of customization that is sometimes needed for more complex glossing.
-On the other hand, for those users who have heavily invested in using either \pkg{gb4e} or \pkg{linguex}, shifting to ExPex can be quite daunting and burdensome, especially since the basic syntax of the examples is quite different.
+On the other hand, for those users who have heavily invested in using \pkg{gb4e}, \pkg{linguex}, or \pkg{covington}, shifting to ExPex can be quite daunting and burdensome, especially since the basic syntax of the examples is quite different.
-This package is an attempt to have the best of both worlds: it allows \pkg{gb4e} and \pkg{linguex} users to keep using those packages for basic example numbering and formatting, but also allows them to use the glossing macros that ExPex provides.
+This package is an attempt to have the best of both worlds: it allows \pkg{gb4e}, \pkg{linguex}, or \pkg{covington} users to keep using those packages for basic example numbering and formatting, but also allows them to use the glossing macros that ExPex provides.
\section{Package usage}
-Usage of the package is simple: simply load it, and then load your favourite example numbering package. The \pkg{expex-glossonly} package must be loaded first.
+Usage of the package is simple: simply load it instead of your usual example numbering package, and specify as a package option which numbering package you're using. So for example. Four example numbering packages are currently supported: \pkg{gb4e}, \pkg{linguex}, \pkg{covington}, and \pkg{gb4e-emulate}. The latter is an experimental reimplementation of \pkg{gb4e} using \pkg{enumitem} and is not currently released to CTAN, but available on GitHub. Package options for loading \pkg{covington} can be given by adding them to the |covington| package option. Since they are an argument of the |covington| key, the set of options must be enclosed in |{...}|.
-\begin{multicols}{2}
+\begin{table}
+\centering
+\caption{Package loading options}
+\begin{tabular}{l}
+\toprule
+\begin{lstlisting}[frame=none]
+\usepackage[gb4e]{expex-glossonly}
+\end{lstlisting}\\
+\begin{lstlisting}[frame=none]
+\usepackage[linguex]{expex-glossonly}
+\end{lstlisting}\\
+\begin{lstlisting}[frame=none]
+\usepackage[covington={<covington package options>}]{expex-glossonly}
+\end{lstlisting}\\
+\begin{lstlisting}[frame=none]
+\usepackage[gb4e-emulate]{expex-glossonly}
+\end{lstlisting}\\
+\bottomrule
+\end{tabular}
+\end{table}
+
+The package checks for which example numbering package you have loaded and then patches the main glossing macro in ExPex to adjust to the horizontal spacing parameters of the particular example package you loaded.
+
+It disables some incompatible commands from ExPex (specifically any commands that would introduce a numbered or lettered example, such as |\ex|, |\pex|, |\xe|) so you should not use them. Since it it is assumed that you will not be using ExPex for numbering, only for glosses, and parts of the ExPex code that deal with example numbering should be assumed not to work.
+
+The package does \emph{not} change the existing glossing macros of the base numbering package. This means that using the package does \emph{not} require you to use ExPex glossing macros for all your glossing. You can continue to use the glossing macros provided by the base numbering package. What this package does is \emph{extend} the capabilities of the base numbering package to allow you to use ExPex glosses as well as the regularly provided glossing facilities of the base package.
+\section{Examples}
+Here are some sample documents using the supported packages:
+
+\subsection{\pkg{gb4e}}
+\begin{quote}
\begin{lstlisting}
-\usepackage{expex-glossonly}
-\usepackage{gb4e}
+\documentclass{article}
+\usepackage[gb4e]{expex-glossonly}
+\usepackage{cgloss}
+\begin{document}
+
+\begin{exe}
+\ex
+\begin{xlist}
+\ex[*]{ This is a regular example.}
+\ex[]{\label{foo}
+ \begingl
+ \gla\rightcomment{(Hungarian)}János háza//
+ \glb John house.his//
+ \glft `John's house'//
+ \endgl
+}
+\ex[]{\gll János háza\\
+ John house\\\hfill(Hungarian)
+ \glt `John's house'
+ }
+\end{xlist}
+\end{exe}
+
+\end{document}
\end{lstlisting}
+\end{quote}
+\clearpage
+\subsection{\pkg{linguex}}
+\begin{quote}
\begin{lstlisting}
-\usepackage{expex-glossonly}
-\usepackage{linguex}
+\documentclass{article}
+
+\usepackage[linguex]{expex-glossonly}
+
+\begin{document}
+
+\ex.
+\a.
+ \begingl
+ \gla\rightcomment{(Hungarian)}János háza//
+ \glb John house.his//
+ \glft `John's house'//
+ \endgl
+\bg. János háza\\
+ John house.his\\
+ \glt `John's house'
+
+\end{document}
\end{lstlisting}
-\end{multicols}
+\end{quote}
+\subsection{\pkg{covington}}
+\begin{quote}
+\begin{lstlisting}
+\documentclass{article}
+\usepackage[covington]{expex-glossonly}
+
+\begin{document}
-The package checks for which example numbering package you have loaded (either \pkg{gb4e} or \pkg{linguex}) and then patches the main glossing macro in ExPex to adjust to the horizontal spacing parameters of the particular example package you loaded.
+\begin{examples}
+\item An example
+\item Another example
+\end{examples}
+\begin{subexamples}
+\item
+ \begingl
+ \gla\rightcomment{(Hungarian)}János háza//
+ \glb John house.his//
+ \glft `John's house'//
+ \endgl
+\item \digloss{János háza}[(Hungarian)]
+ {John house.his}
+ {`John's house}
+\end{subexamples}
+\end{document}
+\end{lstlisting}
+\end{quote}
-It does nothing explicitly to disable incompatible commands from ExPex (specifically any commands that would introduce a numbered or lettered example, such as |\ex|, |\pex|, |\a|, etc.) so you should not use them. Some, such as |\ex| are redefined by \pkg{gb4e} and therefore the ExPex version of it will fail to work. For this reason, you need to make sure to load the \pkg{expex-glossonly} package \emph{before} you load \pkg{gb4e} or \pkg{linguex}
-\section{Bugs}
-This is \emph{experimental} and has not been extensively tested. Use at your own risk. You're welcome to contact me with problems as they arise, however.
+\section{Bugs and support}
+This is \emph{experimental} and has not been extensively tested. Use at your own risk. You're welcome to raise issues at the \href{https://github.com/amunn/expex-glossonly}{GitHub repository}, however.
+\section{Version history}
+The initial version of the package (0.6) supported only \pkg{linguex} and \pkg{gb4e}. Version 0.7 changed the loading interface to provide support for \pkg{covington} and added support for \pkg{gb4e-emulate}.
+\section{Acknowledgements}
+As always, thanks to the members of the LaTeX development team and other users who are always happy to answer questions in the \href{https://tex.stackexchange.com}{TeX.se} chat room. Thanks especially to Ulrike Fischer who told me of the magical |\@totalleftmargin| length. Thanks also to Jürgen Spitzmüller for discussion of the \pkg{covington} support.
\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/expex-glossonly/testfiles/covington-expex.pdf b/macros/latex/contrib/expex-glossonly/testfiles/covington-expex.pdf
new file mode 100644
index 0000000000..f86b9e3b68
--- /dev/null
+++ b/macros/latex/contrib/expex-glossonly/testfiles/covington-expex.pdf
Binary files differ
diff --git a/macros/latex/contrib/expex-glossonly/testfiles/covington-expex.tex b/macros/latex/contrib/expex-glossonly/testfiles/covington-expex.tex
new file mode 100644
index 0000000000..f3375ad736
--- /dev/null
+++ b/macros/latex/contrib/expex-glossonly/testfiles/covington-expex.tex
@@ -0,0 +1,20 @@
+\documentclass{article}
+\usepackage[covington]{expex-glossonly}
+
+\begin{document}
+
+\begin{examples}
+\item An example
+\item Another example
+\end{examples}
+\begin{subexamples}
+\item \begingl
+ \gla\rightcomment{(Hungarian)}János háza//
+ \glb John house.his//
+ \glft `John's house'//
+ \endgl
+\item \digloss{János háza}[(Hungarian)]
+ {John house.his}
+ {`John's house}
+\end{subexamples}
+\end{document}
diff --git a/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.pdf b/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.pdf
index 40b160303e..104dae2f80 100644
--- a/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.pdf
+++ b/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.pdf
Binary files differ
diff --git a/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.tex b/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.tex
index 8cdeed2f5d..b6709fead5 100644
--- a/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.tex
+++ b/macros/latex/contrib/expex-glossonly/testfiles/gb4e-expex.tex
@@ -1,48 +1,24 @@
\documentclass[12pt,letterpaper]{article}
-
-\usepackage{expex-glossonly}
-\usepackage{amssymb}
-\usepackage{gb4e}
-%\usepackage{cgloss}
-
-
-\lingset{everygla={\leftmargin=2in}, belowglpreambleskip=-0.5ex, aboveglftskip=-0.5ex} % gloss formatting
-
-
+\usepackage[gb4e]{expex-glossonly}
+\usepackage{cgloss}
\begin{document}
\begin{exe}
+\ex
+\begin{xlist}
\ex[*]{ This is a regular example.}
-\ex[*]{\label{foo}
+\ex[]{\label{foo}
\begingl
- \glpreamble This is a preamble sentence.//
- \gla\rightcomment{\small\checkmark X}J\'anos h\'aza//
- \glb\rightcomment{\small\checkmark X}John house.his//
+ \gla\rightcomment{(Hungarian)}János háza//
+ \glb John house.his//
\glft `John's house'//
\endgl
}
-\ex This is another example.
+\ex[]{\gll János háza\\
+ John house\\\hfill(Hungarian)
+ \glt `John's house'
+ }
+\end{xlist}
\end{exe}
-\begin{exe}
-\ex\label{bar}
-\begin{xlist}
-\ex \begingl
- \gla\rightcomment{\small\checkmark X}J\'anos h\'aza//
- \glb\rightcomment{\small\checkmark X}John house.his//
- \glft `John's house'//
- \endgl
-\ex \begingl
- \gla\rightcomment{\small\checkmark X}J\'anos h\'aza//
- \glb\rightcomment{\small\checkmark X}John house.his//
- \glft `John's house'//
- \endgl
-\end{xlist}
-\ex
-\begin{xlist}
-\ex An example\setcounter{xnumi}{0}
-\ex Another example.
-\end{xlist}
-\end{exe}
-
\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.pdf b/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.pdf
index b52da13d57..f7d8140075 100644
--- a/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.pdf
+++ b/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.pdf
Binary files differ
diff --git a/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.tex b/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.tex
index 368a35f8f1..0a63e88d75 100644
--- a/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.tex
+++ b/macros/latex/contrib/expex-glossonly/testfiles/linguex-expex.tex
@@ -1,33 +1,18 @@
\documentclass[12pt,letterpaper]{article}
-\usepackage{expex-glossonly}
-\usepackage{amssymb}
-\usepackage{linguex}
-\usepackage{cgloss}
-
-\lingset{everygla={\leftmargin=2in}, belowglpreambleskip=-0.5ex, aboveglftskip=-0.5ex} % gloss formatting
-\makeatletter
+\usepackage[linguex]{expex-glossonly}
\begin{document}
-\ex. \ag. The boy didn't kiss the girl \\
-D boy AUX.NEG kiss D girl \\ \hfill {\small\checkmark X}
-\trans `The boy did not kiss the girl'. \hfill {\small\checkmark X}
-
\ex.
\a.
\begingl
- \gla\rightcomment{\small\checkmark X}J\'anos h\'aza//
- \glb\rightcomment{\small\checkmark X}John house.his//
- \glft `John's house'//
- \endgl
-\b. This is another example.
-
-\ex.\begingl
- \gla\rightcomment{\small\checkmark X}J\'anos h\'aza//
- \glb\rightcomment{\small\checkmark X}John house.his//
+ \gla\rightcomment{(Hungarian)}J\'anos h\'aza//
+ \glb John house.his//
\glft `John's house'//
\endgl
-
+\bg. János háza\\
+ John house.his\\
+ \glt `John's house'
\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/hebrew-fonts/README.md b/macros/latex/contrib/hebrew-fonts/README.md
new file mode 100644
index 0000000000..2750e0e227
--- /dev/null
+++ b/macros/latex/contrib/hebrew-fonts/README.md
@@ -0,0 +1,31 @@
+hebrew-fonts
+=============
+
+Font encoding definition files with *LaTeX internal character
+representation* (LICR) macros for letters and symbols from the Hebrew
+script and input encoding files for hebrew chacharacters.
+
+The included LaTeX package defines a number of high-level commands
+(all starting with |\text..| similar to the standard \LaTeXe{}
+font-change commands.
+
+**Version**: 1.2a
+
+**Copyright**: © 1997 -- 2005 Boris Lavva, © 2023 Udi Fogiel
+
+This work may be distributed and/or modified under the conditions of the
+[LaTeX Project Public License](http://www.latex-project.org/lppl.txt),
+either version 1.3 of this license or any later version.
+
+
+Usage
+-----
+
+Usually, the font encoding definition files are loaded via
+[Babel's ``hebrew`` option](https://ctan.org/pkg/babel-hebrew),
+or the culmus package.
+
+Requires text fonts supporting the hebrew script.
+With 8-bit TeX/pdfTeX, the culmus package is recomended.
+
+For questions, bug reports, or help, please contact udifoglle@gmail.com.
diff --git a/macros/latex/contrib/babel-contrib/hebrew/hebrew.fdd b/macros/latex/contrib/hebrew-fonts/hebfontenc.fdd
index f61d06f430..2fca7f278a 100644
--- a/macros/latex/contrib/babel-contrib/hebrew/hebrew.fdd
+++ b/macros/latex/contrib/hebrew-fonts/hebfontenc.fdd
@@ -1,10 +1,10 @@
% \iffalse meta-comment
%
-% Copyright 1989-2005 Johannes L. Braams and any individual authors
-% listed elsewhere in this file. All rights reserved.
-%
-% This file is part of the Babel system.
-% --------------------------------------
+% Hebrew language font encodings and definitions.
+% Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
+%
+% Copyright (C) 2023 Udi Fogiel.
+% All rights reserved.
%
% It may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -16,27 +16,14 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% The Current Maintainer of this work is Johannes Braams.
+% The Current Maintainer of this work is Udi Fogiel.
%
-% The list of all files belonging to the Babel system is
-% given in the file `manifest.bbl. See also `legal.bbl' for additional
-% information.
%
% The list of derived (unpacked) files belonging to the distribution
% and covered by LPPL is defined by the unpacking scripts (with
% extension .ins) which are part of the distribution.
% \fi
-% \CheckSum{610}
-%
-% \iffalse meta-comment
-%% File `hebrew.fdd' for installing the Hebrew encodings and fonts.
-%% Copyright (C) 1997 -- 2005 Boris Lavva.
%
-%% Babel package for LaTeX version 2e
-%% Copyright (C) 1989 -- 2005 by Johannes Braams,
-%% TeXniek
-%% All rights reserved.
-% \fi
% \iffalse
%<LHEenc>\ProvidesFile{lheenc.def}
%<LHEcmr>\ProvidesFile{lhecmr.fd}
@@ -49,40 +36,17 @@
%<LHEfr>\ProvidesFile{lhefr.fd}
%<LHEcrml>\ProvidesFile{lhecrml.fd}
%<LHEredis>\ProvidesFile{lheredis.fd}
-%<HE8enc>\ProvidesFile{HE8enc.def}
-%<HE8cmr>\ProvidesFile{HE8cmr.fd}
-%<HE8cmss>\ProvidesFile{HE8cmss.fd}
-%<HE8cmtt>\ProvidesFile{HE8cmtt.fd}
+%<HE8enc>\ProvidesFile{he8enc.def}
+%<NHE8enc>\ProvidesFile{nhe8enc.def}
% The recoded Omega font (only Hebrew glyphs. Lacks other glyphs)
%<HE8OmegaHebrew>\ProvidesFile{HE8OmegaHebrew.fd}
-% The culmus fonts:
-%<HE8aharoni>\ProvidesFile{HE8aharoni.fd}
-%<HE8david>\ProvidesFile{HE8david.fd}
-%<HE8drugulin>\ProvidesFile{HE8drugulin.fd}
-%<HE8ellinia>\ProvidesFile{HE8ellinia.fd}
-%<HE8frankruehl>\ProvidesFile{HE8frankruehl.fd}
-%<HE8yad>\ProvidesFile{HE8yad.fd}
-%<HE8miriam>\ProvidesFile{HE8miriam.fd}
-%<HE8nachlieli>\ProvidesFile{HE8nachlieli.fd}
-% The IBM Type1 fonts (not freely distributable
-%<HE8CourierShalom>\ProvidesFile{HE8CourierShalom.fd}
-%<HE8HelveticaNarkissTam>\ProvidesFile{HE8HelveticaNarkissTam.fd}
-%<HE8TimesNarkissim>\ProvidesFile{HE8TimesNarkissim.fd}
-% Placeholders for windows fonts:
-%<HE8mfdavid>\ProvidesFile{HE8mfdavid.fd}
-%<HE8mffrank>\ProvidesFile{HE8mffrank.fd}
-%<HE8mffrankthick>\ProvidesFile{HE8mffrankthick.fd}
-%<HE8mffrankthin>\ProvidesFile{HE8mffrankthin.fd}
-%<HE8mfmiriam>\ProvidesFile{HE8mfmiriam.fd}
-%<HE8mfmiriamwide>\ProvidesFile{HE8mfmiriamwide.fd}
-%<HE8mfnarkistam>\ProvidesFile{HE8mfnarkistam.fd}
%<hebfont>\ProvidesPackage{hebfont}
%<*driver>
-\ProvidesFile{hebrew.drv}
+\ProvidesFile{hebfontenc.drv}
%</driver>
% \fi
-% \ProvidesFile{hebrew.fdd}
- [2005/05/20 v1.2c %
+% \ProvidesFile{hebfontenc.fdd}
+ [2023/08/17 v1.3a %
% \iffalse
%<LHEenc> 7-bit Hebrew font encoding
%<LHEcmr> Hebrew default font
@@ -96,30 +60,10 @@
%<LHEcrml> Hebrew carmel font (by Dr. Samy Zafrany)
%<LHEredis> Hebrew redis font (by Prof. Jacques J. Goldberg)
%<HE8enc> 8-bit Hebrew font encoding
-%<HE8cmr> Hebrew default font
-%<HE8cmss> Hebrew sans-serif font
-%<HE8cmtt> Hebrew typewriter font
+%<NHE8enc> 8-bit Hebrew font encoding
%<HE8OmegaHebrew> Hebrew font from the Omega project (by ???)
-%<HE8aharoni> Hebrew sans-serif font (Culmus)
-%<HE8david> Hebrew serif font (Culmus)
-%<HE8drugulin> Hebrew old serif font (Culmus)
-%<HE8ellinia> Hebrew sans-serif font (Culmus)
-%<HE8frankruehl> Hebrew serif font (Culmus)
-%<HE8yad> Hebrew handwriting font (Culmus)
-%<HE8miriam> Hebrew monospaced font (Culmus)
-%<HE8nachlieli> Hebrew sans-serif font (Culmus)
-%<HE8CourierShalom> Hebrew Shalom (Courier) font (by IBM)
-%<HE8HelveticaNarkissTam> Hebrew NarkisTam (Helvetica) (by Zvi Narkis)
-%<HE8TimesNarkissim> Hebrew Narkissim (Times) (by Zvi Narkis)
-%<HE8mfdavid> Hebrew David font (by ???)
-%<HE8mffrank> Hebrew Frank-Ruehl font (by ??)
-%<HE8mffrankthick> Hebrew Frank-Ruehl (thick) font (by ??)
-%<HE8mffrankthin> Hebrew Frank-Ruehl (thin) font (by ??)
-%<HE8mfmiriam> Hebrew Miriam font (by ???)
-%<HE8mfmiriamwide> Hebrew Miriam (wide) font (by ???)
-%<HE8mfnarkistam> Hebrew Narkis Tam font (by ???)
%<hebfont> Hebrew font switching commands
-%<driver> Driver file for hebrew.fdd file
+%<driver> Driver file for hebfontenc.fdd file
% \fi
% Hebrew font encodings support
(test version: still liable to change)]
@@ -130,9 +74,10 @@
% \providecommand\dst{\textsc{docstrip}}
% \providecommand\LHE{\texttt{LHE}}
% \providecommand\HEH{\texttt{HE8}}
+% \providecommand\NHE{\texttt{NHE8}}
% \providecommand\file[1]{\texttt{#1}}
% \providecommand\pkg[1]{\texttt{#1}}
-% \GetFileInfo{hebrew.fdd}
+% \GetFileInfo{hebfontenc.fdd}
%
% \changes{hebfdd-1.0a}{1998/01/01}{%
% Initial version. Supports only 7-bit LHE font encoding and all
@@ -151,11 +96,11 @@
%
% \changes{hebrew-1.2c}{2005/05/18}{Typo's in the docstrip guards made
% HE8nachlieli.fd unusable}
-% \section{Hebrew font encodings}\label{sec:hebfdd}
+%
+% \changes{hebrew-1.3}{2023/08/16}{made file name in providesfile lowercase,
+% moved the culmus definition files to the culmus package}
%
-% % Don't forget to update the docs...
-% \subsection{THIS SECTION IS OUT OF DATE. UPDATE DOCS TO MATCH HE8
-% ENCODING}
+% \section{Hebrew font encodings}\label{sec:hebfdd}
%
% The file \file{\filename}\footnote{The files described in this
% section have version number \fileversion{} and were last revised
@@ -184,7 +129,7 @@
% \StopEventually{}
%
% \iffalse
-% \subsection{A driver for this document}
+% \section{A driver for this document}
%
% The next bit of code contains the documentation driver file for
% \TeX{}, i.e., the file that will produce the documentation you are
@@ -195,17 +140,17 @@
%<*driver>
\documentclass{ltxdoc}
\title{Hebrew font encodings for use with \LaTeXe}
-\author{Boris Lavva}
+\author{Boris Lavva\and Udi Fogiel}
\date{Printed \today}
\begin{document}
\maketitle
- \DocInput{hebrew.fdd}
+ \DocInput{hebfontenc.fdd}
\end{document}
%</driver>
% \end{macrocode}
% \fi
%
-% \subsection{The {\normalfont\dst{}} modules}
+% \section{The {\normalfont\dst{}} modules}
%
% The following modules are used in the implementation to direct
% \dst{} in generating external files:
@@ -214,18 +159,7 @@
% driver & produce a documentation driver file \\[4pt]
% HE8enc & produce the encoding definition for CodePage 1255
% (\HEH)\\[4pt]
-% HE8cmr & make Hebrew default font in \HEH\\
-% HE8cmss & make Hebrew sans-serif font in \HEH\\
-% HE8cmtt & make Hebrew typewriter font in \HEH\\
% HE8OmegaHebrew & Hebrew font from the Omega project (by ???)\\
-% HE8aharoni & Hebrew sans-serif font (Culmus)\\
-% HE8david & Hebrew serif font (Culmus)\\
-% HE8drugulin & Hebrew old serif font (Culmus)\\
-% HE8ellinia & Hebrew isans-serif font (Culmus)\\
-% HE8frankruehl & Hebrew serif font (Culmus)\\
-% HE8KtavYad & Hebrew handwriting font (Culmus)\\
-% HE8MiriamMono & Hebrew monospaced font\\
-% HE8Nachlieli & Hebrew sans-serif font (Culmus)\\
% HE8CourierShalom & Hebrew Shalom (Courier) font (by IBM)\\
% HE8HelveticaNarkissTam &Hebrew NarkisTam (Helvetica) (by Zvi Narkis)\\
% HE8TimesNarkissim & Hebrew Narkissim (Times) (by Zvi Narkis) \\
@@ -260,10 +194,10 @@
% \end{center}
% A typical \dst{} command file would then have entries like:
%\begin{verbatim}
-%\generateFile{lhecmr.fd}{t}{\from{hebrew.fdd}{LHEcmr,nowarn}}
+%\generateFile{lhecmr.fd}{t}{\from{hebfontenc.fdd}{LHEcmr,nowarn}}
%\end{verbatim}
%
-% \subsection{The \LHE encoding definition file}
+% \section{The \LHE encoding definition file}
%
% The Hebrew font encoding \LHE{} is based upon the old-code encoding
% also known as the Israeli Standard SI-960. Many Hebrew \TeX{}
@@ -271,15 +205,13 @@
% in this encoding. It only uses the lower 128 positions of the font
% table. As local encoding its name start with the letter `L'.
%
-% First we define the Local Hebrew Encoding; specify a default
-% for the font substitution process for the \LHE{} encoding and
-% supply a font to be used when all else fails.
+% First we define the Local Hebrew Encoding and specify a default
+% for the font substitution process for the \LHE{} encoding.
%
% \begin{macrocode}
%<*LHEenc>
\DeclareFontEncoding{LHE}{}{}
\DeclareFontSubstitution{LHE}{cmr}{m}{n}
-\DeclareErrorFont{LHE}{cmr}{m}{n}{10}
%</LHEenc>
% \end{macrocode}
% Then we define a few commands in the \LHE{} encoding.
@@ -351,9 +283,9 @@
%<+LHEenc>\let\hebsin=\hebshin
% \end{macrocode}
%
-% \subsection{The font definition files (in \LHE{} encoding)}
+% \section{The font definition files (in \LHE{} encoding)}
%
-% \subsubsection{Hebrew default font}
+% \subsection{Hebrew default font}
%
% It uses \emph{Jerusalem} font for regular font, \emph{Old
% Jaffa} font for italic shape and small-caps, \emph{Dead Sea}
@@ -383,7 +315,7 @@
%</LHEcmr>
% \end{macrocode}
%
-% \subsubsection{Hebrew sans-serif font}
+% \subsection{Hebrew sans-serif font}
%
% We use \emph{Tel Aviv} font for the Sans family. \emph{Old
% Jaffa} font is used for italic shape and \emph{Dead Sea}
@@ -422,7 +354,7 @@
%</LHEcmss>
% \end{macrocode}
%
-% \subsubsection{Hebrew typewriter font}
+% \subsection{Hebrew typewriter font}
%
% We use \emph{Tel Aviv} font as the typewriter font. \emph{Old
% Jaffa} font is used for italic shape and \emph{Dead Sea}
@@ -453,7 +385,7 @@
%</LHEcmtt>
% \end{macrocode}
%
-% \subsubsection{Hebrew classic font}
+% \subsection{Hebrew classic font}
%
% \emph{Hclassic} and \emph{hcaption} fonts are distributed freely
% from |CTAN| sites and copyrighted by Joel M.~Hoffman, of 19
@@ -494,7 +426,7 @@
%</LHEclas>
% \end{macrocode}
%
-% \subsubsection{Hebrew shalom fonts}
+% \subsection{Hebrew shalom fonts}
%
% All three shalom fonts (\emph{ShalomScript10},
% \emph{ShalomStick10} and \emph{ShalomOldStyle10}) have been
@@ -541,7 +473,7 @@
%</LHEshstk>
% \end{macrocode}
%
-% \subsubsection{Hebrew frank-ruehl font}
+% \subsection{Hebrew frank-ruehl font}
%
% \emph{Frank Ruehl} font was written in \MF{} and includes three
% shapes: regular, bold extaneded and slanted.
@@ -580,7 +512,7 @@
%</LHEfr>
% \end{macrocode}
%
-% \subsubsection{Hebrew carmel font}
+% \subsection{Hebrew carmel font}
%
% \emph{Carmel} font includes regular and slanted shapes. It was
% created by Dr.~Samy Zafrany of the Technion, Haifa, Israel with
@@ -606,7 +538,7 @@
%</LHEcrml>
% \end{macrocode}
%
-% \subsubsection{Hebrew redis font}
+% \subsection{Hebrew redis font}
%
% \emph{Redis} font has been created by Prof.~Jacques J.~Goldberg
% of the Technion. Haifa, Israel. The font is available in regular,
@@ -656,21 +588,95 @@
%</LHEredis>
% \end{macrocode}
%
-% \subsection{The \HEH encoding definition file}
+% \section{The \HEH encoding definition file}
%
-% The Hebrew font encoding \HEH{} is based upon an extention by
+% The Hebrew font encodings \HEH{} and \NHE{} are based upon an extention by
% Microsoft to the ISO-8859-8 standard. This is an 8bit encoding. The
% extentions include hebrew points (``Nikud'').
%
-% First we define the Codepage 1255; specify a default
-% for the font substitution process for the \HEH{} encoding and
-% supply a font to be used when all else fails.
+% First we define the \NHE{} encoding;
+%
+% \begin{macrocode}
+%<*NHE8enc>
+\DeclareFontEncoding{NHE8}{}{}
+\DeclareFontSubstitution{NHE8}{cmr}{m}{n}
+
+\DeclareTextSymbol{\quotesinglbase}{NHE8}{13}
+\DeclareTextSymbol{\textquoteleft}{NHE8}{14}
+\DeclareTextSymbol{\textquoteright}{NHE8}{15}
+\DeclareTextSymbol{\textquotedblleft}{NHE8}{16}
+\DeclareTextSymbol{\textquotedblright}{NHE8}{17}
+\DeclareTextSymbol{\quotedblbase}{NHE8}{18}
+\DeclareTextSymbol{\textquotedbl}{NHE8}{34}
+\DeclareTextSymbol{\textdollar}{NHE8}{36}
+\DeclareTextSymbol{\textless}{NHE8}{60}
+\DeclareTextSymbol{\textgreater}{NHE8}{62}
+\DeclareTextSymbol{\textbackslash}{NHE8}{92}
+\DeclareTextSymbol{\textasciicircum}{NHE8}{94}
+\DeclareTextSymbol{\textbraceleft}{NHE8}{123}
+\DeclareTextSymbol{\textbraceright}{NHE8}{125}
+\DeclareTextSymbol{\textasciitilde}{NHE8}{126}
+\DeclareTextSymbol{\shekel}{NHE8}{165}
+\DeclareTextSymbol{\pounds}{NHE8}{191}
+\DeclareTextSymbol{\sheva}{NHE8}{192}
+\DeclareTextSymbol{\hatafsegol}{NHE8}{193}
+\DeclareTextSymbol{\hatafpatah}{NHE8}{194}
+\DeclareTextSymbol{\hatafqamats}{NHE8}{195}
+\DeclareTextSymbol{\hiriq}{NHE8}{196}
+\DeclareTextSymbol{\tsere}{NHE8}{197}
+\DeclareTextSymbol{\segol}{NHE8}{198}
+\DeclareTextSymbol{\patah}{NHE8}{199}
+\DeclareTextSymbol{\qamats}{NHE8}{200}
+\DeclareTextSymbol{\holam}{NHE8}{201}
+\DeclareTextSymbol{\qubuts}{NHE8}{203}
+\DeclareTextSymbol{\dagesh}{NHE8}{204}
+\DeclareTextSymbol{\meteg}{NHE8}{205}
+\DeclareTextSymbol{\maqaf}{NHE8}{206}
+\DeclareTextSymbol{\rafe}{NHE8}{207}
+\DeclareTextSymbol{\paseq}{NHE8}{208}
+\DeclareTextSymbol{\shindot}{NHE8}{209}
+\DeclareTextSymbol{\sindot}{NHE8}{210}
+\DeclareTextSymbol{\sofpasuq}{NHE8}{211}
+\DeclareTextSymbol{\doublevav}{NHE8}{212}
+\DeclareTextSymbol{\vavyod}{NHE8}{213}
+\DeclareTextSymbol{\doubleyod}{NHE8}{214}
+\DeclareTextSymbol{\hebalef}{NHE8}{224}
+\DeclareTextSymbol{\hebbet}{NHE8}{225}
+\DeclareTextSymbol{\hebgimel}{NHE8}{226}
+\DeclareTextSymbol{\hebdalet}{NHE8}{227}
+\DeclareTextSymbol{\hebhe}{NHE8}{228}
+\DeclareTextSymbol{\hebvav}{NHE8}{229}
+\DeclareTextSymbol{\hebzayin}{NHE8}{230}
+\DeclareTextSymbol{\hebhet}{NHE8}{231}
+\DeclareTextSymbol{\hebtet}{NHE8}{232}
+\DeclareTextSymbol{\hebyod}{NHE8}{233}
+\DeclareTextSymbol{\hebfinalkaf}{NHE8}{234}
+\DeclareTextSymbol{\hebkaf}{NHE8}{235}
+\DeclareTextSymbol{\heblamed}{NHE8}{236}
+\DeclareTextSymbol{\hebfinalmem}{NHE8}{237}
+\DeclareTextSymbol{\hebmem}{NHE8}{238}
+\DeclareTextSymbol{\hebfinalnun}{NHE8}{239}
+\DeclareTextSymbol{\hebnun}{NHE8}{240}
+\DeclareTextSymbol{\hebsamekh}{NHE8}{241}
+\DeclareTextSymbol{\hebayin}{NHE8}{242}
+\DeclareTextSymbol{\hebfinalpe}{NHE8}{243}
+\DeclareTextSymbol{\hebpe}{NHE8}{244}
+\DeclareTextSymbol{\hebfinaltsadi}{NHE8}{245}
+\DeclareTextSymbol{\hebtsadi}{NHE8}{246}
+\DeclareTextSymbol{\hebqof}{NHE8}{247}
+\DeclareTextSymbol{\hebresh}{NHE8}{248}
+\DeclareTextSymbol{\hebshin}{NHE8}{249}
+\DeclareTextSymbol{\hebtav}{NHE8}{250}
+\let\hebsin=\hebshin
+%</NHE8enc>
+% \end{macrocode}
+%
+% Now the definition of \HEH;
%
% \begin{macrocode}
%<*HE8enc>
\DeclareFontEncoding{HE8}{}{}
\DeclareFontSubstitution{HE8}{cmr}{m}{n}
-\DeclareErrorFont{HE8}{cmr}{m}{n}{10}
%</HE8enc>
% \end{macrocode}
% Then we define a few commands in the \HEH{} encoding.
@@ -683,7 +689,7 @@
%</HE8enc>
% \end{macrocode}
%
-% \subsubsection{CHECK HERE FOR HE8 UPDATES}
+% \subsection{CHECK HERE FOR HE8 UPDATES}
%
% Because not everyone can input Hebrew input text directly from
% the keyboard we need to define control sequences for all the
@@ -743,7 +749,6 @@
% ABOUT OTHER MARKS]:
% \begin{macrocode}
%<*HE8enc>
-% \lccode``=`` % probably not needed (Tzafrir)
\DeclareTextSymbol{\hebalef}{HE8}{224}
\DeclareTextSymbol{\hebbet}{HE8}{225}
\DeclareTextSymbol{\hebgimel}{HE8}{226}
@@ -778,97 +783,11 @@
%<+HE8enc>\let\hebsin=\hebshin
% \end{macrocode}
%
-% \subsection{The font definition files (in \HEH{} encoding)}
-%
-% \subsubsection{Hebrew default font}
-%
-% It uses \emph{OmegaHebrew} font for regular font, \emph{Old
-% Jaffa} font for italic shape and small-caps, \emph{Dead Sea}
-% font for bold face, and \emph{Tel-Aviv} for bold-italic
-% \begin{macrocode}
-%<*HE8cmr>
-\DeclareFontFamily{HE8}{cmr}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{cmr}{m}{n}
- {<-> david }{}
-%%%%%%% Italicized shape
-\DeclareFontShape{HE8}{cmr}{m}{it}
- {<-> davidi }{}
-\DeclareFontShape{HE8}{cmr}{m}{sl}
- {<-> davidi }{}
-\DeclareFontShape{HE8}{cmr}{m}{sc}
- {<-> david }{}
-%%%%%%% Bold extended series
-\DeclareFontShape{HE8}{cmr}{bx}{n}
- {<-> davidb }{}
-\DeclareFontShape{HE8}{cmr}{b}{n}
- {<-> davidb }{}
-%%%%%%% Bold extended (Italic) series
-\DeclareFontShape{HE8}{cmr}{bx}{sl}
- {<-> davidbi }{}
-\DeclareFontShape{HE8}{cmr}{bx}{it}
- {<-> davidbi }{}
-%</HE8cmr>
-% \end{macrocode}
-%
-% \subsubsection{Hebrew sans-serif font}
-%
-% Until we have a real sans-serif font in this distribution, this file
-% will remain a copy of the roman fonts definitons above.
-% \begin{macrocode}
-%<*HE8cmss>
-\DeclareFontFamily{HE8}{cmss}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{cmss}{m}{n}
- {<-> nachlieli }{}
-%%%%%%% Italicized shape
-\DeclareFontShape{HE8}{cmss}{m}{it}
- {<-> nachlieli }{}
-\DeclareFontShape{HE8}{cmss}{m}{sl}
- {<-> nachlieli }{}
-\DeclareFontShape{HE8}{cmss}{m}{sc}
- {<-> nachlieli }{}
-%%%%%%% Bold extended series
-\DeclareFontShape{HE8}{cmss}{bx}{n}
- {<-> nachlieli }{}
-\DeclareFontShape{HE8}{cmss}{b}{n}
- {<-> nachlieli }{}
-%%%%%%% Bold extended (Italic) series
-\DeclareFontShape{HE8}{cmss}{bx}{sl}
- {<-> nachlieli }{}
-\DeclareFontShape{HE8}{cmss}{bx}{it}
- {<-> nachlieli }{}
-%</HE8cmss>
-% \end{macrocode}
-%
-% \subsubsection{Hebrew typewriter font}
-%
-% Until we have a real sans-serif font in this distribution, this file
-% will remain a copy of the roman fonts definitons above.
-% \begin{macrocode}
-%<*HE8cmtt>
-\DeclareFontFamily{HE8}{cmtt}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{cmtt}{m}{n}
- {<-> miriam }{}
-%%%%%%% Italicized shape
-\DeclareFontShape{HE8}{cmtt}{m}{it}
- {<-> miriam }{}
-\DeclareFontShape{HE8}{cmtt}{m}{sl}
- {<-> miriam }{}
-\DeclareFontShape{HE8}{cmtt}{m}{sc}
- {<-> miriam }{}
-%%%%%%% Bold extended series
-\DeclareFontShape{HE8}{cmtt}{bx}{n}
- {<-> miriam }{}
-\DeclareFontShape{HE8}{cmtt}{b}{n}
- {<-> miriam }{}
-%%%%%%% Bold extended (Italic) series
-\DeclareFontShape{HE8}{cmtt}{bx}{sl}
- {<-> miriam }{}
-\DeclareFontShape{HE8}{cmtt}{bx}{it}
- {<-> miriam }{}
-%</HE8cmtt>
-% \end{macrocode}
+% \section{The font definition files (in \HEH{} encoding)}
+%
+% more definition files can be found in the culmus package
%
-% \subsubsection{8Bit OmegaHebrew font}
+% \subsection{8Bit OmegaHebrew font}
%
% \emph{OmegaHebrew} is a serif hebrew font created by the omega project
% [FILL IN CREDITS]
@@ -880,192 +799,11 @@
\def\OmegaHebrewscale{0.9}
\DeclareFontFamily{HE8}{OmegaHebrew}{\hyphenchar\font45}
\DeclareFontShape{HE8}{OmegaHebrew}{m}{n}{<-> [\OmegaHebrewscale] OmegaHebrew }{}
-%\endinput % is it needed [tzafrir]
%</HE8OmegaHebrew>
% \end{macrocode}
%
%
-% \subsubsection{8Bit Aharoni font}
-%
-% \emph{Aharoni} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8aharoni>
-\def\Aharoniscale{1.0}
-\DeclareFontFamily{HE8}{aharoni}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{aharoni}{m}{n} {<-> [\Aharoniscale] aharoni}{}
-\DeclareFontShape{HE8}{aharoni}{m}{it} {<-> [\Aharoniscale] aharonii}{}
-\DeclareFontShape{HE8}{aharoni}{m}{sl} {<-> [\Aharoniscale] aharonii}{}
-\DeclareFontShape{HE8}{aharoni}{b}{n} {<-> [\Aharoniscale] aharonib}{}
-\DeclareFontShape{HE8}{aharoni}{bx}{n} {<-> [\Aharoniscale] aharonib}{}
-\DeclareFontShape{HE8}{aharoni}{bx}{it} {<-> [\Aharoniscale] aharonibi}{}
-
-%\endinput % is it needed [tzafrir]
-%</HE8aharoni>
-% \end{macrocode}
-%
-%
-% \subsubsection{8Bit David font}
-%
-% \emph{David} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8david>
-\def\Davidscale{1.0}
-\DeclareFontFamily{HE8}{david}{\hyphenchar\font45}
-
-\DeclareFontShape{HE8}{david}{m}{n} {<-> [\Davidscale] david}{}
-\DeclareFontShape{HE8}{david}{m}{it} {<-> [\Davidscale] davidi}{}
-\DeclareFontShape{HE8}{david}{m}{sl} {<-> [\Davidscale] davidi}{}
-\DeclareFontShape{HE8}{david}{b}{n} {<-> [\Davidscale] davidb}{}
-\DeclareFontShape{HE8}{david}{bx}{n} {<-> [\Davidscale] davidb}{}
-\DeclareFontShape{HE8}{david}{bx}{it} {<-> [\Davidscale] davidbi}{}
-
-
-%\endinput % is it needed [tzafrir]
-%</HE8david>
-% \end{macrocode}
-%
-%
-% \subsubsection{8Bit Drugulin font}
-%
-% \emph{Drugulin} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8drugulin>
-\def\Drugulinscale{1.0}
-\DeclareFontFamily{HE8}{drugulin}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{drugulin}{m}{n} {<-> [\Drugulinscale] drugulinb}{}
-\DeclareFontShape{HE8}{drugulin}{m}{it} {<-> [\Drugulinscale] drugulinbi}{}
-\DeclareFontShape{HE8}{drugulin}{m}{sl} {<-> [\Drugulinscale] drugulinbi}{}
-\DeclareFontShape{HE8}{drugulin}{b}{n} {<-> [\Drugulinscale] drugulinb}{}
-\DeclareFontShape{HE8}{drugulin}{bx}{n} {<-> [\Drugulinscale] drugulinb}{}
-\DeclareFontShape{HE8}{drugulin}{bx}{it} {<-> [\Drugulinscale] drugulinbi}{}
-%\endinput % is it needed [tzafrir]
-%</HE8drugulin>
-% \end{macrocode}
-%
-%
-% \subsubsection{8Bit Ellinia font}
-%
-% \emph{Ellinia} is a sans-serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8ellinia>
-\def\Elliniascale{1.0}
-\DeclareFontFamily{HE8}{ellinia}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{ellinia}{m}{n} {<-> [\Elliniascale] ellinia}{}
-\DeclareFontShape{HE8}{ellinia}{m}{it} {<-> [\Elliniascale] elliniai}{}
-\DeclareFontShape{HE8}{ellinia}{m}{sl} {<-> [\Elliniascale] elliniai}{}
-\DeclareFontShape{HE8}{ellinia}{b}{n} {<-> [\Elliniascale] elliniab}{}
-\DeclareFontShape{HE8}{ellinia}{bx}{n} {<-> [\Elliniascale] elliniab}{}
-\DeclareFontShape{HE8}{ellinia}{bx}{it} {<-> [\Elliniascale] elliniabi}{}
-%\endinput % is it needed [tzafrir]
-%</HE8ellinia>
-% \end{macrocode}
-%
-%
-% \subsubsection{8Bit FrankRuehl font}
-%
-% \emph{FrankRuehl} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8frankruehl>
-\def\FrankRuehlscale{1.0}
-\DeclareFontFamily{HE8}{frank}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{frank}{m}{n} {<-> [\FrankRuehlscale] frank}{}
-\DeclareFontShape{HE8}{frank}{m}{it} {<-> [\FrankRuehlscale] franki}{}
-\DeclareFontShape{HE8}{frank}{m}{sl} {<-> [\FrankRuehlscale] franki}{}
-\DeclareFontShape{HE8}{frank}{b}{n} {<-> [\FrankRuehlscale] frankb}{}
-\DeclareFontShape{HE8}{frank}{bx}{n} {<-> [\FrankRuehlscale] frankb}{}
-\DeclareFontShape{HE8}{frank}{bx}{it} {<-> [\FrankRuehlscale] frankbi}{}
-%\endinput % is it needed [tzafrir]
-%</HE8frankruehl>
-% \end{macrocode}
-%
-%
-% \subsubsection{8Bit KtavYad font}
-%
-% \emph{KtavYad} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8yad>
-\def\KtavYadscale{1.0}
-\DeclareFontFamily{HE8}{yad}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{yad}{m}{n} {<-> [\KtavYadscale] yadi}{}
-\DeclareFontShape{HE8}{yad}{m}{it} {<-> [\KtavYadscale] yadi}{}
-\DeclareFontShape{HE8}{yad}{m}{sl} {<-> [\KtavYadscale] yadi}{}
-\DeclareFontShape{HE8}{yad}{b}{n} {<-> [\KtavYadscale] yadbi}{}
-\DeclareFontShape{HE8}{yad}{bx}{n} {<-> [\KtavYadscale] yadbi}{}
-\DeclareFontShape{HE8}{yad}{bx}{it} {<-> [\KtavYadscale] yadbi}{}
-%\endinput % is it needed [tzafrir]
-%</HE8yad>
-% \end{macrocode}
-%
-% \subsubsection{8Bit MiriamMono font}
-%
-% \emph{MiriamMono} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8miriam>
-\def\MiriamMonoscale{1.0}
-\DeclareFontFamily{HE8}{miriam}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{miriam}{m}{n} {<-> [\MiriamMonoscale] miriam}{}
-\DeclareFontShape{HE8}{miriam}{m}{it} {<-> [\MiriamMonoscale] miriami}{}
-\DeclareFontShape{HE8}{miriam}{m}{sl} {<-> [\MiriamMonoscale] miriami}{}
-\DeclareFontShape{HE8}{miriam}{b}{n} {<-> [\MiriamMonoscale] miriamb}{}
-\DeclareFontShape{HE8}{miriam}{bx}{n} {<-> [\MiriamMonoscale] miriamb}{}
-\DeclareFontShape{HE8}{miriam}{bx}{it} {<-> [\MiriamMonoscale] miriambi}{}
-
-%\endinput % is it needed [tzafrir]
-%</HE8miriam>
-% \end{macrocode}
-%
-%
-% \subsubsection{8Bit Nachlieli font}
-%
-% \emph{Nachlieli} is a serif hebrew font created by the omega project
-% [FILL IN CREDITS]
-% [FILL IN GENERAL SHAPE DESCRIPTION]
-% shapes: [FILL IN]
-%
-% \begin{macrocode}
-%<*HE8nachlieli>
-\def\Nachlieliscale{1.0}
-\DeclareFontFamily{HE8}{nachlieli}{\hyphenchar\font45}
-\DeclareFontShape{HE8}{nachlieli}{m}{n} {<-> [\Nachlieliscale] nachlieli}{}
-\DeclareFontShape{HE8}{nachlieli}{m}{it} {<-> [\Nachlieliscale] nachlielii}{}
-\DeclareFontShape{HE8}{nachlieli}{m}{sl} {<-> [\Nachlieliscale] nachlielii}{}
-\DeclareFontShape{HE8}{nachlieli}{b}{n} {<-> [\Nachlieliscale] nachlielib}{}
-\DeclareFontShape{HE8}{nachlieli}{bx}{n} {<-> [\Nachlieliscale] nachlielib}{}
-\DeclareFontShape{HE8}{nachlieli}{bx}{it} {<-> [\Nachlieliscale] nachlielibi}{}
-%\endinput % is it needed [tzafrir]
-%</HE8nachlieli>
-% \end{macrocode}
-%
-%
-% \subsubsection{Hebrew font switching commands}
+% \subsection{Hebrew font switching commands}
%
% The \pkg{hebfont} package defines a number of high-level commands
% (all starting with |\text..| similar to the standard \LaTeXe{}
diff --git a/macros/latex/contrib/hebrew-fonts/hebfontenc.pdf b/macros/latex/contrib/hebrew-fonts/hebfontenc.pdf
new file mode 100644
index 0000000000..0eb2dfc60a
--- /dev/null
+++ b/macros/latex/contrib/hebrew-fonts/hebfontenc.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/hebrew/hebinp.dtx b/macros/latex/contrib/hebrew-fonts/hebinp.dtx
index a6a9d60c39..9b2525e24d 100644
--- a/macros/latex/contrib/babel-contrib/hebrew/hebinp.dtx
+++ b/macros/latex/contrib/hebrew-fonts/hebinp.dtx
@@ -1,10 +1,10 @@
% \iffalse meta-comment
%
-% Copyright 1989-2005 Johannes L. Braams and any individual authors
-% listed elsewhere in this file. All rights reserved.
-%
-% This file is part of the Babel system.
-% --------------------------------------
+% Hebrew language input encodings.
+% Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
+%
+% Copyright (C) 2023 Udi Fogiel.
+% All rights reserved.
%
% It may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -16,38 +16,26 @@
%
% This work has the LPPL maintenance status "maintained".
%
-% The Current Maintainer of this work is Johannes Braams.
+% The Current Maintainer of this work is Udi Fogiel.
%
-% The list of all files belonging to the Babel system is
-% given in the file `manifest.bbl. See also `legal.bbl' for additional
-% information.
%
% The list of derived (unpacked) files belonging to the distribution
% and covered by LPPL is defined by the unpacking scripts (with
% extension .ins) which are part of the distribution.
% \fi
-% \CheckSum{446}
%
% \iffalse
%<si960> \ProvidesFile{si960.def}
%<8859-8> \ProvidesFile{8859-8.def}
%<cp862> \ProvidesFile{cp862.def}
%<cp1255> \ProvidesFile{cp1255.def}
+%<utf8> \ProvidesFile{nhe8.dfu}
%<*driver>
\ProvidesFile{hebinp.drv}
%</driver>
% \fi
% \ProvidesFile{hebinp.dtx}
- [2004/02/20 v1.1b Hebrew input encoding file]
-% \iffalse meta-comment
-%% File `hebinp.dtx' for installing the input hebrew encodings.
-%% Copyright (C) 1997 -- 2005 Boris Lavva.
-%
-%% Babel package for LaTeX version 2e
-%% Copyright (C) 1989 -- 2005 by Johannes Braams,
-%% TeXniek
-%% All rights reserved.
-% \fi
+ [2023/08/17 v1.2a Hebrew input encoding file]
%
% \providecommand\dst{\textsc{docstrip}}
% \GetFileInfo{hebinp.dtx}
@@ -99,6 +87,8 @@
% \item |cp1255| MS Windows 1255 (hebrew) code page which is similar to
% 8859-8. In addition to hebrew letters, this encoding contains
% also hebrew vowels and dots (nikud).
+% \item |utf8| utf8 input is availiable for the
+% NHE8 font encoding.
% \end{itemize}
% Each encoding has an associated |.def| file, for example
% |8859-8.def| which defines the behaviour of each input character,
@@ -149,7 +139,7 @@
%<*driver>
\documentclass{ltxdoc}
\title{Hebrew input encodings for use with \LaTeXe}
-\author{Boris Lavva}
+\author{Boris Lavva \and Udi Fogiel}
\date{Printed \today}
\begin{document}
\maketitle
@@ -251,8 +241,8 @@
%
% \subsection{The SI-960 encoding}
%
-%% The SI-960 or ``old-code'' encoding only allows characters in the
-%% range 32--127, so we only need to provide an empty |si960.def| file.
+% The SI-960 or ``old-code'' encoding only allows characters in the
+% range 32--127, so we only need to provide an empty |si960.def| file.
%
% \subsection{The ISO 8859-8 encoding and the MS Windows cp1255 encoding}
%
@@ -524,6 +514,73 @@
%</8859-8>
% \end{macrocode}
%
+% \subsection{utf8 encoding}
+%
+% \begin{macrocode}
+%<*utf8>
+\DeclareUnicodeCharacter{20AA}{\shekel}
+
+%% Alphabet
+\DeclareUnicodeCharacter{05D0}{\hebalef}
+\DeclareUnicodeCharacter{05D1}{\hebbet}
+\DeclareUnicodeCharacter{05D2}{\hebgimel}
+\DeclareUnicodeCharacter{05D3}{\hebdalet}
+\DeclareUnicodeCharacter{05D4}{\hebhe}
+\DeclareUnicodeCharacter{05D5}{\hebvav}
+\DeclareUnicodeCharacter{05D6}{\hebzayin}
+\DeclareUnicodeCharacter{05D7}{\hebhet}
+\DeclareUnicodeCharacter{05D8}{\hebtet}
+\DeclareUnicodeCharacter{05D9}{\hebyod}
+\DeclareUnicodeCharacter{05DA}{\hebfinalkaf}
+\DeclareUnicodeCharacter{05DB}{\hebkaf}
+\DeclareUnicodeCharacter{05DC}{\heblamed}
+\DeclareUnicodeCharacter{05DD}{\hebfinalmem}
+\DeclareUnicodeCharacter{05DE}{\hebmem}
+\DeclareUnicodeCharacter{05DF}{\hebfinalnun}
+\DeclareUnicodeCharacter{05E0}{\hebnun}
+\DeclareUnicodeCharacter{05E1}{\hebsamekh}
+\DeclareUnicodeCharacter{05E2}{\hebayin}
+\DeclareUnicodeCharacter{05E3}{\hebfinalpe}
+\DeclareUnicodeCharacter{05E4}{\hebpe}
+\DeclareUnicodeCharacter{05E5}{\hebfinaltsadi}
+\DeclareUnicodeCharacter{05E6}{\hebtsadi}
+\DeclareUnicodeCharacter{05E7}{\hebqof}
+\DeclareUnicodeCharacter{05E8}{\hebresh}
+\DeclareUnicodeCharacter{05E9}{\hebshin}
+\DeclareUnicodeCharacter{05EA}{\hebtav}
+
+%% niqqud
+\DeclareUnicodeCharacter{05B0}{\sheva}
+\DeclareUnicodeCharacter{05B1}{\hatafsegol}
+\DeclareUnicodeCharacter{05B2}{\hatafpatah}
+\DeclareUnicodeCharacter{05B3}{\hatafqamats}
+\DeclareUnicodeCharacter{05B4}{\hiriq}
+\DeclareUnicodeCharacter{05B5}{\tsere}
+\DeclareUnicodeCharacter{05B6}{\segol}
+\DeclareUnicodeCharacter{05B7}{\patah}
+\DeclareUnicodeCharacter{05B8}{\qamats}
+\DeclareUnicodeCharacter{05B9}{\holam}
+\DeclareUnicodeCharacter{05BA}{\holam}
+\DeclareUnicodeCharacter{05BB}{\qubuts}
+\DeclareUnicodeCharacter{05BC}{\dagesh}
+\DeclareUnicodeCharacter{05BD}{\meteg}
+\DeclareUnicodeCharacter{05BE}{\maqaf}
+\DeclareUnicodeCharacter{05BF}{\rafe}
+\DeclareUnicodeCharacter{05C0}{\paseq}
+\DeclareUnicodeCharacter{05C1}{\shindot}
+\DeclareUnicodeCharacter{05C2}{\sindot}
+\DeclareUnicodeCharacter{05C3}{\sofpasuq}
+
+%% ligatures
+\DeclareUnicodeCharacter{05F0}{\doublevav}
+\DeclareUnicodeCharacter{05F1}{\vavyod}
+\DeclareUnicodeCharacter{05F2}{\doubleyod}
+
+\DeclareUnicodeCharacter{05F3}{\geresh}
+\DeclareUnicodeCharacter{05F4}{\gershayim}
+%</utf8>
+% \end{macrocode}
+%
% Finally, we reset the category code of the |@| sign at the end of
% all |.def| files.
% \begin{macrocode}
diff --git a/macros/latex/contrib/hebrew-fonts/hebinp.pdf b/macros/latex/contrib/hebrew-fonts/hebinp.pdf
new file mode 100644
index 0000000000..eff7fff5a2
--- /dev/null
+++ b/macros/latex/contrib/hebrew-fonts/hebinp.pdf
Binary files differ
diff --git a/macros/latex/contrib/hebrew-fonts/hebrew-fonts.ins b/macros/latex/contrib/hebrew-fonts/hebrew-fonts.ins
new file mode 100644
index 0000000000..68660e0b3e
--- /dev/null
+++ b/macros/latex/contrib/hebrew-fonts/hebrew-fonts.ins
@@ -0,0 +1,111 @@
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the doc files in this package when run through
+%% LaTeX or TeX.
+%%
+%% Hebrew language font and input encodings, and additional packages.
+%% Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
+%%
+%% Copyright (C) 2023 Udi Fogiel.
+%% All rights reserved.
+%%
+%% It may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3 of this license or
+%% (at your option) any later version. The latest version of this
+%% license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX version
+%% 2003/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% The Current Maintainer of this work is Udi Fogiel
+%%
+%% The list of derived (unpacked) files belonging to the distribution
+%% and covered by LPPL is defined by the unpacking scripts (with
+%% extension .ins) which are part of the distribution.
+%%
+%% --------------- start of docstrip commands ------------------
+%%
+\def\batchfile{hebrew-fonts.ins}
+\def\filedate{2023/08/17}
+\input docstrip.tex
+
+{\ifx\generate\undefined
+ \Msg{**********************************************}
+ \Msg{*}
+ \Msg{* This installation requires docstrip}
+ \Msg{* version 2.3c or later.}
+ \Msg{*}
+ \Msg{* An older version of docstrip has been input}
+ \Msg{*}
+ \Msg{**********************************************}
+ \errhelp{Move or rename old docstrip.tex.}
+ \errmessage{Old docstrip in input path}
+ \batchmode
+ \csname @@end\endcsname
+\fi}
+
+\declarepreamble\mainpreamble
+
+This is a generated file.
+
+Hebrew language font and input encodings, and additional packages.
+Copyright (C) 1997 -- 2005 Boris Lavva and Johannes Braams.
+
+Copyright (C) 2023 Udi Fogiel.
+ All rights reserved.
+
+It may be distributed and/or modified under the conditions of the
+LaTeX Project Public License, either version 1.3 of this license or
+(at your option) any later version. The latest version of this
+license is in
+ http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of LaTeX version
+2003/12/01 or later.
+
+This work has the LPPL maintenance status "maintained".
+
+The Current Maintainer of this work is Udi Fogiel
+
+The list of derived (unpacked) files belonging to the distribution
+and covered by LPPL is defined by the unpacking scripts (with
+extension .ins) which are part of the distribution.
+\endpreamble
+
+\keepsilent
+
+\askforoverwritefalse
+
+\usedir{tex/latex/hebrew-fonts}
+
+
+\Msg{*** Generating hebrew font encoding files ***}
+\usepreamble\mainpreamble
+\generate{\file{lheenc.def}{\from{hebfontenc.fdd}{LHEenc}}
+ \file{lhecmr.fd}{\from{hebfontenc.fdd}{LHEcmr,nowarn}}
+ \file{lhecmss.fd}{\from{hebfontenc.fdd}{LHEcmss,nowarn}}
+ \file{lhecmtt.fd}{\from{hebfontenc.fdd}{LHEcmtt,nowarn}}
+ \file{lheclas.fd}{\from{hebfontenc.fdd}{LHEclas,nowarn}}
+ \file{he8enc.def}{\from{hebfontenc.fdd}{HE8enc}}
+ \file{nhe8enc.def}{\from{hebfontenc.fdd}{NHE8enc}}
+ \file{he8OmegaHebrew.fd}{\from{hebfontenc.fdd}{HE8OmegaHebrew,nowarn}}
+ \file{lheshold.fd}{\from{hebfontenc.fdd}{LHEshold,nowarn}}
+ \file{lheshscr.fd}{\from{hebfontenc.fdd}{LHEshscr,nowarn}}
+ \file{lheshstk.fd}{\from{hebfontenc.fdd}{LHEshstk,nowarn}}
+ \file{lhefr.fd}{\from{hebfontenc.fdd}{LHEfr,nowarn}}
+ \file{lhecrml.fd}{\from{hebfontenc.fdd}{LHEcrml,nowarn}}
+ \file{lheredis.fd}{\from{hebfontenc.fdd}{LHEredis,nowarn}}
+ \file{hebfont.sty}{\from{hebfontenc.fdd}{hebfont}}
+ }
+
+\Msg{*** Generating hebrew input encoding files ***}
+\usepreamble\mainpreamble
+\generate{\file{8859-8.def}{\from{hebinp.dtx}{8859-8}}
+ \file{cp1255.def}{\from{hebinp.dtx}{cp1255}}
+ \file{cp862.def}{\from{hebinp.dtx}{cp862}}
+ \file{si960.def}{\from{hebinp.dtx}{si960}}
+ \file{nhe8enc.dfu}{\from{hebinp.dtx}{utf8}}
+ }
+
+\endinput