Skip to content

chore: Add Lingala (ln) translation - #2775

Merged
UnschooledGamer merged 11 commits into
Acode-Foundation:mainfrom
Degrace15:feat/lingala-translation
Sep 6, 2026
Merged

UnschooledGamer merged 11 commits into
Acode-Foundation:mainfrom
Degrace15:feat/lingala-translation

Conversation

@Degrace15

Copy link
Copy Markdown
Contributor

This PR adds the Lingala (ln) translation for Acode.

  • Added src/lang/ln-ln.json
  • 836 translation keys
  • JSON validated
  • All detected English strings translated
  • Placeholders checked

@github-actions github-actions Bot added enhancement New feature or request translations Anything related to Translations Whether a Issue or PR labels Aug 20, 2026
@greptile-apps

greptile-apps Bot commented Aug 20, 2026 •

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR adds and registers a Lingala locale for Acode.

  • Adds the ln-ln translation catalog.
  • Registers Lingala in the language selector and lazy loader.
  • Excludes the translation catalog from typo checking.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
src/lang/ln-ln.json Adds the Lingala localized-string catalog, including canonical conflict and terminal failsafe keys.
src/lib/lang.js Registers ln-ln with its native display name and lazy-loaded catalog.
_typos.toml Excludes the Lingala catalog from typo checking consistently with other locale files.

Reviews (5): Last reviewed commit: "chore: update more Lingala translations" | Re-trigger Greptile

Comment thread src/lang/ln-ln.json Outdated
Comment thread src/lang/ln-ln.json Outdated
Comment thread src/lang/ln-ln.json Outdated

@Degrace15 Degrace15 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Review — Add Lingala (ln) Translation

The Lingala translation has been added, and the formatting issues have been fixed according to the project's Biome configuration.

Verified points:

  • The "ln" locale is correctly registered.
  • The translation keys have been corrected.
  • "src/lang/ln-ln.json" now follows the project's Biome formatting rules using tabs.
  • The Lingala translation file is excluded from the Typos spelling check to prevent false positives.
  • The formatting changes do not modify the actual translation content.

The PR is ready for another CI check run.

@Degrace15
Degrace15 force-pushed the feat/lingala-translation branch from 924ca17 to e5cf795 Compare August 20, 2026 19:37
@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@greptile_apps review again

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

I can approve the PR based on their translations that are accurate as self-confirmation from them, after the Formatting issue is possibly resolved as I cannot clone the branch at the moment.

Thanks,
UG.

@Degrace15
Degrace15 force-pushed the feat/lingala-translation branch from 4f9dd2a to 03c6c1c Compare August 21, 2026 15:08

@Degrace15 Degrace15 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything is okay i think, try and check out to be sure

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@greptile_apps review again.

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@Degrace15 Hey, There are some untranslated strings. Would you like to translate them in this PR? Or the next time?

I'll keep it open for you to choose.

Thanks for your translations.

UG.

@Degrace15

Copy link
Copy Markdown
Contributor Author

@Degrace15 Hey, There are some untranslated strings. Would you like to translate them in this PR? Or the next time?

I'll keep it open for you to choose.

Thanks for your translations.

UG.

Hi UG, thanks for letting me know. I will translate the remaining untranslated strings in this PR and update it soon. Thanks!

@Degrace15 Degrace15 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Try and check out

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

Try and check out

Hi @Degrace15, there are still some keys to translate. Would you like to continue?

@Degrace15

Copy link
Copy Markdown
Contributor Author

Try and check out

Hi @Degrace15, there are still some keys to translate. Would you like to continue?

Yeah, indeed

@Degrace15 Degrace15 left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have a look at the PR

@UnschooledGamer

UnschooledGamer commented Aug 25, 2026 •

Copy link
Copy Markdown
Collaborator

Have a look at the PR

@Degrace15 There are a few more, I believe. Have a look once again.

@Degrace15

Copy link
Copy Markdown
Contributor Author

Have a look at the PR

@Degrace15 There are a few more, I believe. Have a look once again.

Where should i have a look again ?

@RohitKushvaha01
RohitKushvaha01 added this pull request to the merge queue Aug 25, 2026
@RohitKushvaha01
RohitKushvaha01 removed this pull request from the merge queue due to a manual request Aug 25, 2026
@UnschooledGamer

Copy link
Copy Markdown
Collaborator

Where should i have a look again ?

