# Socle applicatif — `core_ide/` (Lapce) Le répertoire **`core_ide/`** à la racine du clone `smart_ide` contient le **clone Git** de l’éditeur [Lapce](https://lapce.dev/) (amont public [lapce/lapce](https://github.com/lapce/lapce), Apache-2.0). C’est le **socle applicatif** visé pour l’IDE : build, extensions et personnalisations 4NK s’appuient sur cet arbre. - Le contenu de **`core_ide/`** est **exclu de l’index Git** du dépôt parent (`.gitignore` à la racine) pour limiter la taille du monorepo ; il reste présent localement ou sur la machine de build. - Ce document est la **référence versionnée** pour l’emplacement et la mise à jour du clone (le dépôt Lapce amont fournit son propre `README.md` à la racine du clone). ## Mettre à jour les sources amont Sans créer de dépôt produit 4NK sur GitHub : conserver `origin` pointant vers l’URL publique de Lapce (ou un remote `upstream` si besoin), puis tirer les branches nécessaires : ```bash cd core_ide git fetch origin git merge origin/master ``` (Remplacer `master` par la branche par défaut du dépôt amont si elle change.) ### Historique complet (clone shallow) Si le clone a été fait avec `--depth 1` : ```bash cd core_ide git fetch --unshallow ``` ### Build Suivre la documentation amont Lapce (workspace Rust à la racine de `core_ide/`). Le binaire produit alimente la couche **editor-shell** décrite dans [system-architecture.md](./system-architecture.md). ### Premier checkout ```bash cd /chemin/vers/smart_ide git clone https://github.com/lapce/lapce.git core_ide ``` (Ou l’URL / remote interne retenu par l’équipe ; SSH si configuré.) ### Migration depuis l’ancien emplacement Si un clone Lapce existait sous `forks/lapce/`, le renommer une fois : ```bash mv forks/lapce core_ide rmdir forks 2>/dev/null || true ```