diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-20 03:00:40 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-20 03:00:40 +0000 |
commit | 4b0f677aea00124171602de9498d50ac10d71eb3 (patch) | |
tree | 495035d1f1760c35dc2cefddbc9c73b08510bc11 /macros/latex/contrib/ocgx2 | |
parent | 344e74a832ad49360aa4e08c467ff783c1f02f66 (diff) |
CTAN sync 201909200300
Diffstat (limited to 'macros/latex/contrib/ocgx2')
-rw-r--r-- | macros/latex/contrib/ocgx2/ChangeLog | 5 | ||||
-rw-r--r-- | macros/latex/contrib/ocgx2/README.md | 18 | ||||
-rw-r--r-- | macros/latex/contrib/ocgx2/ocgx2.sty | 37 |
3 files changed, 41 insertions, 19 deletions
diff --git a/macros/latex/contrib/ocgx2/ChangeLog b/macros/latex/contrib/ocgx2/ChangeLog index 3384906d48..5957ad4c5c 100644 --- a/macros/latex/contrib/ocgx2/ChangeLog +++ b/macros/latex/contrib/ocgx2/ChangeLog @@ -1,3 +1,8 @@ +2019-09-19 + * v0.45: ocgx2.sty + * new: using comma for separating OCG ids in \showocg, \hideocg etc.; <space> + still accepted for compatibility with ocgx/ocg-p + 2019-09-17 * v0.44: ocgx2.sty * fix: wrong visibility of reopened ocg (introduced in v0.41) diff --git a/macros/latex/contrib/ocgx2/README.md b/macros/latex/contrib/ocgx2/README.md index e8b100e0cd..1f33d755ed 100644 --- a/macros/latex/contrib/ocgx2/README.md +++ b/macros/latex/contrib/ocgx2/README.md @@ -162,9 +162,9 @@ directive `\AllOff{...}` is written as `\Not{ \Or{ ... } }`. These are the available commands: ````latex -\switchocg[<trigger>]{<OCG ids to toggle, space separated>}{<link text>} -\showocg[<trigger>]{<OCG ids to switch ON, space separated>}{<link text>} -\hideocg[<trigger>]{<OCG ids to switch OFF, space separated>}{<link text>} +\switchocg[<trigger>]{<OCG ids to toggle, comma-separated>}{<link text>} +\showocg[<trigger>]{<OCG ids to switch ON, comma-separated>}{<link text>} +\hideocg[<trigger>]{<OCG ids to switch OFF, comma-separated>}{<link text>} \actionsocg[<trigger>]{<ids to toggle>}{<ids to switch ON>}{<ids to switch OFF>}{<link text>} ```` For details about their usage, read the @@ -172,18 +172,22 @@ For details about their usage, read the By default, links are triggered on mouse-click. Other triggers are possible with `ocgx2`. For this, `ocgx2` provides the optional argument `[<trigger>]` to -the commands listed above. Choose one of +the commands listed above. Choose *one* of ````latex onmousenter, onmouseexit, onmousedown, onmouseup, onmouseall ```` for `<trigger>`. In order to listen to more than one mouse event, use `onmouseall`. OCG ids in the mandatory argument(s) must then be grouped with -commas as follows: +braces and commas as follows: ````latex - <mouse-enter group>, <mouse-exit group>, <mouse-down group>, <mouse-up group> + {<mouse-enter group>}, {<mouse-exit group>}, {<mouse-down group>}, {<mouse-up group>} ```` Any of these groups may be left empty in order to configure only some -triggers. Inside the groups, OCG ids are separated by spaces. +triggers. Inside the groups, OCG ids are also separated by commas. Therefore, +braces must be put around the groups. For example: +````latex +\switchocg[onmouseall]{, ,{ocg1, ocg2, ocg3, ocg4},{ocg1, ocg2, ocg3, ocg4}}{Toggle layers on mouse-down and -up} +```` ---- diff --git a/macros/latex/contrib/ocgx2/ocgx2.sty b/macros/latex/contrib/ocgx2/ocgx2.sty index 2e6cbdf6aa..235fe5f90e 100644 --- a/macros/latex/contrib/ocgx2/ocgx2.sty +++ b/macros/latex/contrib/ocgx2/ocgx2.sty @@ -48,8 +48,8 @@ \RequirePackage{xparse} \RequirePackage{l3keys2e} -\def\g@ocgxii@date@tl{2019/09/17} -\def\g@ocgxii@version@tl{0.44} +\def\g@ocgxii@date@tl{2019/09/19} +\def\g@ocgxii@version@tl{0.45} \ProvidesExplPackage{ocgx2}{\g@ocgxii@date@tl}{\g@ocgxii@version@tl} {ports `ocgx' functionality to dvips+ps2pdf, xelatex and dvipdfmx} @@ -697,7 +697,22 @@ \cs_new_protected_nopar:Nn\ocgxii_ocglist_build:Nn{ \tl_set:Nx\l_ocglistarg_tl{#2}\tl_trim_spaces:N\l_ocglistarg_tl - \seq_set_split:NnV\l_ocgxii_ocglistarg_seq{~}\l_ocglistarg_tl + % first try splitting at commas (ocgx2 syntax) + \tl_set_eq:NN\l_tmpa_tl\l_ocglistarg_tl + \tl_remove_all:Nn\l_tmpa_tl{~} + \seq_set_split:NnV\l_ocgxii_ocglistarg_seq{,}\l_tmpa_tl + \seq_remove_all:Nn\l_ocgxii_ocglistarg_seq{} + \tl_set:Nx\l_tmpa_tl{\seq_count:N\l_ocgxii_ocglistarg_seq} + % now at spaces (legacy ocgx/ocg-p) + \tl_set_eq:NN\l_tmpb_tl\l_ocglistarg_tl + \tl_remove_all:Nn\l_tmpb_tl{,} + \seq_set_split:NnV\l_tmpb_seq{~}\l_tmpb_tl + \seq_remove_all:Nn\l_tmpb_seq{} + \tl_set:Nx\l_tmpb_tl{\seq_count:N\l_tmpb_seq} + %take the seq having more elements (guessing the separator most likely used) + \int_compare:nT{\l_tmpb_tl>\l_tmpa_tl}{ + \seq_set_eq:NN\l_ocgxii_ocglistarg_seq\l_tmpb_seq + } \seq_map_variable:NNn\l_ocgxii_ocglistarg_seq\l_tempa_tl{ \ocgxii_process_ocgref:NN#1\l_tempa_tl } @@ -986,15 +1001,13 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \cs_new_protected:Nn\ocgxii_process_ocgref:NN{ - \str_if_eq:eeF{#2}{}{ - \tl_if_exist:cTF{ocgx2.ocg.#2}{ - \tl_put_right:Nx#1{~\tl_use:c{ocgx2.ocg.#2}} - }{ - \msg_warning:nnx{ocgx2}{undefined~OCG}{#2} - \tl_if_exist:NF\g_ocgxii_refundefwarned_tl{ - \tl_new:N\g_ocgxii_refundefwarned_tl - \AtEndDocument{\msg_warning:nn{ocgx2}{undefined~OCGs}} - } + \tl_if_exist:cTF{ocgx2.ocg.#2}{ + \tl_put_right:Nx#1{~\tl_use:c{ocgx2.ocg.#2}} + }{ + \msg_warning:nnx{ocgx2}{undefined~OCG}{#2} + \tl_if_exist:NF\g_ocgxii_refundefwarned_tl{ + \tl_new:N\g_ocgxii_refundefwarned_tl + \AtEndDocument{\msg_warning:nn{ocgx2}{undefined~OCGs}} } } } |