@Degrace15 many in quicktools's symbol descriptions e.g: quicktools:semicolon, quicktools:copyline-down, quicktools:copyline-up, certainly some in Terminal related settings, etc.

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@Degrace15 Hi, I have marked a few more untranslated items. Please check the review threads. There may be a few more which I haven't marked, so as not to put too many reviews at once.

Kindly check them. We can proceed to merge them as-is currently; after that, you could translate more strings. Let me know your decision.

Thanks,
UG.

@Degrace15

Copy link
Copy Markdown
Contributor Author

@Degrace15 Hi, I have marked a few more untranslated items. Please check the review threads. There may be a few more which I haven't marked, so as not to put too many reviews at once.

Kindly check them. We can proceed to merge them as-is currently; after that, you could translate more strings. Let me know your decision.

Thanks,
UG.

You can merge the PR as it is. I’ll translate the remaining strings later. Thank you!

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@Degrace15 Hey there, Sorry to disturb you again. I ran the strings through AI model it outputted many strings as french-only translated, I verified them with Google Translate it detects them as French.

Some of the strings:

   300  │ info-rememberfolders          │ Mémoriser les dossiers ouverts
        │                               │ lorsque l'appli est fermée.
   301  │ info-floatingbutton           │ Afficher ou masquer le bouton
        │                               │ flottant des outils rapides.
   302  │ info-openfilelistpos          │ Où afficher la liste des fichiers
        │                               │ ouverts.
   303  │ info-touchmovethreshold       │ Si la sensibilité tactile de votre
        │                               │ appareil est trop élevée...
   304  │ info-scroll-settings          │ Ces paramètres permettent de
        │                               │ configurer le défilement...
   305  │ info-animation                │ Si l'appli est lente, désactivez
        │                               │ les animations.
   306  │ info-quicktoolstriggermode    │ Si le bouton des outils rapides ne
        │                               │ fonctionne pas...
   310  │ info-listFiles                │ Lister automatiquement tous les

I cannot proceed with the merger before discussing this.

Thanks,
UG.

@Degrace15

Copy link
Copy Markdown
Contributor Author

@Degrace15 Hey there, Sorry to disturb you again. I ran the strings through AI model it outputted many strings as french-only translated, I verified them with Google Translate it detects them as French.

Some of the strings:

   300  │ info-rememberfolders          │ Mémoriser les dossiers ouverts
        │                               │ lorsque l'appli est fermée.
   301  │ info-floatingbutton           │ Afficher ou masquer le bouton
        │                               │ flottant des outils rapides.
   302  │ info-openfilelistpos          │ Où afficher la liste des fichiers
        │                               │ ouverts.
   303  │ info-touchmovethreshold       │ Si la sensibilité tactile de votre
        │                               │ appareil est trop élevée...
   304  │ info-scroll-settings          │ Ces paramètres permettent de
        │                               │ configurer le défilement...
   305  │ info-animation                │ Si l'appli est lente, désactivez
        │                               │ les animations.
   306  │ info-quicktoolstriggermode    │ Si le bouton des outils rapides ne
        │                               │ fonctionne pas...
   310  │ info-listFiles                │ Lister automatiquement tous les

I cannot proceed with the merger before discussing this.

Thanks,
UG.

Thanks for pointing this out. I understand the issue. I’ll review and translate these strings properly into Lingala, including the other untranslated French strings you may find. We can proceed with the merge after I’ve fixed them.

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

