Saleem Proofreader
Apply approved Arabic text corrections from a JSON report directly to your project files.
What it does
You receive a JSON report of approved Arabic corrections. This extension scans your project, finds the original Arabic strings, and applies the approved corrections — all locally, with no network calls.
Who it's for
Developers maintaining Arabic websites or applications who receive proofreading reports and need to apply corrections to their codebase without manual search-and-replace.
How to use
- Load the report — Open the command palette (
Cmd/Ctrl + Shift + P) and run Saleem: Load Report. Select your JSON file.
- Review matches — The extension scans your workspace and shows every match grouped by file in a side panel.
- Approve or ignore — Review each match individually, or use bulk actions to approve all at once.
- Apply — Click
Apply All Approved. Files are modified but not saved, so you can review the diff before committing.
Example
Before (in your code):
<h1>مرحبا بكم في موقعنا</h1>
After (approved correction applied):
<h1>مرحباً بكم في موقعنا</h1>
Commands
| Command |
Description |
Saleem: Load Report |
Load a JSON corrections report |
Saleem: Scan Workspace |
Rescan the workspace for matches |
Saleem: Show Proofreader Panel |
Open the review panel |
Saleem: Apply All Approved Fixes |
Apply all approved corrections |
Saleem: Apply Safe Fixes Only |
Apply only unambiguous fixes |
Saleem: Clear Loaded Report |
Reset the extension state |
Settings
Configure under saleem.* in VS Code settings:
| Setting |
Default |
Description |
saleem.includeGlob |
Source files |
Which files to scan |
saleem.excludeGlob |
Build folders |
Which files to skip |
saleem.autoSaveAfterApply |
false |
Save files automatically after applying corrections |
saleem.scanOnReportLoad |
true |
Start scanning immediately after loading a report |
Privacy & Security
- 100% local — No network requests. Your code never leaves your machine.
- No telemetry — The extension does not collect usage data.
- No AI calls — Pure string matching. No language models involved.
Troubleshooting
No matches found
The strings in your report may be generated server-side (e.g., from a CMS) and not present in your source files. This extension only matches exact strings in your code.
A file was skipped
Files that aren't valid UTF-8 are skipped automatically. Check the output panel for the file path if needed.
Slow scan on large projects
Tighten the saleem.excludeGlob setting to skip folders you know don't contain Arabic text.
Requirements
- VS Code 1.85 or newer (also works with Cursor and VSCodium)
License
MIT