# Tag Info

16

You can modify the texmf.cnf variables error_line and max_print_line, adding to the "local" texmf.cnf file, whose location depends on the distribution you're using; for TeX Live it is /usr/local/texlive/2011/texmf.cnf and the lines to be added are max_print_line=1000 error_line=254 half_error_line=238 The first number is actually arbitrary, but 1000 ...

12

In MiKTeX you can use the option --max-print-line=140 to get longer log lines. This will also affect the output in the command line window but only if have enlarged it before.

11

This has nothing to do with \typeout except insofar as its argument is fully expanded because of \write, as you noted. You could ask the same of \edef, and the answer would be to use a sufficiently elaborate combination of \expandafter, \noexpand, and \unexpanded to force each token to expand the desired number of times. For example: *\def\a{\b} ...

11

From LuaTeX Reference, beta 0.70.1, section 2.3 UNICODE text support: Output to the terminal uses ^^ notation for the lower control range (c < 32), with the exception of ^^I, ^^J and ^^M. These are considered 'safe' and therefore print-as-is. And in the manual are the terminal/log explicitely excluded for process_output_buffer: 4.1.3.2 ...

10

As @egreg says, it looks like a bug to me. For writing to files you can modify a lua callback but unfortunately the callback (as documented) is not called when writing to the terminal. \edef\foo{\string\^^M} {\catcode\^=12 \directlua{ callback.register( "process_output_buffer", function (s) snew, n = string.gsub(s,"\string\r","^^M") return snew end) }} ...

9

There are two issues: LaTeX has assigned catcode 15 for character ^^1b (decimal 27). The use of ^^1b triggers then the error message: ! Text line contains an invalid character. Thus the catcode for the character needs to be changed (see the example below). TeX usually prints control characters with the ^^-notation. TeX compilers can have command line ...

9

The best way is outlined in Passing parameters to a document, which should be better known. If the document starts as \ifcase\flag\relax <what to do when \flag=0>\or <what to do when \flag=1>\or <what to do when \flag=2>\or ... <what to do when \flag=n>\else <what to do otherwise>\fi we are free to choose among ...

9

The command tex '\empty {Hello World!}\bye' only works on a Unix-like terminal, for Windows command prompt, the ' characters has to be replaced by " double quotes, it is tex "\empty {Hello World!}\bye" In either case, a file called texput.dvi is generated, if pdftex is used, the file will be called texput.pdf then. This is basically a test whether ...

7

{\uccodeA=97 \uppercase{\typeout{== A ==}}} will typeout the character with character code 97

7

This is not garbage, but very important information. All text files that are input are recorded, along with the image files that are imported and included in the final PDF. A .fd file contains the necessary info to use a font; in your case t1cmss.fd contains the information for European Modern Sans (T1 encoding) and t1fi4.fd is for Inconsolata. TeX has no ...

6

