Hi, This works here:
\usemodule[circuitikz] \starttext \startcircuitikz \draw (0,2) to[I] (2,2); \stopcircuitikz \startcircuitikz \draw (0,2) to[I] (2,2); \stopcircuitikz \stoptextwith the attached. Make sure to put it in the regular context base path and run mtxrun --generate.
Aditya: can you check if we load enough? We really need to get rid of all these (kind of strange) t-* modules that somehow ended up in tikz and it's way easier and robust to occasionally add something needed to m-tikz than to try to catch hard-to-locate-and-fix stuff in the tikz distribution. If needed we can apply runtime patches too.
(nyw, it looks like tikz creates empty pfg files during a run but that's probbably has a reason)
Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
%D \module %D [ file=m-tikz, %D version=2021.07.12, %D title=\CONTEXT\ Extra Modules, %D subtitle=TIKZ support, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D A fixed variant of the t-tikz module distributed with tikz. For practical reasons %D per 2021 we split the module for \MKIV\ and \LMTX. (Maybe some day I'll optimize %D TIKZ a bit.) %D %D All these t-* modules in the tikz distribution make no sense as we can just load %D them here which is way cleaner. There is also some mkii filename mapping going on %D that is not needed on todays systems (windows has no 8.3 limitation and on unix %D tds finally adopted a case insensitive approach.) %D Just in case someone does a hard input ... \ifdefined\pgfdefined \endinput \fi \ifdefined\pgfcoredefined\endinput \fi %D ... but normally we end up here: \startmodule[tikz] \ifdefined\pdflastxpos \else \unprotect \frozen\overloaded\protected\def\pdflastxpos{\numexpr\clf_lastxpos\relax} \frozen\overloaded\protected\def\pdflastypos{\numexpr\clf_lastypos\relax} \protect \fi \permanent\protected\def\starttikzinput {\pushoverloadmode \pushcatcodetable \setcatcodetable\texcatcodes \catcode`\@=11 \catcode`\|=12 \catcode`\!=12 \autoparagraphmode\zerocount} \permanent\protected\def\stoptikzinput {\autoparagraphmode\plusone \popcatcodetable \popoverloadmode} \permanent\protected\def\tikzinputfile#1% {\starttikzinput \input{#1}\relax \stoptikzinput} \permanent\protected\def\tikzerrormessage#1#2#3% {\writestatus{#1}{#2}} % For now we need this but we need to educate the user to wrap settings in the % wrappers. So some day the next line will go. I need to check what commands are % possible outside a picture. \overloadmode\zerocount \permanent\protected\def\starttikzsettings {\pushoverloadmode \autoparagraphmode\zerocount} \permanent\protected\def\stoptikzsettings {\autoparagraphmode\plusone \popoverloadmode} \permanent\protected\def\starttikzpicture {\dontleavehmode \hcontainer\bgroup \autoparagraphmode\zerocount % \pushoverloadmode \ifdefined\PackageError\else \let\PackageError\tikzerrormessage \fi \tikzpicture} \permanent\protected\def\stoptikzpicture {\endtikzpicture % \popoverloadmode \egroup} \let\pgfdefined \relax \let\pgfcoredefined\relax \tikzinputfile{pgfutil-common.tex} \tikzinputfile{pgfutil-context.def} \tikzinputfile{pgfrcs.code.tex} \tikzinputfile{pgfsys.code.tex} \tikzinputfile{pgfkeys.code.tex} \tikzinputfile{pgfsyssoftpath.code.tex} \tikzinputfile{pgfsysprotocol.code.tex} \tikzinputfile{pgfcore.code.tex} \tikzinputfile{pgffor.code.tex} \tikzinputfile{pgfmoduleplot.code.tex} \tikzinputfile{tikz.code.tex} \let\startpgfpicture \pgfpicture \let\stoppgfpicture \endpgfpicture \let\startpgfscope \pgfscope \let\stoppgfscope \endpgfscope \let\startpgflowlevelscope \pgflowlevelscope \let\stoppgflowlevelscope \endpgflowlevelscope \let\startpgfinterruptpath \pgfinterruptpath \let\stoppgfinterruptpath \endpgfinterruptpath \let\startpgfinterruptpicture \pgfinterruptpicture \let\stoppgfinterruptpicture \endpgfinterruptpicture \let\startpgfinterruptboundingbox\pgfinterruptboundinbox \let\stoppgfinterruptboudingbox\endpgfinterruptboundingbox \let\normalusepgfmodule\usepgfmodule \let\normalusepgflibrary\usepgflibrary \tolerant\protected\def\usepgfmodule[#1]#;#2% somehow both variants are used {\starttikzinput \normalusepgfmodule[#1#2]% \stoptikzinput} \tolerant\protected\def\usepgflibrary[#1]#;#2% somehow both variants are used {\starttikzinput \normalusepgflibrary[#1#2]% \stoptikzinput} \usepgfmodule[shapes] \usepgfmodule[plot] \usepgfmodule[matrix] \usepgfmodule[decorations] \stopmodule
%D \module %D [ file=m-circuitikz, %D version=2021.12.03, %D title=\CONTEXT\ Extra Modules, %D subtitle=CURCUITIKZ support, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. %D A fixed variant of the t-curcuitikz module distributed with tikz. This one %D is for \LMTX. \usemodule[m][tikz] \startmodule[circuitikz] \def\pgfcircversion {1.4.4} \def\pgfcircversiondate {2021/10/31} \usetikzlibrary[calc] \usetikzlibrary[arrows.meta] \usetikzlibrary[bending] \usetikzlibrary[fpu] % may be needed for use fpu reciprocal (v1.0.1) \tikzinputfile{pgfcirc.defines.tex} \tikzinputfile{pgfcircutils.tex} \tikzinputfile{pgfcircpath.tex} \tikzinputfile{pgfcircshapes.tex} \tikzinputfile{pgfcircmonopoles.tex} \tikzinputfile{pgfcircbipoles.tex} \tikzinputfile{pgfcirctripoles.tex} \tikzinputfile{pgfcircquadpoles.tex} \tikzinputfile{pgfcircmultipoles.tex} \tikzinputfile{pgfcirclabel.tex} \tikzinputfile{pgfcircvoltage.tex} \tikzinputfile{pgfcirccurrent.tex} \tikzinputfile{pgfcircflow.tex} % defaults \setupmodule [current=european, voltage=european, resistor=american, inductor=cute, logic=american, siunitx=true, arrowmos=false] % can be done nicer ... todo \processaction [\currentmoduleparameter{voltage}] [european=>\ctikzset{voltage=european}, american=>\ctikzset{voltage=american}] \processaction [\currentmoduleparameter{current}] [european=>\ctikzset{ current=european}, american=>\ctikzset{ current=american}] \processaction [\currentmoduleparameter{label}] [straight=>\ctikzset{label/align = straight}, align=>\ctikzset{label/align = rotate}, smart=>\ctikzset{label/align = smart}] \processaction [\currentmoduleparameter{resistor}] [european=>\ctikzset{ resistor=european}, american=>\ctikzset{ resistor=american}] \processaction [\currentmoduleparameter{inductor}] [european=>\ctikzset{ inductor=european}, american=>\ctikzset{ inductor=american}, cute=>\ctikzset{ inductor=cute}] \processaction [\currentmoduleparameter{diode}] [full=>\ctikzset{ diode=full}, empty=>\ctikzset{ diode=empty}] \processaction [\currentmoduleparameter{logic}] [european=>\ctikzset{ logic ports=european}, american=>\ctikzset{ logic ports=american}] % hm, we have units built in and in mkii one can load the units module % ... always been so ... \processaction [\currentmoduleparameter{siunitx}] [true=>\def\SI #1#2{#1\,#2} \def\ampere {\rm{A}} \def\volt {\rm{V}} \def\ohm {\Omega} \def\siemens {\rm{S}} \def\farad {\rm{F}} \def\henry {\rm{H}} \def\second {\rm{s}} \def\coulomb {\rm{C}} \def\siemens {\rm{S}} \def\radians {\rm{rad}} \def\milli {\rm{m}} \def\micro {\mu} \def\nano {\rm{n}} \def\pico {\rm{p}} \def\kilo {\rm{k}} \def\mega {\rm{M}} \def\giga {\rm{G}} \def\tera {\rm{T}}] \unprotect \processaction [\currentmoduleparameter{arrowmos}] [true=>\pgf@circuit@mos@arrowstrue, false=>\pgf@circuit@mos@arrowsfalse] \protect \ctikzset{tripoles/op amp/font/.initial=\switchtobodyfont[small]} \aliased\let\stopcircuitikz\relax \permanent\protected\def\startcircuitikz#1\stopcircuitikz {\starttikzpicture#1\stoptikzpicture} \stopmodule \endinput
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________