Flutter格式化工具插件formatus的使用

Flutter格式化工具插件formatus的使用

FORMATUS

一个无任何依赖的Flutter富文本编辑器。


特性

  • 支持所有平台运行
  • 支持多种段落和内联格式
  • 小巧且易于使用
  • 不依赖其他包
  • 包含格式化文本查看器

开始使用

pubspec.yaml文件中添加最新版本的Formatus

flutter:
  formatus: ^1.4.0

创建一个FormatusController和一个FormatusBar。同时为FormatusBarTextFieldTextFormField提供一个FocusNode


使用示例

以下是一个完整的示例代码,展示如何使用Formatus插件。

import 'package:flutter/material.dart';
import 'package:formatus/formatus.dart';

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: const MyHomePage(),
      theme: ThemeData(useMaterial3: true),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key});

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  late FormatusController controller;
  final FocusNode focusNode = FocusNode(debugLabel: 'formatus');
  String savedText = '';

  @override
  void initState() {
    super.initState();
    controller = FormatusController(
      formattedText: savedText,
      onChanged: (v) => setState(() => savedText = v),
    );
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('Formatus 富文本编辑器')),
      body: SafeArea(
        minimum: const EdgeInsets.all(16),
        child: Column(
          children: [
            FormatusBar(
              controller: controller,
              textFieldFocus: focusNode,
            ),
            TextFormField(
              controller: controller,
              focusNode: focusNode,
              minLines: 3,
              maxLines: 10,
            ),
            ElevatedButton(
              onPressed: () {
                // 显示格式化后的文本
                showDialog(
                  context: context,
                  builder: (context) => AlertDialog(
                    content: FormatusViewer(
                      formattedText: controller.formattedText,
                    ),
                  ),
                );
              },
              child: const Text('查看格式化文本'),
            ),
          ],
        ),
      ),
    );
  }

  @override
  void dispose() {
    controller.dispose();
    super.dispose();
  }
}

说明

  1. 导入必要的库

    import 'package:flutter/material.dart';
    import 'package:formatus/formatus.dart';
  2. 初始化控制器
    FormatusController用于管理富文本的格式和内容。

    late FormatusController controller;
  3. 焦点节点
    FormatusBarTextField提供一个FocusNode以确保光标位置正确。

    final FocusNode focusNode = FocusNode(debugLabel: 'formatus');
  4. 构建界面
    使用FormatusBarTextFormField来实现富文本编辑功能。

    FormatusBar(
      controller: controller,
      textFieldFocus: focusNode,
    ),
    TextFormField(
      controller: controller,
      focusNode: focusNode,
      minLines: 3,
      maxLines: 10,
    ),
  5. 查看格式化后的文本
    点击按钮后弹出对话框,显示格式化后的文本。

    ElevatedButton(
      onPressed: () {
        showDialog(
          context: context,
          builder: (context) => AlertDialog(
            content: FormatusViewer(
              formattedText: controller.formattedText,
            ),
          ),
        );
      },
      child: const Text('查看格式化文本'),
    ),
1 回复

更多关于Flutter格式化工具插件formatus的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


在Flutter开发中,代码格式化是一个非常重要的步骤,它可以帮助保持代码的一致性和可读性。Flutter 提供了一个内置的代码格式化工具 dart format,但如果你想在开发过程中更方便地使用格式化工具,可以使用一些 IDE 插件或扩展。

formatus 是一个 Flutter 代码格式化工具插件,它可以帮助你自动格式化 Dart 代码。以下是如何使用 formatus 插件的步骤:

1. 安装 formatus 插件

formatus 插件通常是通过 IDE 的插件市场安装的。以下是在不同 IDE 中安装 formatus 插件的步骤:

在 Visual Studio Code 中安装

  1. 打开 Visual Studio Code。
  2. 点击左侧的扩展图标(或按 Ctrl+Shift+X)。
  3. 在搜索框中输入 formatus
  4. 找到 formatus 插件并点击“安装”按钮。

在 Android Studio 或 IntelliJ IDEA 中安装

  1. 打开 Android Studio 或 IntelliJ IDEA。
  2. 进入 File > Settings(在 macOS 上是 Preferences)。
  3. 在左侧菜单中选择 Plugins
  4. 在搜索框中输入 formatus
  5. 找到 formatus 插件并点击“安装”按钮。

2. 配置 formatus 插件

安装完成后,你可能需要对 formatus 插件进行一些配置,以确保它按照你的需求进行格式化。

在 Visual Studio Code 中配置

  1. 打开 Settings(按 Ctrl+,)。
  2. 搜索 formatus
  3. 你可以在这里配置格式化选项,例如是否在保存时自动格式化、是否在保存时修复导入等。

在 Android Studio 或 IntelliJ IDEA 中配置

  1. 进入 File > Settings(在 macOS 上是 Preferences)。
  2. 在左侧菜单中选择 Editor > Code Style > Dart
  3. 在这里你可以配置 Dart 代码的格式化规则。

3. 使用 formatus 插件

安装并配置好 formatus 插件后,你可以通过以下方式使用它:

在 Visual Studio Code 中使用

  • 手动格式化:打开一个 Dart 文件,然后按 Shift+Alt+F 来格式化代码。
  • 自动格式化:如果你在设置中启用了“保存时格式化”,那么每次保存文件时,代码都会自动格式化。

在 Android Studio 或 IntelliJ IDEA 中使用

  • 手动格式化:打开一个 Dart 文件,然后按 Ctrl+Alt+L 来格式化代码。
  • 自动格式化:如果你在设置中启用了“保存时格式化”,那么每次保存文件时,代码都会自动格式化。

4. 自定义格式化规则

如果你想要自定义 Dart 代码的格式化规则,可以在项目的根目录下创建一个 .dartfmt 文件,并在其中指定格式化规则。例如:

line_length: 80
indent: 2

5. 使用命令行工具

除了使用 IDE 插件,你还可以使用 Dart 自带的命令行工具 dart format 来格式化代码。例如:

dart format lib/
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!