• Stars
    star
    413
  • Rank 101,342 (Top 3 %)
  • Language
    Perl
  • Created over 9 years ago
  • Updated about 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rewrite of some core scripts in TeX Live from shell to perl

texlive-rewrite

Some of the core scripts of TeX Live are still written in shell, taken from Thomas Esser's teTeX. Since we would like to have the same scripts used on all supported platforms, that includes Windows, we are planning to rewrite these scripts in perl or texlua.

Currently only updmap has been rewritten (and extended), but we want to do the same with mktexlsr and fmtutils, as well as the depending scripts.

Contributions are welcome. Rewrite of some core scripts in TeX Live from shell to perl

Aims

Our aims are:

  • use the same scripts on all platforms, not separate implementations
  • make each program available as perl function / module and cmd line prog
  • separate out the necessary common functions into one file (not TLUtils.pm) so that it can be used in other circumstances, too (one selfcontained distribution!)
  • add -sys switch to all programs

Scripts involved:

  • main scripts (with cmd line interface) mktexlsr fmtutil updmap (partially done) texconfig (via wrapper for tlmgr?)
  • supporting scripts in texmf-dist/web2c/ mktex.opt (a script!) mktexdir(.opt) mktexnam(.opt) mktexupd
  • supporting scripts in texmf-dist/texconfig/ tcfmgr
  • supporting scripts in texmf-dist/scripts/texlive/ kpsetool.sh kpsewhere.sh texlinks.sh

mktexlsr/mktexupd

help output

Rebuild ls-R filename databases used by TeX. If one or more arguments DIRS are given, these are used as the directories in which to build ls-R. Else all directories in the search path for ls-R files ($TEXMFDBS) are used.

Options:
  --dry-run  do not actually update anything
  --help     display this help and exit 
  --quiet    cancel --verbose
  --silent   same as --quiet
  --verbose  explain what is being done
  --version  output version information and exit

If standard input is a terminal, --verbose is on by default.

mktexupd

adds entries without reading the rest of the tree

Operation of mktexlsr:

  • cmd line options
  • get list of trees to rebuild: cmd line kpsewhich --show-path=ls-R | tr : '\n' or so (why not kpsewhich -var-value TEXMFDBS?)
  • for each tree . make it absolute tree . check for ls-R versus ls-r, use what is there, or create ls-R . get link target if it is a link . use kpsestat and chmod to change permissions of new file according to the upper level dir . check for magic string (new and old) . check for writability . add toplevel ./: at top . run ls -LRa and do some sed magic remove empty parts, remove VCS dirs

perl option:

use File::Find (core module)

find(\&wanted, @directories)

More Repositories

1

kobo-ja-dict-enhance

Enhance built-in Japanese dictionaries from Kobo with English definitions
Perl
428
star
2

cinnadock-p2

For of the Cinnadock Plus plugin to update it to current Cinnamon
JavaScript
423
star
3

debian-gwaei

C
421
star
4

debian-graph

Representing Debian UDD in a graph database
Perl
421
star
5

jfontmaps

dvipdfmx map files and support programs for Japanese font setup
Perl
420
star
6

piwigopress

Piwigo-Wordpress integration
PHP
420
star
7

build-tlptexlive

scripts and patches for building tlptexlive
Shell
420
star
8

debian-speg

Python
420
star
9

eagloss

multi script chinese glossary
TeX
420
star
10

debian-pycson

Python
419
star
11

debian-mu

C++
419
star
12

debian-xxhash

C
418
star
13

pgf-blur

Development of pg-blur package
TeX
417
star
14

nautilus-sendto-scripts

Development of a nautilus-sendto extension that allows sending to user-configurable scripts
Gettext Catalog
417
star
15

slick-google-map-plugin

Free Google map Wordpress plugin
PHP
416
star
16

ptex2pdf

convert Japanese TeX documents to pdf
Lua
415
star
17

sony-control-center

Fork of the sony-f11-vaio-control-center to work with newer kernels and with all Sony laptops supported by the sony-laptop kernel module.
C++
412
star
18

sony-laptop-zseries

adapted kernel module for zseries laptops
C
412
star
19

rfkill-applet

general rfkill applet for the gnome panel written in python
Python
411
star
20

tlmgr-electron-react

tlmgr gui using electron and react
JavaScript
411
star
21

tlptexlive-root

packaging stuff for tlptexlive
Perl
410
star
22

okular-debian

packaging okular for debian
C++
163
star
23

elixir-debian

Debian packaging of Elixir
Elixir
158
star
24

acme-debian

Debian packaging of python acme
Python
158
star
25

certbot-debian

Debian packaging of certbot
Python
157
star
26

qpdfview-debian

Debian packaging of qpdfview
HTML
152
star
27

mupdf-debian

packaging of mupdf for debian
C
151
star
28

pymupdf-debian

Packaging of pymupdf for Debian
SWIG
150
star
29

rspamd-debian

debian packaging of rspamd
C
150
star
30

susi-assistant

SUSI Smart Assistant
Python
110
star
31

rssguard-debian

Debian packaging of RSS Guard
C++
6
star