diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index ee331326..a4241128 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -47,7 +47,7 @@ jobs:
           python3 find_dart_files.py
           flutter pub get
           flutter analyze
-          dart format --output=none --set-exit-if-changed .
+          dart format . --output=none --set-exit-if-changed
 
       - name: Install Python
         uses: actions/setup-python@v4
diff --git a/analysis_options.yaml b/analysis_options.yaml
index a31f7db1..ae33a6ca 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -3,16 +3,13 @@ include: package:lint/analysis_options.yaml
 analyzer:
   exclude:
     - [build/**]
+    - lib/l10n/**
     - lib/generated/**
   language:
     strict-raw-types: true
 
 linter:
   rules:
-  # ------ Disable individual rules ----- #
-  #                 ---                   #
-  # Turn off what you don't like.         #
-  # ------------------------------------- #
 
     # Make constructors the first thing in every class
     sort_constructors_first: true
diff --git a/tasks.py b/tasks.py
index 866809cb..cbecb788 100644
--- a/tasks.py
+++ b/tasks.py
@@ -39,6 +39,9 @@ def android(c):
     c.run("flutter build appbundle --release --no-tree-shake-icons")
 
 @task
-def format(c):
+def format(c, analyze=False, dry_run=False):
     """Format Dart code."""
-    c.run("dart format --output=none")
+    c.run(f"dart format .{" --output=none" if dry_run else ''}")
+
+    if analyze:
+        c.run("flutter analyze")