diff options
author | Hans Hagen <pragma@wxs.nl> | 2011-07-19 10:35:00 +0200 |
---|---|---|
committer | Hans Hagen <pragma@wxs.nl> | 2011-07-19 10:35:00 +0200 |
commit | a434ef6dd739d3699787291f376e1e22b012f46a (patch) | |
tree | ea02e9b62281480a68f6d2a606d75149807f80df /metapost | |
parent | 38d8d7ef427e171ef459f9e7e49fb8f051ab56a6 (diff) | |
download | context-a434ef6dd739d3699787291f376e1e22b012f46a.tar.gz |
beta 2011.07.19 10:35
Diffstat (limited to 'metapost')
-rw-r--r-- | metapost/context/base/mp-grph.mp | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/metapost/context/base/mp-grph.mp b/metapost/context/base/mp-grph.mp index 3cd9f2cfb..48776a09f 100644 --- a/metapost/context/base/mp-grph.mp +++ b/metapost/context/base/mp-grph.mp @@ -22,13 +22,29 @@ string CRLF ; CRLF := char 10 & char 13 ; picture _currentpicture_ ; +numeric _fig_nesting_ ; _fig_nesting_ := 0 ; + def beginfig (expr c) = - begingroup - charcode := c ; - resetfig ; - scantokens extra_beginfig ; + _fig_nesting_ := _fig_nesting_ + 1 ; + if _fig_nesting_ = 1 : + begingroup + charcode := c ; + resetfig ; + scantokens extra_beginfig ; + fi ; enddef ; +def endfig = + ; % safeguard + if _fig_nesting_ = 1 : + scantokens extra_endfig; + shipit ; + endgroup ; + fi ; + _fig_nesting_ := _fig_nesting_ - 1 ; +enddef; + + def resetfig = clearxy ; clearit ; |