summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/tex/texdeffont.c
diff options
context:
space:
mode:
authorDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
committerDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
commitc6101f91d071883b48b1b4b51e5eba0f36d9a78d (patch)
tree1bf7f5a881d7a4f5c5bf59d0b2821943dd822372 /Build/source/texk/web2c/luatexdir/tex/texdeffont.c
parent07ee7222e389b0777456b427a55c22d0e6ffd267 (diff)
French translation for tlmgr updated
git-svn-id: svn://tug.org/texlive/trunk@57912 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/luatexdir/tex/texdeffont.c')
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/texdeffont.c247
1 files changed, 0 insertions, 247 deletions
diff --git a/Build/source/texk/web2c/luatexdir/tex/texdeffont.c b/Build/source/texk/web2c/luatexdir/tex/texdeffont.c
deleted file mode 100644
index 1ec4b12bf06..00000000000
--- a/Build/source/texk/web2c/luatexdir/tex/texdeffont.c
+++ /dev/null
@@ -1,247 +0,0 @@
-/*
-
-texdeffont.w
-
-Copyright 2008-2010 Taco Hoekwater <taco@@luatex.org>
-
-This file is part of LuaTeX.
-
-LuaTeX is free software; you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free
-Software Foundation; either version 2 of the License, or (at your
-option) any later version.
-
-LuaTeX 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. See the GNU Lesser General Public
-License for more details.
-
-You should have received a copy of the GNU General Public License along
-with LuaTeX; if not, see <http://www.gnu.org/licenses/>.
-
-*/
-
-#include "ptexlib.h"
-
-/*tex
-
-When the user defines \.{\\font\\f}, say, \TeX\ assigns an internal number to the
-user's font~\.{\\f}. Adding this number to |font_id_base| gives the |eqtb|
-location of a ``frozen'' control sequence that will always select the font.
-
-The variable |a| in the following code indicates the global nature of the value
-to be set. It's used in the |define| macro. Here we're never global.
-
-There's not much scanner code here because the other scanners are defined where
-they make most sense.
-
-*/
-
-int font_bytes;
-
-void set_cur_font(internal_font_number f)
-{
- int a = 0;
- define(cur_font_loc, data_cmd, f);
-}
-
-/*tex
-
- This prints a scaled real, rounded to five digits.
-
-*/
-
-static char *scaled_to_string(scaled s)
-{
- static char result[16];
- int n, k;
- /*tex The amount of allowable inaccuracy: */
- scaled delta;
- k = 0;
- if (s < 0) {
- /*tex Only print the sign, if negative */
- result[k++] = '-';
- s = -s;
- }
- {
- int l = 0;
- char digs[8] = { 0 };
- n = s / unity;
- /*tex Process the integer part: */
- do {
- digs[l++] = (char) (n % 10);
- n = n / 10;;
- } while (n > 0);
- while (l > 0) {
- result[k++] = (char) (digs[--l] + '0');
- }
- }
- result[k++] = '.';
- s = 10 * (s % unity) + 5;
- delta = 10;
- do {
- if (delta > unity) {
- /*tex Round the last digit: */
- s = s + 0100000 - 050000;
- }
- result[k++] = (char) ('0' + (s / unity));
- s = 10 * (s % unity);
- delta = delta * 10;
- } while (s > delta);
- result[k] = 0;
- return (char *) result;
-}
-
-void tex_def_font(small_number a)
-{
- /*tex The user's font identifier. */
- pointer u;
- /*tex This runs through existing fonts. */
- internal_font_number f;
- /*tex The name for the frozen font identifier. */
- str_number t, d;
- /*tex Thos holds the |selector| setting. */
- int old_setting;
- /*tex Stated `at' size, or negative of scaled magnification. */
- scaled s = -1000;
- /*tex The natural direction of the font. */
- int natural_dir = -1;
- char *fn;
- if (job_name == 0) {
- /*tex Avoid confusing \.{texput} with the font name. */
- open_log_file();
- }
- get_r_token();
- u = cur_cs;
- if (a >= 4) {
- geq_define(u, set_font_cmd, null_font);
- } else {
- eq_define(u, set_font_cmd, null_font);
- }
- scan_optional_equals();
- /*tex Get the next non-blank non-call token. */
- do {
- get_x_token();
- } while ((cur_cmd == spacer_cmd) || (cur_cmd == relax_cmd));
-
- if (cur_cmd != left_brace_cmd) {
- back_input();
- scan_file_name();
- if (cur_area != get_nullstr() || cur_ext != get_nullstr()) {
- /*tex
- Have to do some rescue-ing here, fonts only have a name, no area
- nor extension.
- */
- old_setting = selector;
- selector = new_string;
- if (cur_area != get_nullstr()) {
- print(cur_area);
- flush_str(cur_area);
- }
- if (cur_name != get_nullstr()) {
- print(cur_name);
- flush_str(cur_name);
- }
- if (cur_ext != get_nullstr()) {
- print(cur_ext);
- flush_str(cur_ext);
- }
- selector = old_setting;
- cur_area = get_nullstr();
- cur_name = make_string();
- cur_ext = get_nullstr();
- }
- } else {
- back_input();
- (void) scan_toks(false, true);
- old_setting = selector;
- selector = new_string;
- token_show(def_ref);
- selector = old_setting;
- flush_list(def_ref);
- cur_area = get_nullstr();
- cur_name = make_string();
- cur_ext = get_nullstr();
- }
- /*tex
- Scan the font size specification. The next variable keeps |cur_name| from
- being changed
- */
- name_in_progress = true;
- if (scan_keyword("at")) {
- /*tex Put the positive `at' size into |s|. */
- scan_normal_dimen();
- s = cur_val;
- if ((s <= 0) || (s >= 01000000000)) {
- char err[256];
- const char *errhelp[] = {
- "I can only handle fonts at positive sizes that are",
- "less than 2048pt, so I've changed what you said to 10pt.",
- NULL
- };
- snprintf(err, 255, "Improper `at' size (%spt), replaced by 10pt", scaled_to_string(s));
- tex_error(err, errhelp);
- s = 10 * unity;
- }
- } else if (scan_keyword("scaled")) {
- scan_int();
- s = -cur_val;
- if ((cur_val <= 0) || (cur_val > 32768)) {
- char err[256];
- const char *errhelp[] = {
- "The magnification ratio must be between 1 and 32768.",
- NULL
- };
- snprintf(err, 255, "Illegal magnification has been changed to 1000 (%d)", (int) cur_val);
- tex_error(err, errhelp);
- s = -1000;
- }
- }
- /*tex
- There is no real reason to support this obsolete key as there are no useful
- fonts out there so let's get rid of this overhead. This also means that
- |natural_dir| can go away.
- */
- /*
- if (scan_keyword("naturaldir")) {
- scan_direction();
- natural_dir = cur_val;
- }
- */
- name_in_progress = false;
- fn = makecstring(cur_name);
- f = read_font_info(u, fn, s, natural_dir);
- xfree(fn);
- equiv(u) = f;
- eqtb[font_id_base + f] = eqtb[u];
- /*tex
-
- This is tricky: when we redefine a string we loose the old one. So this
- will change as it's only used to display the |\fontname| so we can store
- that with the font.
-
- */
- d = cs_text(font_id_base + f);
- t = (u >= null_cs) ? cs_text(u) : maketexstring("FONT");
- if (!d) {
- /*tex We have a new string. */
- cs_text(font_id_base + f) = t;
- } else if ((d!=t) && str_eq_str(d,t)){
- /*tex We have a duplicate string. */
- flush_str(t);
- } else if (d!=t){
- d = search_string(t);
- if (d) {
- /*tex We have already such a string. */
- cs_text(font_id_base + f) = d;
- flush_str(t);
- } else {
- /*tex The old value is lost but still in the pool. */
- cs_text(font_id_base + f) = t;
- }
- }
- if (cur_name == str_ptr-1) {
- flush_str(cur_name);
- cur_name = get_nullstr();
- }
-}