Flutter国际化校验插件l10n_lint的使用

Flutter国际化校验插件l10n_lint的使用

l10n_lint 插件为 Flutter 的本地化提供了一套校验规则。它可以帮助你检查本地化的初始化是否正确,并找出应该被本地化的字符串字面量。

特性

  • 命令行工具用于初始化、排序和获取未使用的值。
  • 校验规则确保本地化的正确初始化。
  • 检测应被本地化的字符串字面量。

开始使用

在开始使用 l10n_lint 包之前,请确保已经安装了 Flutter SDK。

要安装 l10n_lint 命令行工具,请运行以下命令:

dart pub global activate l10n_lint

初始化 Flutter 本地化

l10n --init

该命令将执行以下操作:

  • 创建 l10n.yaml 文件。
  • 创建 lib/l10n 文件夹。
  • 创建 lib/l10n/app_en.arb 文件。
  • 写入文件内容。
  • pubspec.yaml 中添加 intlflutter_localizations 依赖。

其他命令用法

l10n <flags> [arguments]
-h, --help                  打印此帮助信息。
-v, --verbose               显示额外的命令输出。
-s, --sort                  对 ARB 文件按字母顺序进行排序。
-u, --[no-]remove-unused    从 ARB 文件中删除未使用的翻译。
-i, --init                  初始化 l10n 工具。
    --version               打印工具版本。

使用校验功能

要在你的 Flutter 项目中使用 l10n_lint,请遵循以下步骤:

  1. 打开项目的 pubspec.yaml 文件。
  2. l10n_lint 添加为开发依赖项:
dev_dependencies:
  flutter_lints: ^3.0.0
  custom_lint:
  l10n_lint:
  1. analysis_options.yaml 中添加:
include: package:flutter_lints/flutter.yaml

analyzer:
  plugins: 
    - custom_lint

待办事项

  • ✅ 显示当运行 l10n unused 时删除的键的数量。
  • ❌ 添加测试

完整示例 Demo

以下是一个完整的示例,展示了如何在 Flutter 项目中使用 l10n_lint 插件。

示例代码

import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  [@override](/user/override)
  Widget build(BuildContext context) {
    // no expect_lint: avoid_string_literals_inside_widget
    return const Text('硬编码字符串字面量将不支持本地化!');
  }
}

更多关于Flutter国际化校验插件l10n_lint的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter国际化校验插件l10n_lint的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


l10n_lint 是一个用于 Flutter 应用国际化的静态分析插件,它可以帮助开发者在使用 flutter_localizationsintl 包时,确保国际化资源的正确性和完整性。通过 l10n_lint,你可以自动检测和校验翻译文件、缺失的翻译、未使用的翻译等问题。

安装 l10n_lint

首先,你需要在 pubspec.yaml 文件中添加 l10n_lint 作为开发依赖:

dev_dependencies:
  l10n_lint: ^1.0.0

然后运行 flutter pub get 来安装依赖。

配置 l10n_lint

在项目根目录下创建一个 analysis_options.yaml 文件(如果已经存在,则直接编辑它),并添加 l10n_lint 的配置:

analyzer:
  plugins:
    - l10n_lint

使用 l10n_lint

1. 检查未使用的翻译

l10n_lint 可以检测项目中未使用的翻译字符串。运行以下命令:

flutter pub run l10n_lint:unused

这个命令会扫描你的项目,找出那些在代码中没有被引用的翻译字符串。

2. 检查缺失的翻译

l10n_lint 还可以检测项目中缺失的翻译。运行以下命令:

flutter pub run l10n_lint:missing

这个命令会检查所有翻译文件,找出那些在某些语言中缺失的翻译字符串。

3. 检查翻译文件的格式

l10n_lint 可以检查翻译文件的格式是否正确。运行以下命令:

flutter pub run l10n_lint:format

这个命令会检查所有翻译文件的格式是否符合 intl 包的要求。

4. 自动修复问题

l10n_lint 还提供了自动修复某些问题的功能。例如,你可以运行以下命令来自动删除未使用的翻译:

flutter pub run l10n_lint:unused --fix

集成到 CI/CD

你可以将 l10n_lint 集成到你的 CI/CD 流程中,以确保每次构建时都能自动检查国际化资源的问题。例如,在 GitHub Actions 中,你可以添加如下步骤:

- name: Check l10n
  run: flutter pub run l10n_lint:missing && flutter pub run l10n_lint:unused
回到顶部