Latex3: рдХрдХреНрд╖рд╛ рд╕рдВрджреЗрд╢ "рдкреИрдХреЗрдЬ" рд╕рдВрджреЗрд╢ рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 26 рдЕрдкреНрд░реИрд▓ 2021  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: latex3/latex3

рдЬреИрд╕рд╛ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдорд╕реАрдИ рджреНрд╡рд╛рд░рд╛ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрдХреНрд╖рд╛ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ "рдкреИрдХреЗрдЬ" рд╕рдВрджреЗрд╢ рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:

\begin{filecontents*}[overwrite]{myclass.cls}
\ProvidesExplClass
  {myclass}
  {2021/04/26}
  {0.1}
  {
    My Nice Class
  }
\NeedsTeXFormat{LaTeX2e}
\LoadClass { article }
%
\msg_new:nnn {myclass} {Foo} {Bar}
\msg_warning:nn {myclass} {Foo}
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass{myclass}
\begin{document}
\end{document}

рд▓рд┐рдЦрддрд╛ рд╣реИ:

рдкреИрдХреЗрдЬ myclass рдЪреЗрддрд╛рд╡рдиреА: рдмрд╛рд░

рдХреНрдпрд╛ l3msg рдореЙрдбреНрдпреВрд▓ \ProvidesExplClass рдФрд░ \ProvidesExplPackage рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?

documentation feature-request

рд╕рднреА 14 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдпрд╣ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ \g_msg_module_type_prop рдЬреЛрдбрд╝рдХрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛:

\prop_gput:Nnn \g_msg_module_type_prop { myclass } { Class }

рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдирд╛рдо \g_msg_module_name_prop :

\prop_gput:Nnn \g_msg_module_name_prop { myclass } { My~Nice~Class }

рддреЛ рдЖрдкрдХреЛ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓рддреА рд╣реИ рдЬреИрд╕реЗ:

Class My Nice Class Warning: Bar

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ l3msg рдпрджрд┐ \ProvidesExpl<Thing> рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ рддреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЛ рд╕реНрд╡рддрдГ рднрд░ рд╕рдХрддрд╛ рд╣реИ...


рдореЗрдЧрд╛рд╡рд╛рдЯ:

\begin{filecontents*}[overwrite]{myclass.cls}
\ProvidesExplClass
  {myclass}
  {2021/04/26}
  {0.1}
  {
    My Nice Class
  }
\NeedsTeXFormat{LaTeX2e}
\LoadClass { article }
%
\prop_gput:Nnn \g_msg_module_type_prop { myclass } { Class }
\prop_gput:Nnn \g_msg_module_name_prop { myclass } { My~Nice~Class }
\msg_new:nnn {myclass} {Foo} {Bar}
\msg_warning:nn {myclass} {Foo}
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass{myclass}
\begin{document}
\end{document}

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ l3msg рдпрджрд┐ \ProvidesExpl<Thing> рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ рддреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЛ рд╕реНрд╡рддрдГ рднрд░ рд╕рдХрддрд╛ рд╣реИ...

рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛! :рдореБрд╕реНрдХреБрд░рд╛рдУ:

\ProvidesExpl... рдФрд░ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИ: рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рд╣реИред

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдкреВрд░реА 'рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ expl3 рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП' - рдпрд╣ рдПрдХ рдРрд╕рд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ рдЬреЛ рдХрд╛рдлреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред (рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдЕрднреА рднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдкреИрдХреЗрдЬ рдореЗрдВ рд╣реИред)

\ProvidesExpl... рдФрд░ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИ: рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рд╣реИред

рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХреНрдпреЛрдВред

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдкреВрд░реА 'рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ expl3 рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП' - рдпрд╣ рдПрдХ рдРрд╕рд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ рдЬреЛ рдХрд╛рдлреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред (рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдЕрднреА рднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдкреИрдХреЗрдЬ рдореЗрдВ рд╣реИред)

рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдРрд╕рд╛ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдЬреЛ рдХрд╛рдлреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

\ProvidesExpl... рдФрд░ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреБрдХреНрдд рдореЙрдбреНрдпреВрд▓ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИ: рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░рдирд╛ рд╣реИред

рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХреНрдпреЛрдВред

