2025-08-19 08:06:37 -04:00

70 lines
1.6 KiB
Python

from talon import Context, Module
from ..user_settings import track_csv_list
mod = Module()
mod.list("file_extension", desc="A file extension, such as .py")
_file_extensions_defaults = {
"dot pie": ".py",
"dot elixir": ".ex",
"dot talon": ".talon",
"dot talon list": ".talon-list",
"dot mark down": ".md",
"dot shell": ".sh",
"dot vim": ".vim",
"dot see": ".c",
"dot see sharp": ".cs",
"dot com": ".com",
"dot net": ".net",
"dot org": ".org",
"dot us": ".us",
"dot U S": ".us",
"dot co dot UK": ".co.uk",
"dot exe": ".exe",
"dot bin": ".bin",
"dot bend": ".bin",
"dot jason": ".json",
"dot jay son": ".json",
"dot J S": ".js",
"dot java script": ".js",
"dot TS": ".ts",
"dot type script": ".ts",
"dot csv": ".csv",
"totssv": ".csv",
"tot csv": ".csv",
"dot cassie": ".csv",
"dot text": ".txt",
"dot julia": ".jl",
"dot J L": ".jl",
"dot html": ".html",
"dot css": ".css",
"dot sass": ".sass",
"dot svg": ".svg",
"dot png": ".png",
"dot wave": ".wav",
"dot flack": ".flac",
"dot doc": ".doc",
"dot doc x": ".docx",
"dot pdf": ".pdf",
"dot tar": ".tar",
"dot g z": ".gz",
"dot g zip": ".gzip",
"dot zip": ".zip",
"dot toml": ".toml",
"dot java": ".java",
"dot class": ".class",
"dot log": ".log",
}
ctx = Context()
@track_csv_list(
"file_extensions.csv",
headers=("File extension", "Name"),
default=_file_extensions_defaults,
)
def on_update(values):
ctx.lists["self.file_extension"] = values