Logo Lanfrica

jobehi/totun

Domain:

natural language processing

Record type:

tools
Creator:
job
Host:
Type Tunisian the way you do in chat, Latin letters, French spelling, Arabizi digits, and get Arabic script live, in any app. # toTunKeyboard — Tunisian Arabizi keyboard for macOS Type Tunisian the way you do in chat — Latin letters, French spelling, Arabizi digits — and get Arabic script **live, in any app**. ``` 3assléma → عسلامة chnowa a7welek? → شنوة أحوالك؟ yezzi → يزّي ``` - **100% offline, rule-based.** No LLM, no network, no telemetry — a lexicon of common Tunisian words plus grapheme rules, in ~400 lines of Swift. - **System-wide.** A menu bar toggle converts as you type, in every app. Finish a word (space, enter, punctuation) and it's replaced in place with Arabic script. - **Deterministic.** The same input always produces the same output, and you can read the rules. ## Install **Download**: grab `toTunKeyboard.zip` from the latest release, unzip, and move the app wherever you like. Releases are currently not notarized — if macOS complains about an unverified developer, right-click the app → **Open** (once). **Or build from source** (needs Xcode command line tools): ```bash git clone github.com cd totun ./make-app.sh open toTunKeyboard.app ``` 1. A **TN** item appears in the menu bar. On first launch macOS asks for **Accessibility** permission (System Settings → Privacy & Security → Accessibility) — that's what lets the app rewrite what you type. 2. Toggle with the menu bar item or **⌃⌥T** from anywhere. Enabled shows **تن**. 3. Type normally. Backspace edits the current word; arrows/Esc/clicking cancels it; ⌘/⌃ shortcuts are untouched; plain numbers (`2024`) pass through. `,` `;` `?` become `،` `؛` `؟`. > `make-app.sh` signs with your Apple Development identity when available, so the Accessibility grant survives rebuilds. With the ad-hoc fallback, re-grant the permission after each rebuild. ## Typing conventions Digits are the usual Arabizi set: | `2` | `3` | `5` | `6` | `7` | `8` | `9` | |---|---|---|---|---|---|---| | ء (seat rules below) | ع | خ | ط | ح | غ | ق | French-based digraphs and letters: | You type | You get | Example …