sections + clé/valeurRéglages compactsConfiguration structurée : changez la valeur, pas la ponctuation
L’éditeur de texte montre la source ; la commande de format montre le modèle de données. Les deux vues sont utiles.
Pourquoi un outil spécialisé peut être plus simple
Si vous devez uniquement changer application.debug dans un gros fichier, nommer le chemin logique est souvent plus clair que chercher la bonne section et surveiller virgules, accolades ou séparateurs.
Un même rythme pour plusieurs formats
Les modules partagent une grammaire proche : ouvrir, lire une clé, chercher, écrire avec :, supprimer, valider avec -c ou sérialiser avec dump. $ peut ensuite désigner le fichier actif.
install md mf code ini json xml yml toml conf propertiesmd lil-playground/project/configmf lil-playground/project/config/app.inicd lil-playgroundini project/config/app.iniini $ -w application.name : "lil playground"ini $ application.nameini $ -cINI : sections et valeurs simples
INI regroupe des paires clé/valeur en sections. Les chemins pointés permettent d’atteindre directement une valeur logique sans parcourir tout le fichier.
ini project/config/app.iniini $ -w application.debug : trueini $ application.debugini $ -f "application*" -kJSON : objets, tableaux et types
Pour cet exercice, ouvrez project/config/app.json avec {} affiché ci-dessous, enregistrez le fichier, puis seulement exécutez les commandes
JSON est omniprésent dans les API, métadonnées et configurations. Une modification par chemin évite des erreurs accidentelles de virgules ou d’accolades ; -c valide explicitement le document.
{}code project/config/app.json -njson project/config/app.jsonjson $ -w limits.history : 100json $ limits.historyjson $ -cYAML, TOML, XML, conf et properties
YAML repose fortement sur l’indentation, TOML sur les tables et les types, XML sur les éléments et attributs, conf/properties sur des familles clé/valeur. lil rapproche les opérations courantes sans prétendre que les formats sont identiques.
objets + tableauxAPI et métadonnéesindentation + mappingsDéploiementtables + typesOutils et applicationséléments + attributsDocuments structurésfamilles clé/valeurServeurs et applicationsValidez ; utilisez `dump` quand la source est nécessaire
-c valide le document ; dump renvoie une représentation sérialisée. Les écritures structurées peuvent normaliser formatage ou commentaires. Si la forme exacte du texte compte, utilisez
json $ -cjson dump $ini dump project/config/app.iniQuand revenir à `code`
Les modules de format conviennent aux valeurs ciblées, à la recherche et à la validation.
code project/config/app.ini -inicode project/config/app.json -jsonLes changements de configuration font d’excellents scripts
Une suite de réglages vérifiés peut devenir une documentation exécutable. Sur un autre projet, relisez-la, adaptez les valeurs et reproduisez l’environnement.
Conservez ceci comme script
Enregistrez sous configure-app.lil. Deux changements INI ciblés sont appliqués puis validés ; n’insérez pas de secrets dans un script portable sans flux protégé conçu pour cela.
#lil
@install md mf ini json
md lil-playground/project/config
mf lil-playground/project/config/app.ini
cd lil-playground
ini project/config/app.ini
ini $ -w application.debug : true
ini $ -w application.name : "lil playground"
ini $ -c