\ProvidesExplClass рдореЗрдВ рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо рдХреЛрдб рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЙрдкрд╕рд░реНрдЧ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИред рдпрд╛ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреИрдХреЗрдЬ рдФрд░ рд╡рд░реНрдЧ рджреЛрдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдореИрдВ рдЗрд╕реЗ LaTeX2e рд╢рдмреНрджреЛрдВ рдореЗрдВ achemso рдореЗрдВ рдХрд░рддрд╛ рд╣реВрдВ), рдЗрд╕рд▓рд┐рдП рд▓рд┐рдВрдХ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдкреВрд░реА 'рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ expl3 рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП' - рдпрд╣ рдПрдХ рдРрд╕рд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ рдЬреЛ рдХрд╛рдлреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред (рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдЕрднреА рднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдкреИрдХреЗрдЬ рдореЗрдВ рд╣реИред)

рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдРрд╕рд╛ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдЬреЛ рдХрд╛рдлреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдХрдХреНрд╖рд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрд╡рд░реВрдкрдг/рд╢реИрд▓реА/рдЖрджрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВред рдЙрддреНрддрд░рд╛рд░реНрджреНрдз рдХреЛ рд╕рдВрдХреБрд▓ рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдЙрди рд╡рд░реНрдЧреЛрдВ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реЛрдЧрд╛ рдЬрд┐рдирдХрд╛ рд╡реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИ, рдФрд░ рд╢реБрд░реБрдЖрдд рдореЗрдВ \ProvidesExpl... рд╕реЗрдЯ рдХреЛ LaTeX2e рдХрд░реНрдиреЗрд▓ рд╕реЗ рдХреЗрд╡рд▓ \Provides... рдХреЛ рдорд┐рд░рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рдпрд╣ рдЧрд▓рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИ: _packages_ рдХреЛ expl3 рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, _classes_ рдХреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝- рдпрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди-рд╕реНрддрд░реАрдп рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕реЗ _might_ expl3 рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХрдХреНрд╖рд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрд╡рд░реВрдкрдг/рд╢реИрд▓реА/рдЖрджрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВред

рдЬрд┐рд╕ рд╡рд░реНрдЧ рдкрд░ рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЙрд╕реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рдкрд╣рд▓реЗ рдкреГрд╖реНрда рдкрд░ рдПрдХ рдЧреНрд░рд╛рдлрд┐рдХ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ... рдпрджрд┐ рдпрд╣ рдЧреНрд░рд╛рдлрд┐рдХ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдиреНрдпрдерд╛ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП (рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд)ред рдХреНрдпрд╛ рдпрд╣ рдбрд┐рдЬрд╛рдЗрди рдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИ?

рдореИрдВ рдХреЗ рдкреНрд░рд▓реЗрдЦрди рд▓реЗ рдЬрд╛рдХрд░ рд╣рд╛рде рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж \g_msg_module_name_prop рдФрд░ \g_msg_module_type_prop рдореЗрдВ рдкрд╣рд▓реЗ l3msg рдкреНрд░рд▓реЗрдЦрдиред

@dbitouze рдЬрдмрдХрд┐ рдЖрдк рдбрд┐рдЬрд╝рд╛рдЗрди рдмрдирд╛рдо рдХреЛрдб рдкрд░ рдПрдХ рдЕрдЪреНрдЫрд╛ рдкреНрд░рд╢реНрди рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╕рд╣реА рдЬрдЧрд╣ рд╣реИред рд╢рд╛рдпрдж рд╕реНрдЯреИрдХрдПрдХреНрд╕рдЪреЗрдВрдЬ рдкрд░ рдПрдХ рдкреНрд░рд╢реНрди рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рдФрд░ рдЯреАрдо рдХреЗ рд╕рджрд╕реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ? рдпрд╛ рд▓рд╛рдЯреЗрдХреНрд╕-рдПрд▓ рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪреА рдкрд░ рдПрдХ рдкреНрд░рд╢реНрдиред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ред

рдореИрдВ рдХреЗ рдкреНрд░рд▓реЗрдЦрди рд▓реЗ рдЬрд╛рдХрд░ рд╣рд╛рде рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж \g_msg_module_name_prop рдФрд░ \g_msg_module_type_prop рдореЗрдВ рдкрд╣рд▓реЗ l3msg рдкреНрд░рд▓реЗрдЦрдиред

