我想编写一个包含标签的宏。当我用宏生成标签时,我似乎无法在 Winedt 9 提供的 Gathered 资源列表中访问它。
我真的希望生成的标签至少出现在我收集的资源中。我想我可以把这部分从宏中去掉,有人有干净的方法来做到这一点吗(我想在宏内或宏外都可以)?
以下是 MWE
\documentclass{article}
\usepackage{graphicx}
\newcommand{\myFig}[2]{
\begin{figure}
\centering
Lame figure
\caption{#1}\label{#2}
\end{figure}
}
\begin{document}
\myFig{caption is here}{myLabel}
I want to reference figure~\ref{myLabel}. %myLabel does not pop up: see gif
\end{document}
答案1
要在“树”界面中收集您的标签,请按照以下步骤操作:
显示“选项界面”(选项 -> 选项界面)
双击“树”项(
Tree.ini
打开)找到线条
BRANCH="Labels-TeX" BRANCH_CAPTION="Labels (#)" // Change Mode from TeX to ? to disable this item BRANCH_MODE_FILTER="TeX|DTX;INS;STY;AUX" BRANCH_ICON="Label" BRANCH_SORTED=1 BRANCH_CASE_SENSITIVE=1 BRANCH_IGNORE_COMMENTS=1 BRANCH_IGNORE_VERBATIM=1 BRANCH_EXPANDED=0 BRANCH_BEFORE_BUILD_MACRO="SaveSort;SetSort(1,1,1,-1,1,1);" BRANCH_AFTER_BUILD_MACRO="RestoreSort;" ITEM="\label{?}"
并在其后插入行
ALT="\myFig{?}{?}"
按下Shift+Ctrl+F9即可重新加载文件。
现在你的标签就被收集在“树”界面中了:
要在“收集”界面收集你的标签,请按照以下步骤操作:
在“选项界面”中,双击“收集”项(
Gather.ini
打开)找到线条
PAGE="Label-TeX" PAGE_CAPTION="Label" // Change Mode from TeX to ? to disable this item PAGE_MODE_FILTER="TeX|DTX;INS;STY;AUX" PAGE_SORTED=1 PAGE_CASE_SENSITIVE=1 PAGE_IGNORE_COMMENTS=1 PAGE_IGNORE_VERBATIM=1 PAGE_BEFORE_BUILD_MACRO="SaveSort;SetSort(1,1,1,-1,1,1);" PAGE_AFTER_BUILD_MACRO="RestoreSort;" PAGE_ON_ACTIVATE_MACRO="GlobalMark;" PAGE_ON_SHOW_MACRO="GlobalMark;" ITEM="\label{?}"
并在其后插入行
ALT="\myFig{?}{?}"
按下Shift+Ctrl+F9即可重新加载文件。
现在你的标签已经被收集到“聚集”界面中了:
现在你的标签也显示在“GDI Popup Interface”界面中了:
编辑
要为\yt{}{}{}
最后一个参数是标签的命令添加此功能(如您的注释中所示),您只需添加以下行
ALT="\yt{?}{?}{?}"
和上面Tree.ini
一样Gather.ini
。最后一个通配符 ( ?
) 标识标签。