有人知道如何计算表格环境中的单词数吗?
答案1
环境tabular
可以通过包来隔离preview
。然后,其他内容将被丢弃,仅tabular
设置:
\documentclass{article}
\usepackage{lipsum}
\usepackage{booktabs}
%----------
\usepackage[active]{preview}
\PreviewEnvironment[[!]{tabular}
% Prevent hyphenation
\hyphenpenalty10000
\sloppy
%----------
\begin{document}
\lipsum[1]
\begin{tabular}{p{10cm}}
\toprule
Some text in a table\tabularnewline
\midrule
\lipsum[2]\tabularnewline
\bottomrule
\end{tabular}
\lipsum[3]
\end{document}
然后,可以将输出文件(例如 PDF)转换为文本(例如pdftotext
),并可以通过您选择的方法(例如wc --words
)计算单词。我在这个例子中得到了 85 个单词。
一般来说,表格可以包含很多不同的东西(数字、公式、符号、图像、重复的表头和表尾、标题……)。在计算之前,应该正确定义“单词”这个术语。
答案2
首先要注意的是,如果不清楚什么算作一个单词,那么在表格中计算单词数可能会很棘手。对于包含纯文本内容的表格,它可能效果很好,但数字和标签很容易被算作单词,这可能不是你想要的。很难制定一个好的、通用的规则来计算表格中的单词数:无论如何,这取决于表格包含什么类型的内容。
在特克斯考特,您可以添加如何解析表的规则:默认情况下,它们不被计算在内。对于环境,您可以通过%TC:envir
在文档中插入注释来执行此操作,TeXcount 将以此为指令来添加环境解析规则:
%TC:envir tabular [ignore] word
\begin{tabular}{|r|l|}
\hline
7C0 & hexadecimal \\
3700 & octal \\ \cline{2-2}
11111000000 & binary \\
\hline \hline
1984 & decimal \\
\hline
\end{tabular}
该规则意味着tabular
环境采用一个被忽略的参数,并且内容被视为类型word
。
这将对单词和文本的其余部分进行计数。要单独对表格中的单词进行计数,可以使用以下方法为此目的创建单独的计数器:
%TC:newcounter tableword
%TC:envir tabular [ignore] tableword
反而。
请注意,TeXcount 还会将左列中的数字/代码计为单词。由于表格可能难以解析,甚至可能不清楚应该将哪些内容计为单词,因此您应该验证 TeXcount 是否真正计算了您想要计算的内容。TeXcount 提供颜色编码输出,指示哪些元素已计为单词,这使得可以相对轻松地检查这一点。
TeXcount 是一个 Perl 脚本,很可能随 TeX 安装一起提供。或者,也许更方便测试,您可以使用TeXcount Web 应用程序。