forked from texstudio-org/texstudio
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add expl3 package interfaces (texstudio-org#3921)
- Loading branch information
1 parent
75c8514
commit 7b5c109
Showing
17 changed files
with
450 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# etl package | ||
# Matthew Bertucci 2024/12/21 for v0.3 | ||
|
||
\etl_act:nnnnn {%<⟨normal⟩%>} {%<⟨space⟩%>} {%<⟨group⟩%>} {%<⟨status⟩%>} {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act:nnnnnn {%<⟨normal⟩%>} {%<⟨space⟩%>} {%<⟨group⟩%>} {%<⟨final⟩%>} {%<⟨status⟩%>} {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act:nnnnnnn {%<⟨normal⟩%>} {%<⟨space⟩%>} {%<⟨group⟩%>} {%<⟨final⟩%>} {%<⟨status⟩%>} {%<⟨output⟩%>} {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_apply_to_rest:n {%<⟨code⟩%>}#/%expl3 | ||
\etl_act_break:#/%expl3 | ||
\etl_act_break:n {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_break_discard:#/%expl3 | ||
\etl_act_break_post:n {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_break_pre:n {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_do_final:#/%expl3 | ||
\etl_act_output:n {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_output_pre:n {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_output_rest:#/%expl3 | ||
\etl_act_output_rest_pre:#/%expl3 | ||
\etl_act_put_back:n {%<⟨tokens⟩%>}#/%expl3 | ||
\etl_act_status:n {%<⟨status⟩%>}#/%expl3 | ||
\etl_act_switch:nnn {%<⟨normal⟩%>} {%<⟨space⟩%>} {%<⟨group⟩%>}#/%expl3 | ||
\etl_act_switch_group:n {%<⟨group⟩%>}#/%expl3 | ||
\etl_act_switch_normal:n {%<⟨normal⟩%>}#/%expl3 | ||
\etl_act_switch_space:n {%<⟨space⟩%>}#/%expl3 | ||
\etl_if_eq:nnF {%<⟨tokens1⟩%>} {%<⟨tokens2⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_if_eq:nnT {%<⟨tokens1⟩%>} {%<⟨tokens2⟩%>} {%<⟨true code⟩%>}#/%expl3 | ||
\etl_if_eq:nnTF {%<⟨tokens1⟩%>} {%<⟨tokens2⟩%>} {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_if_eq_p:nn {%<⟨tokens1⟩%>} {%<⟨tokens2⟩%>}#/%expl3 | ||
\etl_if_in:nnF {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_if_in:nnT {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨true code⟩%>}#/%expl3 | ||
\etl_if_in:nnTF {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_if_in_deep:nnF {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_if_in_deep:nnT {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨true code⟩%>}#/%expl3 | ||
\etl_if_in_deep:nnTF {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_if_in_deep_p:nn {%<⟨tokens⟩%>} {%<⟨search text⟩%>}#/%expl3 | ||
\etl_if_in_p:nn {%<⟨tokens⟩%>} {%<⟨search text⟩%>}#/%expl3 | ||
\etl_new_if_in:Nnn %<⟨function⟩%> {%<⟨search text⟩%>} {%<⟨conditions⟩%>}#/%expl3 | ||
\etl_new_replace_all:Nn %<⟨function⟩%> {%<⟨search text⟩%>}#/%expl3 | ||
\etl_new_replace_once:Nn %<⟨function⟩%> {%<⟨search text⟩%>}#/%expl3 | ||
\etl_replace_all:nnn {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨replacement⟩%>}#/%expl3 | ||
\etl_replace_all_deep:nnn {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨replacement⟩%>}#/%expl3 | ||
\etl_replace_once:nnn {%<⟨tokens⟩%>} {%<⟨search text⟩%>} {%<⟨replacement⟩%>}#/%expl3 | ||
\etl_token_if_eq:NNF %<⟨token1⟩ ⟨token2⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\etl_token_if_eq:NNT %<⟨token1⟩ ⟨token2⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\etl_token_if_eq:NNTF %<⟨token1⟩ ⟨token2⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_token_if_eq_p:NN %<⟨token1⟩ ⟨token2⟩%>#/%expl3 | ||
\etl_token_if_in:nNF {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\etl_token_if_in:nNT {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\etl_token_if_in:nNTF {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_token_if_in_deep:nNF {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\etl_token_if_in_deep:nNT {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\etl_token_if_in_deep:nNTF {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\etl_token_if_in_deep_p:nN {%<⟨tokens⟩%>} %<⟨token⟩%>#/%expl3 | ||
\etl_token_if_in_p:nN {%<⟨tokens⟩%>} %<⟨token⟩%>#/%expl3 | ||
\etl_token_replace_all:nNn {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨replacement⟩%>}#/%expl3 | ||
\etl_token_replace_all_deep:nNn {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨replacement⟩%>}#/%expl3 | ||
\etl_token_replace_once:nNn {%<⟨tokens⟩%>} %<⟨token⟩%> {%<⟨replacement⟩%>}#/%expl3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
# gtl package | ||
# Matthew Bertucci 2024/12/21 for v0.6 | ||
|
||
\c_empty_gtl#/%expl3 | ||
\c_group_begin_gtl#/%expl3 | ||
\c_group_end_gtl#/%expl3 | ||
\gtl_clear:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_clear_new:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_concat:NNN %<⟨gtl var1⟩ ⟨gtl var2⟩ ⟨gtl var3⟩%>#/%expl3 | ||
\gtl_const:Ne %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_const:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_const:Nx %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_count_tokens:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_extra_begin:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_extra_end:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_gclear:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_gclear_new:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_gconcat:NNN %<⟨gtl var1⟩ ⟨gtl var2⟩ ⟨gtl var3⟩%>#/%expl3 | ||
\gtl_get_left:NN %<⟨gtl var1⟩ ⟨gtl var2⟩%>#/%expl3 | ||
\gtl_gpop_left:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_gpop_left:NN %<⟨gtl var1⟩ ⟨gtl var2⟩%>#/%expl3 | ||
\gtl_gpop_left_item:NNF %<⟨gtl var⟩ ⟨tl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_gpop_left_item:NNT %<⟨gtl var⟩ ⟨tl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_gpop_left_item:NNTF %<⟨gtl var⟩ ⟨tl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_gpop_left_text:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_gpop_left_tl:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_gput_left:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_gput_right:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_gset:Ne %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_gset:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_gset:Nx %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_gset_eq:NN %<⟨gtl var1⟩ ⟨gtl var2⟩%>#/%expl3 | ||
\gtl_head:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_head_do:NN %<⟨gtl var⟩ ⟨function⟩%>#/%expl3 | ||
\gtl_head_do:NNF %<⟨gtl var⟩ ⟨function⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_head_do:NNT %<⟨gtl var⟩ ⟨function⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_head_do:NNTF %<⟨gtl var⟩ ⟨function⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_blank:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_blank:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_blank:NTF %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_blank_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_empty:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_empty:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_empty:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_empty_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_eq:NNF %<⟨gtl var1⟩ ⟨gtl var2⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_eq:NNT %<⟨gtl var1⟩ ⟨gtl var2⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_eq:NNTF %<⟨gtl var1⟩ ⟨gtl var2⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_eq_p:NN %<⟨gtl var1⟩ ⟨gtl var2⟩%>#/%expl3 | ||
\gtl_if_exist:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_exist:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_exist:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_exist_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_head_eq_catcode:NNF %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_catcode:NNT %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_catcode:NNTF %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_catcode_p:NN %<⟨gtl var1⟩ ⟨token⟩%>#/%expl3 | ||
\gtl_if_head_eq_charcode:NNF %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_charcode:NNT %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_charcode:NNTF %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_charcode_p:NN %<⟨gtl var1⟩ ⟨token⟩%>#/%expl3 | ||
\gtl_if_head_eq_meaning:NNF %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_meaning:NNT %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_meaning:NNTF %<⟨gtl var1⟩ ⟨token⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_eq_meaning_p:NN %<⟨gtl var1⟩ ⟨token⟩%>#/%expl3 | ||
\gtl_if_head_is_group_begin:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_group_begin:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_is_group_begin:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_group_begin_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_head_is_group_end:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_group_end:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_is_group_end:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_group_end_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_head_is_N_type:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_N_type:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_is_N_type:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_N_type_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_head_is_space:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_space:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_head_is_space:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_head_is_space_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_single_token:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_single_token:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_single_token:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_single_token_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_if_tl:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_tl:NT %<⟨gtl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_if_tl:NTF %<⟨gtl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_if_tl_p:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_left_item:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_left_text:NF %<⟨gtl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_left_tl:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_log:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_new:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_pop_left:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_pop_left:NN %<⟨gtl var1⟩ ⟨gtl var2⟩%>#/%expl3 | ||
\gtl_pop_left_item:NNF %<⟨gtl var⟩ ⟨tl var⟩%> {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_pop_left_item:NNT %<⟨gtl var⟩ ⟨tl var⟩%> {%<⟨true code⟩%>}#/%expl3 | ||
\gtl_pop_left_item:NNTF %<⟨gtl var⟩ ⟨tl var⟩%> {%<⟨true code⟩%>} {%<⟨false code⟩%>}#/%expl3 | ||
\gtl_pop_left_text:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_pop_left_tl:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_put_left:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_put_right:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_set:Ne %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_set:Nn %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_set:Nx %<⟨gtl var⟩%> {%<⟨tokens⟩%>}#/%expl3 | ||
\gtl_set_eq:NN %<⟨gtl var1⟩ ⟨gtl var2⟩%>#/%expl3 | ||
\gtl_show:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_to_str:N %<⟨gtl var⟩%>#/%expl3 | ||
\gtl_to_str:n {%<⟨tokens⟩%>}#/%expl3 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# l3benchmark package | ||
# Matthew Bertucci 2024/12/21 | ||
|
||
\benchmark:n {%<⟨code⟩%>}#/%expl3 | ||
\benchmark_once:n {%<⟨code⟩%>}#/%expl3 | ||
\benchmark_once_silent:n {%<⟨code⟩%>}#/%expl3 | ||
\benchmark_silent:n {%<⟨code⟩%>}#/%expl3 | ||
\benchmark_tic:#/%expl3 | ||
\benchmark_toc:#/%expl3 | ||
\g_benchmark_duration_target_fp#/%expl3 | ||
\g_benchmark_ops_fp#/%expl3 | ||
\g_benchmark_time_fp#/%expl3 |
Oops, something went wrong.