summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/scontents/scontents.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/scontents/scontents.tex')
-rw-r--r--Master/texmf-dist/tex/generic/scontents/scontents.tex239
1 files changed, 239 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/scontents/scontents.tex b/Master/texmf-dist/tex/generic/scontents/scontents.tex
new file mode 100644
index 00000000000..35fc8e406ec
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/scontents/scontents.tex
@@ -0,0 +1,239 @@
+%%
+%% This is file `scontents.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% scontents.dtx (with options: `loader,plain')
+%%
+%% Copyright (C) 2019 by Pablo González L <pablgonz@educarchile.cl>
+%%
+%% This work may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3c of this license or (at
+%% your option) any later version. The latest version of this license is in
+%%
+%% http://www.latex-project.org/lppl.txt
+%%
+%% and version 1.3c or later is part of all distributions of LaTeX version
+%% 2005/12/01 or later.
+%%
+%% This work is "maintained" (as per the LPPL maintenance status)
+%% by Pablo González Luengo.
+%%
+%% This work consists of the files scontents.dtx and
+%% scontents.ins,
+%% and the derived files scontents.sty,
+%% scontents.tex,
+%% t-scontents.mkvi and
+%% scontents-code.tex.
+%%
+\def\ScontentsFileDate{2019-10-24}%
+\def\ScontentsFileVersion{1.5}%
+\def\ScontentsFileDescription{Stores LaTeX contents in memory or files}%
+\input expl3-generic.tex
+\ExplSyntaxOn
+\tl_gset:cx { ver @ scontents . sty } { \ScontentsFileDate\space
+ v\ScontentsFileVersion\space \ScontentsFileDescription }
+\iow_log:x { Package: ~ scontents ~ \use:c { ver @ scontents . sty } }
+\msg_gset:nnn { scontents } { already-loaded }
+ { The~`scontents'~package~is~already~loaded.~Aborting~input~\msg_line_context:. }
+\cs_if_exist:NT \__scontents_rescan_tokens:n
+ {
+ \msg_warning:nn { scontents } { already-loaded }
+ \ExplSyntaxOff
+ \file_input_stop:
+ }
+\tl_new:N \g__scontents_end_verbatimsc_tl
+\tl_gset_rescan:Nnn
+ \g__scontents_end_verbatimsc_tl
+ {
+ \char_set_catcode_other:N \\
+ }
+ { \endverbatimsc }
+\tl_const:Nx \c__scontents_end_env_tl
+ {
+ \c_backslash_str
+ end
+ scontents
+ }
+\file_input:n { scontents-code.tex }
+\cs_new:Npn \__scontents_format_case:nnn #1 #2 #3
+ {#2} % Plain/Generic
+\keys_define:nn { scontents }
+ { verb-font .initial:n = \tt }
+\seq_new:N \l__scontents_compat_seq
+\cs_new_protected:Npn \__scontents_compat_redefine:Npn #1
+ {
+ \seq_put_right:Nn \l__scontents_compat_seq {#1}
+ \cs_set_eq:cN { __scontents_saved_\cs_to_str:N #1: } #1
+ \cs_new_protected:Npn #1
+ }
+\cs_new_protected:Npn \__scontents_compat_restore:
+ { \seq_map_function:NN \l__scontents_compat_seq \__scontents_compat_restore:N }
+\cs_new_protected:Npn \__scontents_compat_restore:N #1
+ {
+ \cs_set_eq:Nc #1 { __scontents_saved_\cs_to_str:N #1: }
+ \cs_undefine:c { __scontents_saved_\cs_to_str:N #1: }
+ }
+\cs_generate_variant:Nn \__scontents_compat_redefine:Npn { c }
+\cs_new_protected:Npn \__scontents_optarg:nn #1 #2
+ { \peek_charcode_ignore_spaces:NTF [ {#1} {#1[#2]} }
+\cs_new_protected:Npn \__scontents_stararg:nn #1 #2
+ { \peek_charcode_remove_ignore_spaces:NTF * {#1} {#2} }
+\__scontents_compat_redefine:Npn \RequirePackage
+ { \__scontents_optarg:nn { \__scontents_require_auxi:wn } { } }
+\cs_new_protected:Npn \__scontents_require_auxi:wn [#1] #2
+ { \__scontents_optarg:nn { \__scontents_require_auxii:wnw [{#1}]{#2} } { } }
+\cs_new:Npn \__scontents_zap_space:ww #1~#2
+ {
+ #1 \if_meaning:w #2 \q_mark
+ \exp_after:wN \use_none:n
+ \else:
+ \exp_after:wN \__scontents_zap_space:ww
+ \fi: #2
+ }
+\cs_new_protected:Npn \__scontents_require_auxii:wnw [#1] #2 [#3]
+ {
+ \tl_set:Nx \l__scontents_temp_tl { \__scontents_zap_space:ww #2 ~ \q_mark }
+ \clist_map_function:NN \l__scontents_temp_tl \__scontents_require_auxiii:n
+ }
+\cs_new_protected:Npn \__scontents_require_auxiii:n #1
+ { \str_if_eq:eeF {expl3} {#1} { \msg_error:nnn { scontents } { invalid-package } {#1} } }
+\msg_new:nnn { scontents } { invalid-package }
+ { Package~`#1'~invalid~in~scontents.~This~is~an~error~in~scontents. }
+\__scontents_compat_redefine:cpn { @ifpackagelater } #1
+ { \exp_args:Nc \__scontents_package_later_aux:Nn { ver@#1.sty } }
+\cs_new_protected:Npn \__scontents_package_later_aux:Nn #1 #2
+ {
+ \int_compare:nNnTF
+ { \exp_after:wN \__scontents_parse_version:w #1 //00 \q_mark } <
+ { \exp_after:wN \__scontents_parse_version:w #2 //00 \q_mark }
+ }
+\cs_new:Npn \__scontents_parse_version:w #1 { \__scontents_parse_version_auxi:w 0#1 }
+\cs_new:Npn \__scontents_parse_version_auxi:w #1/#2/#3#4#5 \q_mark
+ { \__scontents_parse_version_auxii:w #1-#2-#3#4 \q_mark }
+\cs_new:Npn \__scontents_parse_version_auxii:w #1-#2-#3#4#5 \q_mark
+ { \tl_if_blank:nF {#2} {#1} #2 #3 #4 }
+\__scontents_compat_redefine:Npn \ProvidesExplPackage #1 #2 #3 #4
+ { \__scontents_provides_aux:nn {#1} { #2 \ifx\relax#3\relax\else v#3\space\fi #4 } }
+\cs_new_protected:Npn \__scontents_provides_aux:nn #1 #2
+ {
+ \tl_gset:cx { ver@#1.sty } {#2}
+ \iow_log:n { Package~#1:~#2 }
+ \ExplSyntaxOn
+ }
+\__scontents_compat_redefine:Npn \DeclareOption
+ { \__scontents_stararg:nn { \use_none:n } { \use_none:nn } }
+\__scontents_compat_redefine:Npn \ProcessOptions
+ { \__scontents_stararg:nn { } { } }
+\int_set:Nn \l__scontents_tmpa_int { \char_value_catcode:n { `\@ } }
+\char_set_catcode_letter:N \@
+\exp_after:wN
+\ExplSyntaxOff
+\file_input:n { xparse.sty }
+\ExplSyntaxOn
+\char_set_catcode:nn { `\@ } { \l__scontents_tmpa_int }
+\__scontents_compat_restore:
+\NewDocumentEnvironment { scontents } { }
+ {
+ \group_begin:
+ \__scontents_scontents_env_begin:
+ }
+ {
+ \__scontents_scontents_env_end:
+ \group_end:
+ }
+\NewDocumentCommand \__scontents_grab_optional:w { r[] }
+ { \__scontents_grab_optional:n {#1} }
+\bool_new:N \l__scontents_temp_bool
+\cs_new_protected:Npn \verbatim
+ { \__scontents_verbatim_aux: \frenchspacing \__scontents_vobeyspaces: \__scontents_xverb: }
+\cs_new_protected:Npn \__scontents_verbatim_aux:
+ {
+ \skip_vertical:N \parskip
+ \int_set:Nn \parindent { 0pt }
+ \skip_set:Nn \parfillskip { 0pt plus 1fil }
+ \int_set:Nn \parskip { 0pt plus0pt minus0pt }
+ \tex_par:D
+ \bool_set_false:N \l__scontents_temp_bool
+ \cs_set:Npn \par
+ {
+ \bool_if:NTF \l__scontents_temp_bool
+ {
+ \mode_leave_vertical:
+ \null
+ \tex_par:D
+ \penalty \interlinepenalty
+ }
+ {
+ \bool_set_true:N \l__scontents_temp_bool
+ \mode_if_horizontal:T
+ { \tex_par:D \penalty \interlinepenalty }
+ }
+ }
+ \cs_set_eq:NN \do \char_set_catcode_other:N
+ \dospecials \obeylines
+ \tl_use:N \l__scontents_verb_font_tl
+ \cs_set_eq:NN \do \__scontents_do_noligs:N
+ \__scontents_nolig_list:
+ \tex_everypar:D \exp_after:wN
+ { \tex_the:D \tex_everypar:D \tex_unpenalty:D }
+ }
+\cs_new_protected:Npn \__scontents_nolig_list:
+ { \do\`\do\<\do\>\do\,\do\'\do\- }
+\cs_new_protected:Npn \__scontents_vobeyspaces:
+ { \__scontents_set_active_eq:NN \ \__scontents_xobeysp: }
+\cs_new_protected:Npn \__scontents_xobeysp:
+ { \mode_leave_vertical: \nobreak \ }
+\cs_if_exist:NF \dospecials
+ {
+ \cs_new:Npn \dospecials
+ { \seq_map_function:NN \l_char_special_seq \do }
+ }
+\NewDocumentCommand { \Scontents }{ !s !O{} }
+ { \__scontents_Scontents_internal:nn {#1} {#2} }
+\NewDocumentCommand { \__scontents_verb_arg:w } { +v }
+ { \__scontents_verb_arg_internal:n {#1} }
+\NewDocumentCommand { \getstored } { O{1} m }
+ { \__scontents_getstored_internal:nn {#1} {#2} }
+\NewDocumentCommand { \foreachsc } { o m }
+ { \__scontents_foreachsc_internal:nn {#1} {#2} }
+\NewDocumentCommand { \typestored } { o m }
+ { \__scontents_typestored_internal:nn {#1} {#2} }
+\use:x
+ {
+ \cs_new_protected:Npn \exp_not:N \__scontents_xverb:w
+ ##1 \g__scontents_end_verbatimsc_tl
+ { ##1 \exp_not:N \endverbatimsc }
+ }
+\NewDocumentEnvironment { verbatimsc } { }
+ {
+ \group_begin:
+ \verbatim
+ }
+ {
+ \group_end:
+ }
+\group_begin:
+ \char_set_catcode_active:n { `\* }
+ \cs_new_protected:Npn \__scontents_plain_disable_outer_par:
+ {
+ \group_begin:
+ \char_set_lccode:nn { `\* } { `\^^L }
+ \tex_lowercase:D { \group_end:
+ \tex_let:D * \scan_stop:
+ }
+ }
+\group_end:
+\NewDocumentCommand { \setupsc } { +m }
+ { \keys_set:nn { scontents } {#1} }
+\NewDocumentCommand { \meaningsc } { o m }
+ { \__scontents_meaningsc_internal:nn {#1} {#2} }
+\NewExpandableDocumentCommand { \countsc } { m }
+ { \seq_count:c { g__scontents_name_#1_seq } }
+\NewDocumentCommand { \cleanseqsc } { m }
+ { \seq_clear_new:c { g__scontents_name_#1_seq } }
+\ExplSyntaxOff
+\endinput
+%%
+%% End of file `scontents.tex'.