有没有直接的方法可以在 TeXstudio 中获取字数?

有没有直接的方法可以在 TeXstudio 中获取字数?

TeXstudio中的文本分析工具非常有用,但我似乎找不到直接准确的方法来获取编译后的PDF文件中的总字数。

据我了解,此工具可统计文本中的短语。即使将每个短语的长度设置为仅一个单词,与 Texmaker 中的字数统计功能相比,我也无法获得准确的计数。

你怎么认为?

附言:我正在使用 TeXstudio V2.8.6,MAC。

答案1

菜单:工具\分析文本然后:计数

来自评论:

在第二个下拉框中设置maximum words per phrase:为 1(我认为这是默认值)然后短语 = 单词。

另外,如果您选择了一段文本,请Source选择Selection

答案2

可以使用实用程序 pdftotext 和 wc[1]. 可通过以下方式集成到 texstudio 中

  1. 安装 pdftotext 和 wc
  2. 创建脚本

    • Windows:count_pdf_words.bat
      内容:

      @echo off
      echo 计算 %1 中的单词数
      echo 结果:
      pdftotext %1 - | wc -w

    • Linux:count_pdf_words.sh
      内容:

      #!/bin/bash
      echo 计算 $1 中的单词数
      echo 结果:
      pdftotext $1 - | wc -w

      使用以下命令使脚本可执行:chmod +x count_pdf_words.sh

  3. 打开 texstudio -> 选项 -> 配置 -> 构建 -> 用户定义命令 -> 添加

    • 第一个字段:user#:Count words in pdf
    • 第二个字段:<path>/count_pdf_words.<ext> %.pdf
    • #用您的用户命令的实际号码替换(第一个字段)
    • 替换<path>为脚本的路径(第二个字段)
    • <ext>用脚本的扩展名替换(第二个字段)
  4. 使用以下命令执行命令:
    texstudio -> 工具 -> 用户 -> 统计 pdf 中的字数

答案3

除了 keocra 的解决方案外,这里有一个 PowerShell 脚本,在 Windows 上以相同方式使用时可以很好地运行:

$file=$args[0]
If (-not $file) {
    echo "Please provide a file to query"
    exit 1
}

echo "Counting words in $file"
$result = pdftotext $file - | Measure-Object -Word
$wordCount = $result.Words
echo "Result: $wordCount"

确保在用户命令的第二个(即命令)字段中使用powershell或作为命令前缀,以确保脚本真正运行:pwsh

例如pwsh "C:\Users\evanjs\scripts\count_pdf_words.ps1" %.pdf

查看测量对象文档以获取有关 cmdlet 的更多信息。


另一点需要注意的是:我最初尝试使用xpdf 实用程序通过 Chocolatey,但发现 stdout( -) 标志不起作用。

虽然版本波普勒Chocolatey 似乎有点过时了,当给出标志时它确实会输出到标准输出-

相关内容