From 8dee35c68f2b6613f6f285c682d6c714d7ec570f Mon Sep 17 00:00:00 2001 From: afonya Date: Wed, 18 Jun 2025 12:19:34 +0200 Subject: [PATCH] update the docs and the extension --- docs/docs/enviroment.md | 34 +++++++++++++++++++++++++++-- extension/astrolang.tmLanguage.json | 2 +- extension/index.js | 13 ++++++++++- extension/package.json | 7 ++++++ src/enviroment.rs | 2 +- 5 files changed, 53 insertions(+), 5 deletions(-) diff --git a/docs/docs/enviroment.md b/docs/docs/enviroment.md index 8a5fbda..fc4860d 100644 --- a/docs/docs/enviroment.md +++ b/docs/docs/enviroment.md @@ -15,6 +15,8 @@ description: Az Astro Lang környezete |csömör|Hibával befejezi a programot.|`csömör(error: string)`|`csömör(szaft"Sikertelen: Sikeresen befejezve!"szaft)`| |tarh|Kíírja, hogy a megadott érték milyen típusú.|`tarh(object: any): string`|`tarh(82)`| |bimbabemb|Átalakítja a megadott érétk típusát, ha lehetséges.|`bimbabemb(object: any, target: string): any`|`bimbabemb(7,szaft"string"szaft)`| +|mennyi az idő|Visszaadja a pillanatnyi UNIX időt milisec-ben.|`mennyi az idő(): number`|`mennyi az idő()`| +|joink|Bekér egy szöveget a terminálból.|`joink(): string`|`joink()`| --- @@ -65,7 +67,7 @@ Példa: `szaft.csemerd fel` --- -## Tábla (Tábla) +## Tábla (Table) Táblákkal lévő funkciók :::tip @@ -134,4 +136,32 @@ Ezek a funkciók kérik, hogy az első értékük a szülő táblájuk legyen |---|---|---|---| |olvass|Beleolvas a kapcsolatba.|`olvass(stream: kapcsolat, len: number): string`|`olvass(stream, 1024)`| |írj|Beleír a kapcsolatba.|`írj(stream: kapcsolat, data: string)`|`írj(stream, szaft"Hello from ASL!"szaft)`| -|zár|Bezárja a kapcsolatot.|`zár(stream: kapcsolat)`|`zár(stream)`| \ No newline at end of file +|zár|Bezárja a kapcsolatot.|`zár(stream: kapcsolat)`|`zár(stream)`| + +--- + +## Intéző (Filesystem) +Fájlokkal lévő funkciók +:::tip + +A példák elé kell írni a kulcsszót: `intéző` + +Példa: `intéző.létezik` + +::: +:::warning + +A fájlok, helyét bárhogy megadhatod, viszont a törlésnél légy óvatos! + +A fájl írása felülírja a már fájlban lévő adatokat! + +::: +|Név|Leírás|Használat|Példa| +|---|---|---|---| +|létezik|Megnézi, hogy létezik-e az elérési út.|`létezik(path: string): boolean`|`létezik(szaft"test.asl"szaft)`| +|infó|Lekéri a metaadatokat az adott elérési útból.|`infó(path: string): table`|`infó(szaft"test.asl"szaft)`| +|mappít|Létrehozza a mappákat, hogy elérje az elérési útat.|`mappít(path: string)`|`mappít(szaft"test1/test2/"szaft)`| +|mappát töröl|Kitöröl egy mappát.|`mappát töröl(path: string)`|`mappát töröl(szaft"test1/"szaft)`| +|fájlt töröl|Kitöröl egy fájlt.|`fájlt töröl(path: string)`|`fájlt töröl(szaft"compiled.asx"szaft)`| +|olvass|Beolvas egy fájlt.|`olvass(path: string): string`|`olvass(szaft"test.asl"szaft)`| +|írj|Beleírja egy fájlba a kapott adatokat.|`írj(path: string, data: string)`|`írj(szaft"test.txt"szaft, szaft"Hello from ASL!"szaft)`| \ No newline at end of file diff --git a/extension/astrolang.tmLanguage.json b/extension/astrolang.tmLanguage.json index 5244766..4036bb6 100644 --- a/extension/astrolang.tmLanguage.json +++ b/extension/astrolang.tmLanguage.json @@ -25,7 +25,7 @@ }, { "name": "variable.astrolang", - "match": "\\b([a-zA-Z_][a-zA-Z0-9_]*)\\b" + "match": "\\b([a-zA-Zöüóőúéáűí_][a-zA-Zöüóőúéáűí0-9_]*)\\b" }, { "name": "constant.numeric.astrolang", diff --git a/extension/index.js b/extension/index.js index 7d50f2c..9f69f5b 100644 --- a/extension/index.js +++ b/extension/index.js @@ -33,6 +33,9 @@ vscode.languages.registerCompletionItemProvider('astrolang', { "tábla", "kábel", "szenvedés", + "mennyi az idő", + "joink", + "intéző", "abs", "kerek", @@ -65,7 +68,15 @@ vscode.languages.registerCompletionItemProvider('astrolang', { "kérés", "írj", "olvass", - "zár" + "zár", + + "létezik", + "infó", + "mappít", + "mappát töröl", + "fájlt töröl", + "olvass", + "írj" ] let out = [] for (let i = 0; i < words.length; i++) { diff --git a/extension/package.json b/extension/package.json index 5617a1a..4573a41 100644 --- a/extension/package.json +++ b/extension/package.json @@ -6,9 +6,16 @@ "author": "Afonya", "type": "module", "main": "index.js", + "repository": { + "type": "git", + "url": "https://git.afonyanet.hu/afonya/AstroLang" + }, "engines": { "vscode": "^1.22.0" }, + "activationEvents": [ + "onStartupFinished" + ], "contributes": { "languages": [ { diff --git a/src/enviroment.rs b/src/enviroment.rs index 0f00927..a64dbf4 100644 --- a/src/enviroment.rs +++ b/src/enviroment.rs @@ -889,7 +889,7 @@ fn intezo_mappattorol(machine: &mut Machine, op: &DecompiledOperation, args: Vec if !res { error(format!("Folder does not exist"), machine, op); } - match fs::remove_dir_all(&str) { + match fs::remove_dir(&str) { Err(e) => { error(format!("Failed to remove directory: {}", e), machine, op); },