Hey @Degrace15 , there are many France translated strings still leftover, Which the AI flagged (google's translated also detected them as France) When I put them in. I would suggest taking a complete look at the translated strings. As I cannot merge this with France translated strings for Lingala, I would guess as they are different.

You could do a partial translation and leave others as English, to translate them next time.

Thanks,
UG.

@UnschooledGamer UnschooledGamer added needs info / awaiting response The issue needs more information from the user before proceeding. community labels Aug 31, 2026
@RohitKushvaha01 RohitKushvaha01 moved this from Backlog to In progress in The Code Board - Acode Aug 31, 2026
@Degrace15

Copy link
Copy Markdown
Contributor Author

Hey @Degrace15 , there are many France translated strings still leftover, Which the AI flagged (google's translated also detected them as France) When I put them in. I would suggest taking a complete look at the translated strings. As I cannot merge this with France translated strings for Lingala, I would guess as they are different.

You could do a partial translation and leave others as English, to translate them next time.

Thanks,
UG.

It suits me perfect, lemme sleep on it and i'll let you know

@Degrace15

Copy link
Copy Markdown
Contributor Author

Hey @Degrace15 , there are many France translated strings still leftover, Which the AI flagged (google's translated also detected them as France) When I put them in. I would suggest taking a complete look at the translated strings. As I cannot merge this with France translated strings for Lingala, I would guess as they are different.

You could do a partial translation and leave others as English, to translate them next time.

Thanks,
UG.

It suits me perfect, lemme sleep on it and I'll let you know

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

The AI says:

The strongest French-only corrections to prioritize are: custom, password, port, system, regular expression, host, many of them are flagged by Google Translate too.

@UnschooledGamer UnschooledGamer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More have been flagged as France Only Translated, there maybe more translations with mixed France and Lingala entries:

"open_source": "Source ouverte"
"terminal:underline": "Souligné"
"terminal:inactive underline": "Souligné"
"terminal:bold": "Gras"
"terminal:inactive bar": "Barre"
"terminal:bar": "Barre"
"terminal:inactive block": "Bloc"
"terminal:block": "Bloc"

@UnschooledGamer UnschooledGamer left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Certain words and strings are still French Kindly take a look, I'm putting the mixed French and Lingala detect ones below (AI Generated, Might have false positives):

These aren't necessarily entire French sentences, but they prevent the localization from being fully Lingala:
settings saved → Paramètres ebombami
backup successful → Sauvegarde esalemi malamu
invalid backup file → Fichier ya sauvegarde ezali malamu te
app settings → Paramètres ya application
scroll settings → Paramètres ya kokita
clean install state → État ya installation ya pamba
preparing backup → Kobongisa sauvegarde
validating backup → Kotalela sauvegarde
creating backup → Kosala fichier ya sauvegarde
restoring settings → Kozongisa ba paramètres
restore warning etc. where sauvegarde, paramètres, etc. remain.
downloads → ba téléchargements
reviews → ba avis
terminal settings → Paramètres ya terminal
quicktools:alt-key → Touche Alt
quicktools:meta-key → Touche Windows/Meta
quicktools:left-arrow-key → Flèche ya mwasi
quicktools:right-arrow-key → Flèche ya mobali
quicktools:semicolon → Kotisa point-virgule
quicktools:exclamation → Kotisa elembo ya exclamation
quicktools:bar → Kotisa elembo ya barre
quicktools:quotation → Kotisa elembo ya citation
quicktools:anglebracket → Kotisa crochet angle
settings-category-custom-servers → Ba serveurs personnalisés
settings-info-lsp-add-custom-server → contains personnalisé, installation, mise à jour, lancement
settings-info-lsp-server-enabled → Activer, désactiver
settings-info-lsp-update-server → Mise à jour
settings-info-main-edit-settings → Editer ... directement
settings-info-main-lsp-settings → Configurer
settings-info-app-font-manager → Installer, gérer
settings-info-app-vibrate-on-tap → Activer
settings-info-app-touch-move-threshold → Mouvement, déplacement
terminal_required_message_for_lsp → installé, Installer
update available → Mise à jour ezali
plugin updates → Ba mises à jour ya ba plugins
enter keywords → Kota ba mots-clés
enter author name → Kota kombo ya auteur
command palette → Fungola menu ya ba commandes
developer mode / related entries → développeur, Activer, inspecteur, etc.
shortcut request sent → Bosengi ya raccourci... Ajouter
shift click selection → Sélection na Shift + clic
indent guides → Ba guides ya indentation
lsp-check-command-optional → Commande ya contrôle (option...)
lsp-install-method-title → Méthode ya installation
lsp-update-command-optional → Commande ya mise à jour (optionnelle)
lsp-status-not-installed → Ezali installé te
lsp-uninstall-notification → contains French Finá? Actually Lingala sentence, but technical wording is fine.
lsp-update-server → Mise à jour ya serveur
settings-category...custom-servers → personnalisés
settings-info... numerous formatage, diagnostics, informations, documentation, etc.

Comment thread src/lang/ln-ln.json
Comment on lines +783 to +786
"terminal:bar": "Barre",
"terminal:inactive block": "Bloc",
"terminal:inactive underline": "Mokomi na nse",
"terminal:inactive bar": "Barre",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are this in French or Lingala?

@Degrace15

Copy link
Copy Markdown
Contributor Author

Certain words and strings are still French Kindly take a look, I'm putting the mixed French and Lingala detect ones below (AI Generated, Might have false positives):

These aren't necessarily entire French sentences, but they prevent the localization from being fully Lingala:
settings saved → Paramètres ebombami
backup successful → Sauvegarde esalemi malamu
invalid backup file → Fichier ya sauvegarde ezali malamu te
app settings → Paramètres ya application
scroll settings → Paramètres ya kokita
clean install state → État ya installation ya pamba
preparing backup → Kobongisa sauvegarde
validating backup → Kotalela sauvegarde
creating backup → Kosala fichier ya sauvegarde
restoring settings → Kozongisa ba paramètres
restore warning etc. where sauvegarde, paramètres, etc. remain.
downloads → ba téléchargements
reviews → ba avis
terminal settings → Paramètres ya terminal
quicktools:alt-key → Touche Alt
quicktools:meta-key → Touche Windows/Meta
quicktools:left-arrow-key → Flèche ya mwasi
quicktools:right-arrow-key → Flèche ya mobali
quicktools:semicolon → Kotisa point-virgule
quicktools:exclamation → Kotisa elembo ya exclamation
quicktools:bar → Kotisa elembo ya barre
quicktools:quotation → Kotisa elembo ya citation
quicktools:anglebracket → Kotisa crochet angle
settings-category-custom-servers → Ba serveurs personnalisés
settings-info-lsp-add-custom-server → contains personnalisé, installation, mise à jour, lancement
settings-info-lsp-server-enabled → Activer, désactiver
settings-info-lsp-update-server → Mise à jour
settings-info-main-edit-settings → Editer ... directement
settings-info-main-lsp-settings → Configurer
settings-info-app-font-manager → Installer, gérer
settings-info-app-vibrate-on-tap → Activer
settings-info-app-touch-move-threshold → Mouvement, déplacement
terminal_required_message_for_lsp → installé, Installer
update available → Mise à jour ezali
plugin updates → Ba mises à jour ya ba plugins
enter keywords → Kota ba mots-clés
enter author name → Kota kombo ya auteur
command palette → Fungola menu ya ba commandes
developer mode / related entries → développeur, Activer, inspecteur, etc.
shortcut request sent → Bosengi ya raccourci... Ajouter
shift click selection → Sélection na Shift + clic
indent guides → Ba guides ya indentation
lsp-check-command-optional → Commande ya contrôle (option...)
lsp-install-method-title → Méthode ya installation
lsp-update-command-optional → Commande ya mise à jour (optionnelle)
lsp-status-not-installed → Ezali installé te
lsp-uninstall-notification → contains French Finá? Actually Lingala sentence, but technical wording is fine.
lsp-update-server → Mise à jour ya serveur
settings-category...custom-servers → personnalisés
settings-info... numerous formatage, diagnostics, informations, documentation, etc.

Hi, thanks again for the feedback.

I’ve gone through the strings again and made another set of corrections. I’ve also pushed a new commit with these changes.

One thing I’d like to clarify about some of the remaining detections: in Lingala, certain words are commonly written or used the same way as in French, especially technical and computing terms. For example, terms like terminal, serveur, installation, commande, configuration, etc. can be used naturally in Lingala sentences.

Because the detection is based on AI/Google Translate, some of these words may be detected as French even when the overall sentence is Lingala.

I’ve corrected the clearly French expressions and will continue improving the translation while keeping technical terms where replacing them would make the Lingala unnatural or less understandable.

The latest corrections are included in my new commit.

@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@Degrace15 Yeah, that makes sense, I'm just trying to keep it in best possible state for future translations, I have no real experience with that language.
Thanks for your comprehensive response.

Have a Wonderful Day,
UG.

@Degrace15

Copy link
Copy Markdown
Contributor Author

@Degrace15 Yeah, that makes sense, I'm just trying to keep it in best possible state for future translations, I have no real experience with that language.
Thanks for your comprehensive response.

Have a Wonderful Day,
UG.

Thank you, UG! I really appreciate your review and guidance. I’ll keep an eye on the PR and continue improving the translation if needed. Have a wonderful day too!

@UnschooledGamer UnschooledGamer removed the needs info / awaiting response The issue needs more information from the user before proceeding. label Sep 6, 2026
@UnschooledGamer

Copy link
Copy Markdown
Collaborator

@Degrace15 It looks great and is currently mergeable. Thank you for your frequent efforts to improve them; they are greatly appreciated.

Best regards,
UG.

@UnschooledGamer UnschooledGamer changed the title Add Lingala (ln) translation chore: Add Lingala (ln) translation Sep 6, 2026
@UnschooledGamer
UnschooledGamer added this pull request to the merge queue Sep 6, 2026
Merged via the queue into Acode-Foundation:main with commit ddbc0c6 Sep 6, 2026
3 checks passed
@github-project-automation github-project-automation Bot moved this from In progress to Done in The Code Board - Acode Sep 6, 2026
RohitKushvaha01 added a commit to RohitKushvaha01/Acode that referenced this pull request Sep 8, 2026
* fix: fall back to internal storage when external storage is unavailable (Acode-Foundation#2781)

* fix: fall back to internal storage when external storage is unavailable

The app used to pick the external data directory unconditionally and then
create the plugins directory without guarding against failures. On devices
where the external filesystem cannot be created (e.g. Android/data dir is
not creatable), the unhandled rejection aborted startup, leaving users stuck
on the splash screen with a misleading "Update Android System WebView or
Chrome" message.

- Probe external storage with fs.stat() and fall back to internal storage
- Wrap plugins directory creation in try/catch and fall back to internal
- Request storage permissions only on SDK < 33, guarded by hasPermission
- Guard editorManager.hasUnsavedFiles() access in exitAppMessage
- Show an honest "storage is unavailable" startup message for storage errors

* fix: detect storage errors via FileError instanceof instead of numeric code range

* fix(theme): prevent freeze when switching to system theme (Acode-Foundation#2790)

* fix(sftp): cancel stalled connections and prevent delayed errors (Acode-Foundation#2791)

* fix(sftp): cancel stalled connections and prevent delayed errors

* fix race cases

* fix: admob issues (Acode-Foundation#2800)

* fix: admob issues

* fix: restore Android build commands

---------

Co-authored-by: Ajit Kumar <dellevenjack@gmail>

* fix(android): avoid splash surface crash on realme Android 13 (Acode-Foundation#2805)

* fix(session): restore picker documents and skip intent files tab (Acode-Foundation#2809)

* fix(session): restore picker documents and skip intent files tab

* feat(file-browser): expose document picker(icon) from nested folders

* fix

* feat(console): isolate execution and improve mobile REPL UX (Acode-Foundation#2808)

* feat(console): isolate execution and improve mobile REPL UX

- run console JavaScript in a cancellable Web Worker
- protect the app from infinite loops and recursion
- preserve history with variable-height virtualization
- restore the inline REPL layout
- fix mobile keyboard resizing and viewport gaps
- add clear and stop controls

* fix(console): address execution context and bottom pinning

* address the pinning regression

* remove stop, run btn

* feat(console): follow active Acode theme (Acode-Foundation#2814)

* feat(console): follow active Acode theme

* fix

* fix

* chore: update deps

* Enhanced: Indonesian (id) language translations (Acode-Foundation#2798)

* update deps

* fix: preserve MIME type for plugin icons on plugin details page (Acode-Foundation#2818)

* fix: preserve MIME type for plugin icons on plugin details page

* fix

* fix(console): run JavaScript files in isolated worker (Acode-Foundation#2819)

* fix(console): run JavaScript files in isolated worker

* fix

* feat: plugin review (Acode-Foundation#2826)

* feat: plugin commit

Allow logged in user to review plugins from the app.

* fix: api url

---------

Co-authored-by: Ajit Kumar <dellevenjack@gmail>

* Improve selection menu UX and plugin action overflow (Acode-Foundation#2813)

* feat(editor): improve mobile selection menu overflow UX

* fix(editor): prevent selection actions during overflow scrolling

* fix(editor): validate pointer displacement on release

* fix(search): include restored files in global search (Acode-Foundation#2830)

* fix(search): include restored files in global search

* fix

* chore: v1.13.2

* refactor(file-browser): Convert directory cache to `Map` instance (Acode-Foundation#2831)

Replace the plain object container used for cached directories with an ES6 `Map` to improve key management semantics.

Update cached directory data structure (`src/pages/fileBrowser/fileBrowser.js`):
- Re-initialize `cachedDir` variable as a `Map`
- Replace object property lookups with `Map.prototype.has()` and `Map.prototype.get()`
- Update cache writes to use `Map.prototype.set()`
- Update directory deletion calls to use `Map.prototype.delete()`

(AI generated commit message)

* fix(editor): stabilize selection menu sizing and transitions (Acode-Foundation#2833)

* fix(editor): keep fullscreen controls above bottom pane tabs (Acode-Foundation#2834)

* chore(community-release-notifier): Change sed parsing - TG release notes (Acode-Foundation#2832)

* chore(community-release-notifier): Change sed parsing - TG release notes

This commit fixes Release notes not being sed escaped properly leading towards Telegram notifier failing for Stable Releases as they were auto-generated by git.

* Disable markdown format in community release notifier

Commented out the markdown format option in the Telegram notifier.

* fix(editor): restore cursor state and prevent tab-switch flash (Acode-Foundation#2835)

* fix(editor): restore cursor state and prevent tab-switch flash

* fix

* feat(lsp): improve actions, navigation, and position handling (Acode-Foundation#2837)

- advertise code action resolve support
- clamp LSP positions beyond document bounds
- support LocationLink and multiple navigation results
- add LSP operations to the selection menu
- fix navigation scrolling after switching files
- use shared position and location normalization helpers

* fix(editor): highlight all visible search matches (Acode-Foundation#2838)

* Translation: Update hu-hu.json (Acode-Foundation#2828)

* Translation: Update hu-hu.json

Fixing AI-translated strings

* Translation: Update hu-hu.json

Fix typos

* chore(deps): bump actions/setup-java from 5 to 6 (Acode-Foundation#2821)

Bumps [actions/setup-java](https://github.com/actions/setup-java) from 5 to 6.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: improved pluginContext (Acode-Foundation#2806)

* feat: improved pluginContext

* Update src/lib/pluginContext.js

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* format

* fix: holes

* format

* .

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* fix(webview): retain instance when destroy fails (Acode-Foundation#2836)

* fix(webview): retain instance when destroy fails

* test(webview): cover destroy failure lifecycle

* fix(webview): serialize concurrent destruction

* test(webview): cover concurrent destruction

* fix(sftp): recover from failed profile migration (Acode-Foundation#2840)

* fix(sftp): recover from failed profile migration

* fix(sftp): migrate folder-state URL keys

* fix

* fix

* chore: v1.13.3

* fix: typo

* fix: prevent Cordova exec startup race (Acode-Foundation#2851)

* fix(editor): improve selection contrast on active lines (Acode-Foundation#2852)

* fix(editor): treat missing write capability as editable (Acode-Foundation#2853)

* fix(editor): treat missing write capability as editable

* fix

* fix: race condition when moving to exact line/col (Acode-Foundation#2856)

* fix: race condition when moving to exact line/col

* fix(search): cancel obsolete result navigation

* fix(search): preserve loader during concurrent file opens

* Add GitHub Actions workflow for congratulating Community PRs (Acode-Foundation#2855)

* Shortcut For Opening Welcome Tab  (Acode-Foundation#2773)

* Update keyBindings.js

* Fix formatting of welcomeTab key binding

* Added new shortcut to open welcome window

* Shortcut For Opening Welcome Tab

* Update keyBindings.js

* Modify welcomeTab key binding description

Updated the description for the welcomeTab key binding.

* Fix changes

* Rename welcomeTab to acode:showWelcome

fix cmd description and rename the command name to "acode:showWelcome" so that it matches the existing command and adds the keybind to it instead of a possibly new command.

---------

Co-authored-by: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com>

* chore: Add Lingala (ln) translation (Acode-Foundation#2775)

* Update Lingala translation

* Add Lingala translation

* Complete Lingala translation strings

* chore: update Lingala translations

* chore: update more Lingala translations

* Complete Lingala translations

* Update Lingala translation

* Translate remaining strings to Lingala

* Fix French strings in Lingala translation

* Fix French strings in Lingala translation

* Improve Lingala translation

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Amr Ayman <48989143+ulite-Amr@users.noreply.github.com>
Co-authored-by: Raunak Raj <71929976+bajrangCoder@users.noreply.github.com>
Co-authored-by: Ajit Kumar <dellevenjack@gmail>
Co-authored-by: TM <anonymous.matrixtm26.dev@gmail.com>
Co-authored-by: AuDevTist1C <114492072+AuDevTist1C@users.noreply.github.com>
Co-authored-by: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com>
Co-authored-by: summoner <summoner001@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rohit Kushvaha <oldisg131@gmail.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: azamkassim <azam.kassim.work@gmail.com>
Co-authored-by: Game-Dev-Shubham <shubhamyadav1247878@gmail.com>
Co-authored-by: Degrace <kiminoudegrace64@gmail.com>
pull Bot pushed a commit to AmirulAndalib/Acode that referenced this pull request Sep 8, 2026
* feat: added icons and api

* Update src/plugins/system/android/com/foxdebug/system/System.java

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* feat: added frontend

* feat: added frontend

* fix: add missing entries

* fix: icons, new pro icon, icons for free version

* Merge upstream main and resolve app icon conflicts (#2)

* fix: fall back to internal storage when external storage is unavailable (Acode-Foundation#2781)

* fix: fall back to internal storage when external storage is unavailable

The app used to pick the external data directory unconditionally and then
create the plugins directory without guarding against failures. On devices
where the external filesystem cannot be created (e.g. Android/data dir is
not creatable), the unhandled rejection aborted startup, leaving users stuck
on the splash screen with a misleading "Update Android System WebView or
Chrome" message.

- Probe external storage with fs.stat() and fall back to internal storage
- Wrap plugins directory creation in try/catch and fall back to internal
- Request storage permissions only on SDK < 33, guarded by hasPermission
- Guard editorManager.hasUnsavedFiles() access in exitAppMessage
- Show an honest "storage is unavailable" startup message for storage errors

* fix: detect storage errors via FileError instanceof instead of numeric code range

* fix(theme): prevent freeze when switching to system theme (Acode-Foundation#2790)

* fix(sftp): cancel stalled connections and prevent delayed errors (Acode-Foundation#2791)

* fix(sftp): cancel stalled connections and prevent delayed errors

* fix race cases

* fix: admob issues (Acode-Foundation#2800)

* fix: admob issues

* fix: restore Android build commands

---------

Co-authored-by: Ajit Kumar <dellevenjack@gmail>

* fix(android): avoid splash surface crash on realme Android 13 (Acode-Foundation#2805)

* fix(session): restore picker documents and skip intent files tab (Acode-Foundation#2809)

* fix(session): restore picker documents and skip intent files tab

* feat(file-browser): expose document picker(icon) from nested folders

* fix

* feat(console): isolate execution and improve mobile REPL UX (Acode-Foundation#2808)

* feat(console): isolate execution and improve mobile REPL UX

- run console JavaScript in a cancellable Web Worker
- protect the app from infinite loops and recursion
- preserve history with variable-height virtualization
- restore the inline REPL layout
- fix mobile keyboard resizing and viewport gaps
- add clear and stop controls

* fix(console): address execution context and bottom pinning

* address the pinning regression

* remove stop, run btn

* feat(console): follow active Acode theme (Acode-Foundation#2814)

* feat(console): follow active Acode theme

* fix

* fix

* chore: update deps

* Enhanced: Indonesian (id) language translations (Acode-Foundation#2798)

* update deps

* fix: preserve MIME type for plugin icons on plugin details page (Acode-Foundation#2818)

* fix: preserve MIME type for plugin icons on plugin details page

* fix

* fix(console): run JavaScript files in isolated worker (Acode-Foundation#2819)

* fix(console): run JavaScript files in isolated worker

* fix

* feat: plugin review (Acode-Foundation#2826)

* feat: plugin commit

Allow logged in user to review plugins from the app.

* fix: api url

---------

Co-authored-by: Ajit Kumar <dellevenjack@gmail>

* Improve selection menu UX and plugin action overflow (Acode-Foundation#2813)

* feat(editor): improve mobile selection menu overflow UX

* fix(editor): prevent selection actions during overflow scrolling

* fix(editor): validate pointer displacement on release

* fix(search): include restored files in global search (Acode-Foundation#2830)

* fix(search): include restored files in global search

* fix

* chore: v1.13.2

* refactor(file-browser): Convert directory cache to `Map` instance (Acode-Foundation#2831)

Replace the plain object container used for cached directories with an ES6 `Map` to improve key management semantics.

Update cached directory data structure (`src/pages/fileBrowser/fileBrowser.js`):
- Re-initialize `cachedDir` variable as a `Map`
- Replace object property lookups with `Map.prototype.has()` and `Map.prototype.get()`
- Update cache writes to use `Map.prototype.set()`
- Update directory deletion calls to use `Map.prototype.delete()`

(AI generated commit message)

* fix(editor): stabilize selection menu sizing and transitions (Acode-Foundation#2833)

* fix(editor): keep fullscreen controls above bottom pane tabs (Acode-Foundation#2834)

* chore(community-release-notifier): Change sed parsing - TG release notes (Acode-Foundation#2832)

* chore(community-release-notifier): Change sed parsing - TG release notes

This commit fixes Release notes not being sed escaped properly leading towards Telegram notifier failing for Stable Releases as they were auto-generated by git.

* Disable markdown format in community release notifier

Commented out the markdown format option in the Telegram notifier.

* fix(editor): restore cursor state and prevent tab-switch flash (Acode-Foundation#2835)

* fix(editor): restore cursor state and prevent tab-switch flash

* fix

* feat(lsp): improve actions, navigation, and position handling (Acode-Foundation#2837)

- advertise code action resolve support
- clamp LSP positions beyond document bounds
- support LocationLink and multiple navigation results
- add LSP operations to the selection menu
- fix navigation scrolling after switching files
- use shared position and location normalization helpers

* fix(editor): highlight all visible search matches (Acode-Foundation#2838)

* Translation: Update hu-hu.json (Acode-Foundation#2828)

* Translation: Update hu-hu.json

Fixing AI-translated strings

* Translation: Update hu-hu.json

Fix typos

* chore(deps): bump actions/setup-java from 5 to 6 (Acode-Foundation#2821)

Bumps [actions/setup-java](https://github.com/actions/setup-java) from 5 to 6.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: improved pluginContext (Acode-Foundation#2806)

* feat: improved pluginContext

* Update src/lib/pluginContext.js

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* format

* fix: holes

* format

* .

---------

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>

* fix(webview): retain instance when destroy fails (Acode-Foundation#2836)

* fix(webview): retain instance when destroy fails

* test(webview): cover destroy failure lifecycle

* fix(webview): serialize concurrent destruction

* test(webview): cover concurrent destruction

* fix(sftp): recover from failed profile migration (Acode-Foundation#2840)

* fix(sftp): recover from failed profile migration

* fix(sftp): migrate folder-state URL keys

* fix

* fix

* chore: v1.13.3

* fix: typo

* fix: prevent Cordova exec startup race (Acode-Foundation#2851)

* fix(editor): improve selection contrast on active lines (Acode-Foundation#2852)

* fix(editor): treat missing write capability as editable (Acode-Foundation#2853)

* fix(editor): treat missing write capability as editable

* fix

* fix: race condition when moving to exact line/col (Acode-Foundation#2856)

* fix: race condition when moving to exact line/col

* fix(search): cancel obsolete result navigation

* fix(search): preserve loader during concurrent file opens

* Add GitHub Actions workflow for congratulating Community PRs (Acode-Foundation#2855)

* Shortcut For Opening Welcome Tab  (Acode-Foundation#2773)

* Update keyBindings.js

* Fix formatting of welcomeTab key binding

* Added new shortcut to open welcome window

* Shortcut For Opening Welcome Tab

* Update keyBindings.js

* Modify welcomeTab key binding description

Updated the description for the welcomeTab key binding.

* Fix changes

* Rename welcomeTab to acode:showWelcome

fix cmd description and rename the command name to "acode:showWelcome" so that it matches the existing command and adds the keybind to it instead of a possibly new command.

---------

Co-authored-by: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com>

* chore: Add Lingala (ln) translation (Acode-Foundation#2775)

* Update Lingala translation

* Add Lingala translation

* Complete Lingala translation strings

* chore: update Lingala translations

* chore: update more Lingala translations

* Complete Lingala translations

* Update Lingala translation

* Translate remaining strings to Lingala

* Fix French strings in Lingala translation

* Fix French strings in Lingala translation

* Improve Lingala translation

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Amr Ayman <48989143+ulite-Amr@users.noreply.github.com>
Co-authored-by: Raunak Raj <71929976+bajrangCoder@users.noreply.github.com>
Co-authored-by: Ajit Kumar <dellevenjack@gmail>
Co-authored-by: TM <anonymous.matrixtm26.dev@gmail.com>
Co-authored-by: AuDevTist1C <114492072+AuDevTist1C@users.noreply.github.com>
Co-authored-by: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com>
Co-authored-by: summoner <summoner001@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Rohit Kushvaha <oldisg131@gmail.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: azamkassim <azam.kassim.work@gmail.com>
Co-authored-by: Game-Dev-Shubham <shubhamyadav1247878@gmail.com>
Co-authored-by: Degrace <kiminoudegrace64@gmail.com>

* fix: lang

* format

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Ajit Kumar <dellevenjack@gmail>
Co-authored-by: Ajit Kumar <dellevenjack@gmail.com>
Co-authored-by: Amr Ayman <48989143+ulite-Amr@users.noreply.github.com>
Co-authored-by: Raunak Raj <71929976+bajrangCoder@users.noreply.github.com>
Co-authored-by: TM <anonymous.matrixtm26.dev@gmail.com>
Co-authored-by: AuDevTist1C <114492072+AuDevTist1C@users.noreply.github.com>
Co-authored-by: Emmanuel Lobo <76094069+UnschooledGamer@users.noreply.github.com>
Co-authored-by: summoner <summoner001@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: azamkassim <azam.kassim.work@gmail.com>
Co-authored-by: Game-Dev-Shubham <shubhamyadav1247878@gmail.com>
Co-authored-by: Degrace <kiminoudegrace64@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

community enhancement New feature or request translations Anything related to Translations Whether a Issue or PR

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants