%% %% This is file `l3messages.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% l3messages.dtx (with options: `package') %% %% %% EXPERIMENTAL CODE %% %% Do not distribute this file without also distributing the %% source files specified above. %% %% Do not distribute a modified version of this file. %% %% %% File: l3messages.dtx Copyright (C) 1990-2007 LaTeX3 project %% %% It may be distributed and/or modified under the conditions of the %% LaTeX Project Public License (LPPL), either version 1.3c of this %% license or (at your option) any later version. The latest version %% of this license is in the file %% %% http://www.latex-project.org/lppl.txt %% %% This file is part of the ``expl3 bundle'' (The Work in LPPL) %% and all files in that bundle must be distributed together. %% %% The released version of this bundle is available from CTAN. %% %% ----------------------------------------------------------------------- %% %% The development version of the bundle can be found at %% %% http://www.latex-project.org/cgi-bin/cvsweb.cgi/ %% %% for those people who are interested. %% %%%%%%%%%%% %% NOTE: %% %%%%%%%%%%% %% %% Snapshots taken from the repository represent work in progress and may %% not work or may contain conflicting material! We therefore ask %% people _not_ to put them into distributions, archives, etc. without %% prior consultation with the LaTeX Project Team. %% %% ----------------------------------------------------------------------- \RequirePackage{l3names} \GetIdInfo$Id: l3messages.dtx 673 2007-09-28 20:50:33Z mittelba $ {L3 Experimental LaTeX Messages module} \ProvidesExplPackage {\filename}{\filedate}{\fileversion}{\filedescription} \RequirePackage{l3basics} \RequirePackage{l3tlp} \RequirePackage{l3expan} \RequirePackage{l3num} \RequirePackage{l3io} \RequirePackage{l3int} \RequirePackage{l3toks} \RequirePackage{l3token} \tlp_new:Nn \g_file_curr_name_tlp {no~file} \let_new:NN \err_message:x \tex_errmessage:D \def_new:Npn \text_put_sp: {~} \def_new:Npn \text_put_four_sp: {\text_put_sp: \text_put_sp: \text_put_sp: \text_put_sp: } \def:Npn\cmd_arg_list_build#1{ \toks_clear:N\l_tmpb_toks \int_set:Nn \l_tmpa_int {#1} \int_while:nNnT \l_tmpa_int > \c_zero { \toks_put_left:No \l_tmpb_toks {\the_internal:D\l_tmpa_int} \toks_put_left:Nn \l_tmpb_toks {##} \int_decr:N\l_tmpa_int } \def:Npx\l_cmd_arg_list{\the_internal:D\l_tmpb_toks} } \def:Npn\cmd_declare:Nnn#1[#2]{ \cmd_arg_list_build{#2} \exp_args:NNO\def:Npn#1\l_cmd_arg_list } \def_new:Npn \io_show_file_lineno:{ on~line~\the_internal:D\tex_inputlineno:D\text_put_sp:~of~ file~\g_file_curr_name_tlp} \let:NwN \g_err_help_toks \tex_errhelp:D \def_new:Npn \l_err_label_token {} \int_set:Nn\tex_errorcontextlines:D\c_minus_one \def_new:Npn \err_info:nn #1#2{ \def:Npn\err_newline:{\iow_newline:#2} \io_put_log:x {#1~\io_show_file_lineno:}} \def_new:Npn \err_warn:nn #1#2{ \def:Npn\err_newline:{\iow_newline:#2} \io_put_term:x {#1~\io_show_file_lineno:}} \def_new:Npn \err_info_noline:nn #1#2{ \def:Npn\err_newline:{\iow_newline:#2} \io_put_log:x {#1}} \def_new:Npn \err_warn_noline:nn #1#2{ \def:Npn\err_newline:{\iow_newline:#2} \io_put_term:x {#1}} \def_new:Npn \err_interrupt:NNw #1#2{\let:NwN \l_err_label_token #2 \group_begin: \let:NwN \par\use_noop: \CodeStop \NamesStart: %\clearshortrefmaps \tex_input:D #1~\err_display_aux:w} \def_new:Npn \err_fatal:nn #1#2{ \def:Npn\err_newline:{\iow_newline:#2} \io_put_term:x {#1~\io_show_file_lineno:} \tex_end:D } \def_new:Npn \err_fatal_noline:nn #1#2{ \def:Npn\err_newline:{\iow_newline:#2} \io_put_term:x {#1} \tex_end:D } \def_new:Npn \err_newline: {^^J} \iow_new:N \c_iow_err_stream \tlp_new:Nn \g_err_curr_fname{} \def_new:Npn \err_file_new:Nn #1#2{ \tlp_if_empty:NF\g_err_curr_fname {\err_latex_bug:x{Unclosed~error~file~`\g_err_curr_fname'}} \iow_open:Nn \c_iow_err_stream {#2} \err_kernel_info:n{Errorfile~`#2'~opened~for~output} \tlp_gset:Nn \g_err_curr_fname{#2} \tlp_new:Nn #1{#2}} \def_new:Npn \err_file_close:N#1{ \tlp_if_eq:NNF#1\g_err_curr_fname {\err_latex_bug:x{You~closed~the~wrong~error~file~`#1'.~ Open~is~`\g_err_curr_fname'.}} \iow_long_unexpanded:Nn \c_iow_err_stream {\err_latex_bug:x{Didn't~find~the~ correct~error~message~to~show.\iow_newline: Was~searching~for~a~function~ with~the~following~meaning:\iow_newline: \token_to_string:N\token_to_meaning:N \token_to_string:N\l_err_label_token} \group_end:} \iow_close:N \c_iow_err_stream \err_kernel_info:n{Errorfile~`\g_err_curr_fname'~closed} \tlp_gset_eq:NN\g_err_curr_fname\c_empty_tlp } \def_new:Npn \err_interrupt_new:NNNnnn #1{ \group_begin: \char_set_catcode:nn{`\#}{12} \if_meaning:NN#1\g_err_curr_fname \else: \err_latex_bug:x{Error~text~goes~to~wrong~err~file:~ `\g_err_curr_fname'~is~open~but~you~requested~ `#1'} \fi: \err_interrupt_new_aux:w} \def_long_new:Npn \err_interrupt_new_aux:w #1#2#3#4#5{ \iow_long_unexpanded:Nn \c_iow_err_stream {\err_msgline_aux:NNnnn #1#2{#3}{#4}{#5}\use_noop:} \group_end:} \def_new:Npn \err_msgline_aux:NNnnn #1#2#3#4#5{ \if_meaning:NN#1\l_err_label_token \cmd_declare:Nnn\err_display_aux:w [#2]{ \group_end: \toks_gset:Nx\g_err_help_toks{#4} \io_put_term:x{LaTeX~error~\io_show_file_lineno:.\iow_newline: \text_put_sp:\text_put_four_sp: \text_put_sp: See~LaTeX~manual~for~explanation.\iow_newline: \text_put_sp:\text_put_four_sp: \text_put_sp: Type~\text_put_sp: H~~\text_put_sp: for~ immediate~help.} \err_message:x{#3} #5} \tex_endinput:D \fi:} \def_new:Npn \err_display_aux:w {} \def_new:Npn \err_kernel_interrupt:Nw {\err_interrupt:NNw \c_kernel_err_tlp} \def_new:Npn \err_kernel_interrupt_new:NNnnn { \err_interrupt_new:NNNnnn \c_kernel_err_tlp} \def_new:Npn \err_kernel_info:n #1 { \err_info:nn {LaTeX~Info:~#1} {\text_put_four_sp:\text_put_four_sp:\text_put_four_sp:} } \def_new:Npn \err_kernel_warn:n #1 { \err_warn:nn {LaTeX~Warning:~#1} {\text_put_sp:\text_put_sp:\text_put_sp: \text_put_four_sp:\text_put_four_sp:\text_put_four_sp:} } \def_new:Npn \err_kernel_fatal:n #1 { \err_fatal:nn {LaTeX~Fatal:~#1} {\text_put_sp: \text_put_four_sp:\text_put_four_sp:\text_put_four_sp:} } \def_new:Npn \err_kernel_info_noline:n #1 { \err_info_noline:nn {LaTeX~Info:~#1} {\text_put_four_sp:\text_put_four_sp:\text_put_four_sp:} } \def_new:Npn \err_kernel_warn_noline:n #1 { \err_warn_noline:nn {LaTeX~Warning:~#1} {\text_put_sp:\text_put_sp:\text_put_sp: \text_put_four_sp:\text_put_four_sp:\text_put_four_sp:} } \def_new:Npn \err_kernel_fatal_noline:n #1 { \err_fatal_noline:nn {LaTeX~Fatal:~#1} {\text_put_sp: \text_put_four_sp:\text_put_four_sp:\text_put_four_sp:} } \err_file_new:Nn \c_kernel_err_tlp {l3in2e.err} \def:Npn\err_help_ignored: { Your~command~was~ignored.\iow_newline: Type \text_put_sp: I~~ \text_put_sp: to~replace~it~with~another~command,\iow_newline: or~\text_put_sp: \text_put_sp: to~continue~without~it.} \def:Npn\err_help_textlost: { You've~lost~some~text.\text_put_sp: \err_help_return_or_X:} \def:Npn\err_help_return_or_X: { Try~typing\text_put_sp: \text_put_sp: to~proceed.\iow_newline: If~that~doesn't~work,~type \text_put_sp: X~\text_put_sp: to~quit.} \def:Npn\err_help_trouble: { You're~ in~ trouble~ here. \text_put_sp:\err_help_return_or_X:} \err_kernel_interrupt_new:NNnnn\cs_free_p:N{1} {Command~name~`\tex_string:D#1'~already~used} {You~tried~to~define~a~command~which~already~has~ a~meaning.\iow_newline: If~you~really~want~to~redefine~it~try~ \token_to_string:N\cmd_declare:Nnn\text_put_sp: next~time.\iow_newline: For~this~run~I~will~ignore~your~definition.} {} \err_kernel_interrupt_new:NNnnn\newline{0} {There's~no~line~here~to~end} {You~tried~to~end~a~line~at~a~place~where~I~thought~ we~were~already~between~paragraphs.} {} \err_kernel_interrupt_new:NNnnn\newcnt{0} {No~such~counter} {The~counter~name~mentioned~in~the~operation~is~not~ known~to~me.\iow_newline: Check~the~spelling.} {} \err_kernel_interrupt_new:NNnnn\nodocument{0} {Missing~\token_to_string:N\begin{document}} {\err_help_trouble:} {} \err_kernel_interrupt_new:NNnnn\badmath{0} {Bad~math~environment~delimiter} {\err_help_ignored:} {} \err_kernel_interrupt_new:NNnnn\toodeep{0} {Too~deeply~nested} {\err_help_trouble:} {} \err_kernel_interrupt_new:NNnnn\badpoptabs{0} {\token_to_string:N\pushtabs \text_put_sp: and~\token_to_string:N\poptabs \text_put_sp: don't~match} {\err_help_trouble:} {} \err_kernel_interrupt_new:NNnnn\badtab{0} {Undefined~tab~position} {\err_help_trouble:} {} \err_kernel_interrupt_new:NNnnn\preamerr{} {\if_case:w #1~Illegal~character\or: Missing~@-exp\or: Missing~p-arg\fi:\text_put_sp: in~array~arg} {\err_help_trouble:} {} \err_kernel_interrupt_new:NNnnn\badlinearg{} {Bad~\token_to_string:N\line \text_put_sp: or~\token_to_string:N\vector \text_put_sp: argument} {\err_help_textlost:} {} \err_kernel_interrupt_new:NNnnn\parmoderr{0} {Not~in~outer~par~mode} {\err_help_textlost:} {} \err_kernel_interrupt_new:NNnnn\fltovf{0} {Too~many~unprocessed~floats} {\err_help_textlost:} {} \err_kernel_interrupt_new:NNnnn\badcrerr{0} {Bad~use~of~\token_to_string:N\\} {\err_help_return_or_X:} {} \err_kernel_interrupt_new:NNnnn\noitemerr{0} {Something's~wrong--perhaps~a~missing~ \token_to_string:N\item} {\err_help_return_or_X:} {} \err_kernel_interrupt_new:NNnnn\notprerr{0} {Can~be~used~only~in~preamble} {\err_help_ignored:} {} \err_file_close:N\c_kernel_err_tlp %% %% %% End of file `l3messages.sty'.