[files]
ignore-files = true
ignore-hidden = false
extend-exclude = [
    ".git/",

    # Contributor names aren't typos.
    ".mailmap",

    # File suffixes aren't typos
    "assets/icons/file_icons/file_types.json",
    "crates/extensions_ui/src/extension_suggest.rs",

    # Some countries codes are flagged as typos.
    "crates/anthropic/src/supported_countries.rs",
    "crates/google_ai/src/supported_countries.rs",
    "crates/open_ai/src/supported_countries.rs",

    # Some crate names are flagged as typos.
    "crates/indexed_docs/src/providers/rustdoc/popular_crates.txt",

    # Stripe IDs are flagged as typos.
    "crates/collab/src/db/tests/processed_stripe_event_tests.rs",
    # Not our typos
    "crates/live_kit_server/",
    # Vim makes heavy use of partial typing tables
    "crates/vim/",
    # Editor and file finder rely on partial typing and custom in-string syntax
    "crates/file_finder/src/file_finder_tests.rs",
    "crates/editor/src/editor_tests.rs",
    # Clojure uses .edn filename extension, which is not a misspelling of "end"
    "extensions/clojure/languages/clojure/config.toml",
    # There are some names in the test data that are incorrectly flagged as typos.
    "crates/git/test_data/blame_incremental_complex",
    "crates/git/test_data/golden/blame_incremental_complex.json",
    # We have some base64-encoded data that is incorrectly being flagged.
    "crates/rpc/src/auth.rs",
    # glsl isn't recognized by this tool
    "extensions/glsl/languages/glsl/",
    # Windows likes its abbreviations
    "crates/gpui/src/platform/windows/",
    # Some typos in the base mdBook CSS.
    "docs/theme/css/"
]

[default]
extend-ignore-re = [
    'cl\[ist]',
    '\[lan\]guage',
    '"ba"',
    ":ba\\|z",
    # :/ crates/collab/migrations/20231009181554_add_release_channel_to_rooms.sql
    "COLUMN enviroment",
    # Typo in ClickHouse column name.
    # crates/collab/src/api/events.rs
    "rename = \"sesssion_id\"",
    "doas",
    # ProtoLS crate with tree-sitter Protobuf grammar.
    "protols",
    # x11rb SelectionNotifyEvent struct field
    "requestor",
    # Not an actual typo but an intentionally invalid color, in `color_extractor`
    "#fof"
]
check-filename = true
