次の割り当てa = z.a etc.
が正しいと仮定すると、関数を使用してそれらを取得することは可能ですか。メイン コードではがポイントであり、がポイントを表す接尾辞であるiso
ため、「iso」という名前を考えました。a
z.a
% !TEX TS-program = lualatex
\documentclass{article}
\usepackage{tkz-euclide}
\usepackage{tkz-elements}
\begin{document}
\parindent = 0pt
\begin{elements}
z.a = {5,2}
z.b = {3,-2}
z.c = {4,0}
-- instead of a = z.a b = z.b c = z.c
__ is it possible to do iso() with
-- function iso ()
-- for i,k in pairs(z) do
-- ????
-- end
-- end
\end{elements}
\end{document}
答え1
グローバルシンボルテーブルにアクセスすることもできます_G
が、ここではお勧めしません。
% !TEX TS-program = lualatex
\documentclass{article}
\usepackage{luacode}
\begin{document}
\parindent = 0pt
\begin{luacode}
z={}
z.a = {5,2}
z.b = {3,-2}
z.c = {4,0}
z["a'"] ={2,4}
-- instead of a = z.a b = z.b c = z.c
function iso ()
for i,k in pairs(z) do
_G[i]=k
end
end
iso()
\end{luacode}
% look at variable b
(\directlua{tex.print(b[1])},\directlua{tex.print(b[2])})
\end{document}