查找并删除过时的 Laravel 本地化

Find and delete obsolete Laravel localization

我有一个用 Laravel 制作的长期项目。这是一个多语言站点,我使用了框架的标准本地化。翻译的文本很多,随着时间的推移,许多已经过时(它们没有在代码中的任何地方使用)。

找到并消除它们的最简单方法是什么?

我想写一个直接查看代码文件的程序,但也许有更简单的方法。我一直在寻找最常见的 IDE 的插件,但无所事事。

PhpStorm/Intellij Idea Ultimate 的帮助下,有一种丑陋的方法可以做到这一点。我会逐步解释。

  • 我假设您使用 trans() 翻译辅助函数
  • 导航到 src/Illuminate/Foundation/helpers.php 并找到 trans 函数
  • 通过在 mac 中使用 cmd + b 在您的代码库中找到 trans 函数的用法。
  • 点击右上角的按钮说 Open in Find Tool Window
  • 如果它给你警告too many usages,点击continue
  • Find Tool Window右击selectExport to Text File
  • 在 sublime 或任何文本编辑器中打开文件,使用多光标或正则表达式格式化您的行,以便仅从下载的文件中获取 your-translation-file.your-translation-key 部分行。现在我们都使用了翻译
  • 您将需要 write/find 一个脚本,该脚本将为您提供一个类似的列表,该列表将扫描 resources/lang/en/ 文件夹下的文件并为参考点创建相同的格式。
  • 通过使用 redis setstwo datatable tables and some joinsan excel sheet with some custom formula 将获得您创建的翻译(第二个列表)与使用的翻译(第一个列表)的区别。
  • 此差异将是您未使用的翻译,例如 some-file-name.unued-key

我希望有更好的方法来做到这一点,例如 IDE 功能、插件或脚本。