1
1
import time , os , sys , getpass , re , string
2
2
3
- #Note: Make modules to contribute to this language
4
-
5
3
fp = input ('FilePath: ' )
6
4
7
5
if '.pys' in fp :#hmmmm
@@ -52,7 +50,7 @@ class TemplateError(Exception):
52
50
input1 = "Undefined input"
53
51
input2 = "Undefined input"
54
52
input3 = "Undefined input"
55
- functions = ["time.time(" , " os.system(" , "os. userinfo(" ,"time.sleep(" , "time. strftime(" ,"window.alert(" ,"console.print(" ,"alert(" ,"console.input(" ,"window.prompt(" ,"prompt(" , "if " ]
53
+ functions = ["os.userinfo(" ,"time.strftime(" ,"window.alert(" ,"console.print(" ,"alert(" ,"console.input(" ,"window.prompt(" ,"prompt(" ]
56
54
57
55
58
56
def timeTIME ():
@@ -98,6 +96,30 @@ def osSYSTEM():
98
96
else :
99
97
raise InvalidModuleError ("The 'os' module isn't imported or it doesn't exist!" )
100
98
99
+ def osUSERINFO ():
100
+ if os_module == 1 :
101
+ wrd = "os.userinfo("
102
+ global res
103
+ res = lines .partition (wrd )[2 ]
104
+
105
+ if " " in res :
106
+ raise InvalidSyntaxError ("'os.userinfo' cannot include spaces!" )
107
+ else :
108
+ if ");" in res :
109
+ res = res .replace (");" ,"" )
110
+ else :
111
+ raise InvalidSyntaxError ("'os.userinfo' must have ');'!" )
112
+ if res == "" or res == " " :
113
+ try :
114
+ print (os .environ ["REPL_OWNER" ])
115
+ except :
116
+ raise InvalidModuleError ("This function does not exist on your device!" )
117
+ else :
118
+ raise InvalidModuleError ("'os.userinfo' must be empty!" )
119
+ else :
120
+ raise InvalidModuleError ("The 'os' module isn't imported or it doesn't exist!" )
121
+
122
+
101
123
'''
102
124
Note that ascii characters are used like this in pyscript:
103
125
/1234 or /u1243
@@ -404,14 +426,40 @@ def CONSOLEprint():
404
426
idk = "" .join (idk )
405
427
newvar = newvar .replace (idk , "" )
406
428
407
- if "'" in newvar or "\" " in newvar or "`" in newvar :
429
+ if "'" in newvar or "\" " in newvar or "`" in newvar or "os.userinfo(" in newvar :
408
430
if newvar in functions :
409
- e
431
+ if "console.print(" in newvar :
432
+ CONSOLEprint ()
433
+ elif "window.alert(" in newvar :
434
+ WINDOWalert ()
435
+ elif "alert(" in newvar :
436
+ alert ()
437
+
438
+ elif "window.prompt(" in newvar :
439
+ e
440
+ elif "prompt(" in newvar :
441
+ e
442
+ elif "console.input(" in newvar :
443
+ e
444
+
445
+ elif "os.userinfo(" in newvar :
446
+ osUSERINFO ()
447
+ allvars [res ] = os .environ ["REPL_OWNER" ]
448
+
449
+ elif "time.strftime(" in newvar :
450
+ if time_module == 1 :
451
+ timeSTRFTIME ()
452
+ #allvars[] = time.strftime()
453
+ else :
454
+ raise InvalidModuleError ("The 'time' module isn't imported or it doesn't exist!" )
455
+
410
456
else :
411
457
newvar = str (newvar ) # makes sure its a string
412
458
if newvar [- 1 ] == "'" and newvar [0 ] == "'" or newvar [- 1 ] == "\" " and newvar [0 ] == "\" " or newvar [- 1 ] == "`" and newvar [0 ] == "`" :
413
459
newvar = newvar .replace (newvar [- 1 ], "" )
414
460
#newvar = newvar.replace(newvar[0], "")
461
+ elif "os.userinfo(" in newvar :
462
+ pass
415
463
else :
416
464
raise InvalidSyntaxError ("Starting quotations and end quotations must be the same!" )
417
465
allvars [newvar ] = newvar
@@ -426,34 +474,6 @@ def CONSOLEprint():
426
474
raise InvalidSyntaxError ("Variables cannot include spaces!" )
427
475
else :
428
476
allvars [newvar ] = 0
429
-
430
- '''
431
- try:
432
- newvar2 = lines.partition(wrd)[3]
433
- split_string = newvar2.split("\" )", -1)
434
- newvar2.replace(")","")
435
- newvar2.replace('\" ', '')
436
- newvar2 = newvar2.replace("=",'')
437
- newvar2 = newvar2.replace(" ","")
438
- print(newvar2)
439
- newvar2 = split_string[0]
440
- if newvar2 == "=":
441
- pass
442
- else:
443
- newvar2 = lines.partition(wrd)[4]
444
- split_string = newvar2.split("\" )", -1)
445
- newvar2.replace(")","")
446
- newvar2.replace('\" ', '')
447
- newvar2 = split_string[0]
448
-
449
- if newvar2 == "=":
450
- pass
451
- else:
452
- pass
453
- #raise InvalidSyntaxError("")
454
- except:
455
- pass
456
- '''
457
477
458
478
459
479
elif "window.prompt(" in lines :
0 commit comments