GithubHelp home page GithubHelp logo

blopentype's Introduction

blopentype

Basic LuaTeX OpenType Manager

Description

In his terse documentation for PiTeX, Paul Isambert lists, among the "mandatory PiTeX" files, the following:

file name Description
fonts.ptx Interface for fonts; relies on the next file.
fonts.ptxlua The Lua fontloader; should become independant some day.
foundry-settings.lua Default settings for the fontloader.

Well: the day has come, and the fontloader has now become blopentype: a Basic LuaTeX OpenType Manager.

The basic code is copied almost verbatim from Isambert's PiTeX, save the adoption of the canonical filename extensions tex for LuaTeX macros, lua for LuaTeX scripts, and blot-sets.lua for the basic basic settings. The required dependencies are Isambert packages texapi, YaX and Gates, as stated in DEPENDS.txt.

You may find an example of usage in the blottest.[tex|pdf] files, and some basic documentation in blopentype.md.

Bugs and caveats

The macros are still barely documented, and massively keep the names of their parent (PiTeX) package; that may be fixed some day.

The font database is stored at $TEXMFLOCAL/texmf/luatex/blotfonts/readable.txt. It is updated automatically after installing and using new fonts, but you may edit it, or else delete/rename(backup) the database by hand, and rerun LuaTeX to rebuild it.

The character table for each typeface is stored in the luatex/blotfonts directory as a flat lua file; it would be nice to have it compiled as a luac/luc file to save some space, some day.

Good luck, and happy LuaTeXing

Authors

(C) 2022-2023 Paul Isambert (author) and Luis Rivera (maintainer).

LaTeX Project Public License, LPPL Version 1.3c 2008-05-04 or MIT License

blopentype's People

Contributors

jarnosz avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

blopentype's Issues

simple example does not work on Windows

On a Windows 10 machine with an up-to-date texlive, I cannot get the example file blottest.tex to work. Running luatex blottest.tex results in

This is LuaTeX, Version 1.17.0 (TeX Live 2023)
 restricted system commands enabled.
(./blottest.tex (c:/texlive/2023/texmf-dist/tex/luatex/blopentype/blot.tex
This is blopentype, v0.0.0 December 2022
(c:/texlive/2023/texmf-dist/tex/generic/luatex85/luatex85.sty)
(c:/texlive/2023/texmf-dist/tex/generic/yax/yax.tex
(c:/texlive/2023/texmf-dist/tex/generic/texapi/texapi.tex))
(c:/texlive/2023/texmf-dist/tex/generic/gates/gates.tex
(c:/texlive/2023/texmf-dist/tex/generic/texapi/texapi.tex))
(c:/texlive/2023/texmf-dist/tex/luatex/blopentype/blot-lua.tex)
(c:/texlive/2023/texmf-dist/tex/luatex/blopentype/blot-files.tex)
(c:/texlive/2023/texmf-dist/tex/luatex/blopentype/blot-fonts.tex...ive/2023/tex
mf-dist/tex/luatex/blopentype/blot-fonts.lua:257: attempt to index a nil value
(local 'fi')
stack traceback:
        ...ive/2023/texmf-dist/tex/luatex/blopentype/blot-fonts.lua:257: in upvalue 'e
xtract_font'
        ...ive/2023/texmf-dist/tex/luatex/blopentype/blot-fonts.lua:293: in upvalue 'c
heck_fonts'
        ...ive/2023/texmf-dist/tex/luatex/blopentype/blot-fonts.lua:289: in upvalue 'c
heck_fonts'
        ...ive/2023/texmf-dist/tex/luatex/blopentype/blot-fonts.lua:289: in local 'che
ck_fonts'
        ...ive/2023/texmf-dist/tex/luatex/blopentype/blot-fonts.lua:366: in main chunk

        [C]: in function 'dofile'
        [\directlua]:1: in main chunk.
\inputltcfile ...ua {dofile(kpse.find_file("#1"))}

l.1 \inputltcfile blot-fonts.lua

?

in the terminal. Hitting "Enter" through this prompt results in a bunch of errors. I thought perhaps this is due to blopentype not finding the font Palatino Linotype (which is installed), but I get the same issue with the file

\input blot
hello world!
\bye

I also tried with the latest version from Github but the same issue arises. Am I missing something obvious or is something wrong with the configuration for Windows?

avoiding new extensions?

Hi Luis - before I install blopentype in TeX Live, let me ask about the possibility of avoiding the new extensions (.ltx and .ltm) that you invented. Every new extension means more infrastructure setup, more confusion about "what does it mean", etc. There are already far too many LuaTeX-related extensions, so adding more for a couple of files seems suboptimal.

How about just blot-files-mac.lua and blot-fonts-script.lua, etc., if you want to make the distinction? I don't really understand what you mean by "scripts", either. Clearly they are not executables for the command line. (Which I am glad about. :)

THanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.