AFAICS, рдУрдкреА рдореЗрдВ MCE рдЕрднреА рднреА рд▓рд┐рдЦрддрд╛ рд╣реИ:

рдкреИрдХреЗрдЬ myclass рдЪреЗрддрд╛рд╡рдиреА: рдмрд╛рд░

pdflatex-dev ред рдпрд╣рд╛рдБ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ (рдкреНрд▓рд╕ рдлрд╝рд╛рдЗрд▓ рд╕реВрдЪреА):

This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2021) (preloaded format=pdflatex-dev)
 restricted \write18 enabled.
entering extended mode
(./test.tex
LaTeX2e <2021-12-01> pre-release-0 (develop 2021-6-6 branch)
L3 programming layer <2021-06-01>

LaTeX Warning: Writing or overwriting file `./myclass.cls'.


(./myclass.cls
Document Class: myclass 2021/04/26 v0.1  My Nice Class 
(/usr/local/texlive/2021/texmf-dist/tex/latex-dev/base/article.cls
Document Class: article 2021/02/12 v1.4n Standard LaTeX document class
(/usr/local/texlive/2021/texmf-dist/tex/latex-dev/base/size10.clo))

Package myclass Warning: Bar

) (/usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def)
 (./test.aux) (./test.aux)

 *File List*
 myclass.cls    2021/04/26 v0.1  My Nice Class 
 article.cls    2021/02/12 v1.4n Standard LaTeX document class
  size10.clo    2021/02/12 v1.4n Standard LaTeX file (size option)
l3backend-pdftex.def    2021-05-07 L3 backend support: PDF output (pdfTeX)
 ***********

 )
No pages of output.
Transcript written on test.log.

@dbitouze рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЖрд╡реЗрджрди рдХрд┐рдпрд╛ рд╣реИ

\prop_gput:Nnn \g_msg_module_type_prop { myclass } { Class }

рдмреНрд░реВрдиреЛ рдХреЗ рд╕рдВрджреЗрд╢ рдореЗрдВ "рдлрд┐рдХреНрд╕реНрдб" рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рдкрд╣рд▓реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд▓рд╛рдЗрди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдЕрдм рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

@dbitouze рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЖрд╡реЗрджрди рдХрд┐рдпрд╛ рд╣реИ

\prop_gput:Nnn \g_msg_module_type_prop { myclass } { Class }

рд╣рдо, рдирд╣реАрдВ, рдЧрд▓рддрдлрд╣рдореА рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред

рдмреНрд░реВрдиреЛ рдХреЗ рд╕рдВрджреЗрд╢ рдореЗрдВ "рдлрд┐рдХреНрд╕реНрдб" рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рдкрд╣рд▓реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд▓рд╛рдЗрди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдЕрдм рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдмрд╣реБрдд рдмреБрд░рд╛: рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ (рдФрд░ рдЖрд╢рд╛ рд╡реНрдпрдХреНрдд рдХреА) рдлрд┐рдХреНрд╕ рдХреЛ рдЕрдм рд╡рд░реНрдЧ рд▓реЗрдЦрдХ рд╕реЗ рдХрд┐рд╕реА рднреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ: рдореБрд╕реНрдХрд╛рди: рдХреНрдпрд╛ рдпрд╣ рдпреЛрдЬрдирд╛рдмрджреНрдз рд╣реИ?

рдЬреИрд╕рд╛ рдХрд┐ @josephwright рдиреЗ рд╕рдордЭрд╛рдпрд╛ рдХрд┐ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЙрдкрд╕рд░реНрдЧ рдФрд░ рд╡рд░реНрдЧ рдпрд╛ рдкреИрдХреЗрдЬ рдирд╛рдо рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдпреЛрдЧреНрдп рдХрдиреЗрдХреНрд╢рди рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ \ClassWarning рдХрд╣рдиреЗ рдФрд░ рдлрд┐рд░ рдирд╛рдо рджреЗрдиреЗ рдХреА рдкреБрд░рд╛рдиреА 2e рдкрджреНрдзрддрд┐ рд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ, рдХреЗрд╡рд▓ рдЕрдм рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЕрддреАрдд рдореЗрдВ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓ рдкрд░ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд╕рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред \Class... рдХрдорд╛рдВрдб рдФрд░ рдЙрд╕реЗ рдХреНрд▓рд╛рд╕ рдХрд╛ рдирд╛рдо рджреЗрдирд╛ред

рддреЛ "рдорд╛рдИрдХреНрд▓рд╛рд╕" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рд╕рдВрджреЗрд╢ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдкрд╛рд░рд┐рдд рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ рдФрд░ рдЬрдм рд╣рдо рдЗрдВрд╕рд╛рди рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдирд╛рдо рдореЗрдВ "рдХрдХреНрд╖рд╛" рджреЗрдЦрдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд░реНрдЧ рд╣реИ рддреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рдгрд╛рд▓реА рдЙрд╕ рдХрдЯреМрддреА рдХреЛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИ (рдФрд░ рдпрд╣ рд╡реИрд╕реЗ рднреА рдЧрд▓рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╡рд░реНрдЧ рд▓реЗрдЦрдХ рд╕реЗ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЕрддреАрдд рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА рдЬрд╣рд╛рдВ рдЖрдкрдиреЗ \ClassWarning{<classname>} рд▓рд┐рдЦрд╛ рдерд╛ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо \ProvidesExplClass рд▓рд┐рдП рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рдВрджреЗрд╢ рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЙрд╕ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреИрдХреЗрдЬ рдирд╛рдо рд▓рдВрдмреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрд╕рд░реНрдЧ рдХрд╛рдлреА рдХрдо рд╣реИрдВред рддреЛ рдЖрдкрдХреЛ рд╕рдВрджреЗрд╢ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдмрддрд╛рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдПрдХ рд╡рд░реНрдЧ рд╣реИред

рдЬрдм \ProvidesExplClass рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░
\g_msg_module_type_prop рдХреЛ рдкреНрд░рд╛рд░рдВрдн рдФрд░ рдЕрдВрдд рдХреЗ рдмреАрдЪ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдлрд╝рд╛рдЗрд▓ (рд╢рд╛рдпрдж рдХреЗрд╡рд▓ рддрднреА рдЪреЗрддрд╛рд╡рдиреА рджреЗрдВ рдЬрдм \msg_new:nnnn рдХреЛ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ)ред

рдпрд╣ рдмрд╣реБрдд рдмрджрд╕реВрд░рдд рдирд╣реАрдВ рд▓рдЧрддрд╛, рдФрд░ рдпрд╣ рдЗрд╕ рдЖрд╕рд╛рди рдЧрд▓рддреА рд╕реЗ рдмрдЪ рд╕рдХрддрд╛ рд╣реИред

рд╣рдо рдХрд░ рд╕рдХрддреЗ рдереЗ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рд░рдирдЯрд╛рдЗрдо рд▓рд╛рдЧрдд рд╣реИ рдЬрдмрдХрд┐ рддреНрд░реБрдЯрд┐ рдПрдХ рд╡рд░реНрдЧ рддреНрд░реБрдЯрд┐ рд╣реИ рдЬреЛ рд╕реНрд╡рдпрдВ рдХреЛ рдЧрд▓рдд (рд▓реЗрдХрд┐рди рд╣рд╛рдирд┐рд░рд╣рд┐рдд) рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рдХрдЯ рдХрд░рддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдФрд░ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рдиреА рд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рддреЛ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд░рдирдЯрд╛рдЗрдо рдЪреЗрдХ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдзреАрдорд╛ рдХрд░рдиреЗ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВред рдЕрдЧрд░ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЪреЗрдХ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд░рдирдЯрд╛рдЗрдо рд▓рд╛рдЧрдд рд╕рднреА рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЫреЛрдЯреА рд╣реИрдВ рд▓реЗрдХрд┐рди рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рд╡реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

bastien-roucaries picture bastien-roucaries  ┬╖  19рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

EvanAad picture EvanAad  ┬╖  49рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dbitouze picture dbitouze  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

josephwright picture josephwright  ┬╖  31рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dbitouze picture dbitouze  ┬╖  43рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