Disclaimer: The whole thing (including README) is Vibe coded... Fortunately or unfortunately, I didn't write even a single line of this 💀
Transinline is a tiny Windows tray app for translating selected text anywhere.
Select text in Okular, a browser, Word, or any app that supports Ctrl+C, press your configured hotkey, and a small popup appears near the cursor with the translation.
Persian README: README.fa.md
- Works across different apps
- Light and dark mode support
- Google Translate, Abadis (for Persian), or both
- Configurable provider, source and target languages
- Optional startup registration for Windows sign-in
- Windows 10 or newer
- .NET Desktop Runtime 8
- Open the GitHub repository page.
- Go to Releases.
- Download the latest
Transinline.zip. - Extract the zip somewhere permanent, for example
C:\Apps\Transinline. - Run
Transinline.exe. - Select text in any app.
- Press
Ctrl+Alt+T.
Keep these items together in the extracted folder:
Transinline.exetransinline.config.jsonassets
You can also build the app yourself from source with the commands below.
Edit transinline.config.json next to the exe:
{
"hotkey": "Ctrl+Alt+T",
"provider": "google",
"sourceLanguage": "auto",
"targetLanguage": "fa"
}Supported providers:
googleabadisboth
Supported hotkey examples:
Ctrl+Alt+TCtrl+Shift+QAlt+F8
Language codes use Google Translate-style short codes:
sourceLanguage:auto,en,fa,de, ...targetLanguage:fa,en,de, ...
Notes:
Fnusually cannot be registered by Windows apps because it is handled by keyboard firmware.Win+Tis reserved by Windows on many machines.- The app reloads the config automatically after you save it.
- Abadis is only used for English-to-Persian lookups in this app.
Transinline is an interactive tray app, so it should not run as a real Windows Service. Windows Services run in a background session and cannot reliably read selected text or show a popup on your desktop.
Use startup registration instead:
.\Transinline.exe --install-startupRemove it:
.\Transinline.exe --uninstall-startupCheck status:
.\Transinline.exe --startup-statusThe tray menu also includes startup registration commands.
For convenience, --install-service, --uninstall-service, and --service-status are accepted as aliases for the startup commands.
dotnet builddotnet publish -c Release -r win-x64 --self-contained false -p:PublishSingleFile=true -o .\publishThe publish output includes:
Transinline.exetransinline.config.json
When the hotkey is pressed, Transinline waits for the hotkey keys to be released, sends Ctrl+C, waits for the clipboard to update, restores the previous clipboard text, then translates the captured selection.
This keeps the app simple and lets it work across many Windows applications.
- Apps that block copying selected text cannot be translated.
- Abadis is a dictionary site, so phrase and sentence results may be sparse.
- Google translation uses an unofficial public endpoint and may change.
App code: MIT.
Bundled fonts use their own licenses. See FONT-LICENSES.md.