If you actually want to generate the error in an expansion only context such as a \write or a PS \special the usual way is just to use an undefined command such as \ERROR You can not trigger any other error from there (and LaTeX3 can't really change that). ! Undefined control sequence. l.1 ...ptingToCallUndefinedPropertyunknownproperty ...

6

This space is, as far as I know, impossible to avoid between two separate \messages. The solution would be to first combine all the contiguous material in one macro (adding material with \edef\foo{\foo <material>}), and then doing \message{\foo}. To really know where the space comes from, look in tex.web, documented source code of TeX. The relevant ...

5

You shouldn't invoke latex (or pdflatex) from the folder that contains the executables, because that folder is (or at least should be...) writeable only by root. Thus, latex has to crash because it can't create the .log, .aux, and .pdf (or .dvi) files to the executables folder. You may verify this by typing sudo ./latex /Users/fluid/Desktop/sample.tex ...

4

\show uses the same internal routines that TeX employs for error messages. Judging now this may seem a design error, but one always has to keep in mind that TeX was released in 1982, when computer memory was quite scarcer than it is today. A front-end like Texmaker could, in principle, distinguish between diagnostic messages given by \show (or \showthe) and ...

4

.ins and .dtx are source files, they are usually sorted into the source subtree of a TDS tree (texmf/source/latex/babel/babel.ins). The files in a TDS tree are organized in such a way, that source, documentation files are not searched, when TeX looks for its input/package/class files. This reduces the search space and makes file look-up faster. But on the ...

3

I'm answering to remove this question from the unanswered queue. You should set TeX-show-compilation to t. You can do that by adding the following code to your .emacs: (setq TeX-show-compilation t)

3

From the comments received so far, and my own conclusions after reading the LuaTeX manual, I'm now convinced that the log file cannot be read reliably from lua code being run in the same document whose log file I'm trying to read. Opening that file from lua and reading with file.read() is not reliable because the same file is open and being written in by ...

3

I'm not sure if this exactly what you need, but with help of grep you can do something. Let's say I want to compile my tex file via terminal. pdflatex Untitled.tex does the job. However, I can pipe the output of this into grep and use color feature of grep to highlight a word (in this example "pdf") pdflatex Untitled.tex | grep -E --color "pdf|$" The ... 3 The texio library provided by luatex provides more control over message formatting and does not insert a space: \def\mymessage#1{\directlua{texio.write("\luaescapestring{#1}")}} \mymessage{.}\mymessage{.}\mymessage{.} \bye The result is: grendel:io sharpie$ luatex io.tex This is LuaTeX, Version beta-0.60.2-2010071218 (TeX Live 2010) (rev 3736) ...

3

Well, here is a partial answer - does everything, (except I don't know how to output ASCII code as character on terminal in Latex (\char apparently typesets, and it's not expandable, so cannot be used in \typeout) EDIT: Fixed thanks to uccode trick by @DavidCarlisle in comments.), except the "reverse lookup". (EDIT2: See also the texref tool (not the ...

3

If you have hex value rather than the ascii code value then you can use ^^61 to represent a. The hex digits have to be in lowercase (for the letters a-f). If you have only the ascii code number then you have to build your own table (if you want to mix such output with other material) or use the ingenious trick with \uccodeby David, but the latter doesn't ...

2

The boolean variable texconfig.trace_file_names is only in effect when you disable the kpathsea library with texconfig.kpse_init = false. You can disable the kpathsea library in the ini file called with luatex --lua <inifile> .... See below. A non working example (it is hard to replace kpathsea in a few lines of code) is like this. Call with lualatex ...

2

one way i've found involves using \write18. i created a bash script: #!/usr/bin/env bash echo -e "\x1b$*\x1b[0m" and then in my TeX i do \immediate\write18{esc "[38;05;54mhelo Indigo"} in other words, i 'outsourced' printing the problematic \x1b escape character. now i wonder whether there's a solution that does not include an external script. 2 What I can see from the terminal output is the following: No file MSP430.aux. This might be the first time you're compiling MSP430.tex or have erased MSP430.aux prior to compiling. This might be automated if you have \nofiles as part of your preamble. (/usr/share/texmf/tex/latex/tipa/t3cmr.fd) A font definition file loaded as a result of ... 1 The main issue is whether the font used for typesetting has the needed characters in it. The example below works on a linux system. Using Microsoft's truetype fonts also works using \setmonofont{Courier New}, instead. \documentclass{article} \usepackage{fontspec} \setmonofont{FreeMono} \begin{document} \begin{verbatim} . ├── Maildir/ └── scripts/ ... 1 Try pressing ENTER after i (but what you've tried works for me), and the insert the correction:$ cat foo.tex \documentclass{article} \begin{document} \LaTEX \end{document} \$ pdflatex foo.tex This is pdfTeX, Version 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian) restricted \write18 enabled. entering extended mode (./foo.tex LaTeX2e <2011/06/27> Babel ...

Only top voted, non community-wiki answers of a minimum length are eligible