ZIm/typos.toml
Marshall Bowers e60123bbdc
Allow icon themes to provide their own file associations (#24926)
This PR adds the ability for icon themes to provide their own file
associations.

The old `file_types.json` that was previously used to make these
associations has been removed in favor of storing them on the default
theme.

Icon themes have two new fields on them:

- `file_stems`: A mapping of file stems to icon keys.
- `file_suffixes`: A mapping of file suffixes to icon keys.

These mappings produce icon keys which can then be used in `file_icons`
to associate them to a particular icon:

```json
{
  "file_stems": {
    "Makefile": "make"
  },
  "file_suffixes": {
    "idr": "idris"
  },
  "file_icons": {
    "idris": { "path": "./icons/idris.svg" },
    "make": { "path": "./icons/make.svg" }
  }
}
```

When loading an icon theme, the `file_stems` and `file_icons` fields
will be merged with the ones from the base icon theme, with the values
from the icon theme being loaded overriding ones in the base theme.

Release Notes:

- Added the ability for icon themes to provide their own file
associations.
2025-02-15 00:35:13 +00:00

63 lines
2.1 KiB
TOML

[files]
ignore-files = true
ignore-hidden = false
extend-exclude = [
".git/",
# Contributor names aren't typos.
".mailmap",
# File suffixes aren't typos.
"crates/theme/src/icon_theme.rs",
"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/livekit_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",
# 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/",
# Spellcheck triggers on `|Fixe[sd]|` regex part.
"script/danger/dangerfile.ts",
# Hashes are not typos
"script/patches/use-cross-platform-livekit.patch"
]
[default]
extend-ignore-re = [
'cl\[ist]',
'\[lan\]guage',
'"ba"',
# :/ crates/collab/migrations/20231009181554_add_release_channel_to_rooms.sql
"COLUMN enviroment",
"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