update the docs and the extension

This commit is contained in:
afonya 2025-06-18 12:19:34 +02:00
parent f817a83f1d
commit 8dee35c68f
Signed by: afonya
GPG key ID: EBB9C4CAFAAFB2DC
5 changed files with 53 additions and 5 deletions

View file

@ -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
@ -135,3 +137,31 @@ 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)`|
---
## 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)`|

View file

@ -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",

View file

@ -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++) {

View file

@ -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": [
{

View file

@ -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);
},