mirror of
https://github.com/fmhy/edit.git
synced 2026-03-11 08:55:38 +00:00
improve linter and fix typos (#4697)
This commit is contained in:
parent
fcb268c37d
commit
6a8fb08fbf
3 changed files with 11 additions and 5 deletions
|
|
@ -567,7 +567,7 @@ ## ▷ Android Text Tools
|
|||
* ↪️ **[Android Code Editors](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/dev-tools#wiki_.25B7_android_code_editors)**
|
||||
* ⭐ **[Obsidian](https://obsidian.md/mobile)** - Highly Customizable Note-Taking App
|
||||
* ⭐ **[Easy Notes](https://github.com/Kin69/EasyNotes)**, [Notally](https://github.com/OmGodse/Notally), [NotallyX](https://github.com/PhilKes/NotallyX), [Google Keep](https://keep.google.com/) or [ColorNote](https://www.colornote.com/) - Minimalistic Note-Taking Apps
|
||||
* ⭐ **[Xed-Editor](https://github.com/Xed-Editor/Xed-Editor)** / [GitHub](https://github.com/Acode-Foundation/Acode), [Acode](https://acode.app), [QuickEdit](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/android#wiki_.25B7_modded_apks) (search) or - Text / Code Editors
|
||||
* ⭐ **[Xed-Editor](https://github.com/Xed-Editor/Xed-Editor)** / [GitHub](https://github.com/Acode-Foundation/Acode), [Acode](https://acode.app), [QuickEdit](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/android#wiki_.25B7_modded_apks) (search) - Text / Code Editors
|
||||
* ⭐ **[FUTO Voice](https://voiceinput.futo.org/)** or [Transcribro](https://github.com/soupslurpr/Transcribro) - Voice-Input Keyboards
|
||||
* ⭐ **[Look Up](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/android#wiki_.25B7_modded_apks)** (search), [Livio](https://play.google.com/store/apps/dev?id=7909003501452794484) or [AARD2](https://github.com/itkach/aard2-android), [NotificationDictionary](https://github.com/tirkarthi/NotificationDictionary) or [Ciyue](https://f-droid.org/packages/org.eu.mumulhl.ciyue/) - Dictionary Apps
|
||||
* [Markor](https://fossdroid.com/a/markor.html) - Text Editor with Markdown Support
|
||||
|
|
|
|||
|
|
@ -468,7 +468,7 @@ ## ▷ Proxy Clients
|
|||
## ▷ Anti Censorship
|
||||
|
||||
* ↪️ **[Great Firewall Bypass](https://www.reddit.com/r/FREEMEDIAHECKYEAH/wiki/non-eng#wiki_.25B7_great_firewall)**
|
||||
* ⭐ **[Net4people](https://github.com/net4people/bbs/issues)** - Worldwide Censorship Circumvention Discussion
|
||||
* ⭐ **[Net4people](https://github.com/net4people/bbs/issues)** - Worldwide Censorship Circumvention Discussion
|
||||
* ⭐ **[ByeDPIAndroid](https://github.com/dovecoteescapee/ByeDPIAndroid)**, - Network Packet Alter Tool / Android
|
||||
* ⭐ **[zapret](https://github.com/bol-van/zapret)**, **[SpoofDPI](https://github.com/xvzc/SpoofDPI)** or **[GoodbyeDPI](https://github.com/ValdikSS/GoodbyeDPI/)** - Network Packet Alter Tool
|
||||
* ⭐ **[DNSveil](https://msasanmh.github.io/DNSveil/)** - DNS Client / [GitHub](https://github.com/msasanmh/DNSveil)
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ let hasErrors = false;
|
|||
|
||||
// Load typos from CSV
|
||||
const typosMap = new Map();
|
||||
/* sucks right now
|
||||
try {
|
||||
const typosPath = path.resolve(__dirname, 'typos.csv');
|
||||
if (fs.existsSync(typosPath)) {
|
||||
|
|
@ -47,6 +48,7 @@ try {
|
|||
} catch (e) {
|
||||
console.warn(`⚠️ Failed to load typos: ${e.message}`);
|
||||
}
|
||||
*/
|
||||
|
||||
console.log('🔍 Scanning markdown files for formatting issues...\n');
|
||||
|
||||
|
|
@ -245,14 +247,18 @@ files.forEach(file => {
|
|||
// Check 10, 11, 12: English-specific checks (Repeated words, Typos, Grammar)
|
||||
if (!isSeparatedEnglishCheck) {
|
||||
// Prepare clean line for text-based checks (remove URLs and Markdown links)
|
||||
// Remove entire link block: [Text](Url) -> " "
|
||||
// Remove entire link block: [Text](Url) -> "__LINK__" to avoid merging adjacent words
|
||||
const lineCleaned = line.replace(/https?:\/\/[^\s)]+/g, '')
|
||||
.replace(/\[[^\]]+\]\([^)]*\)/g, ' ');
|
||||
.replace(/\[[^\]]+\]\([^)]*\)/g, '__LINK__');
|
||||
|
||||
// Check 10: Repeated words (e.g. "the the")
|
||||
const repeatedWordMatch = lineCleaned.match(/\b([a-zA-Z]+)\s+\1\b/i);
|
||||
if (repeatedWordMatch) {
|
||||
errors.push(`Repeated word detected: "${repeatedWordMatch[0]}"`);
|
||||
const word = repeatedWordMatch[1].toLowerCase();
|
||||
// Allow specific repeated words
|
||||
if (!['puyo', 'duran', 'agar', 'hocus'].includes(word)) {
|
||||
errors.push(`Repeated word detected: "${repeatedWordMatch[0]}"`);
|
||||
}
|
||||
}
|
||||
|
||||
// Check 11: Common Typos
|
||||
|
|
|
|||
Loading…
Reference in a new issue