Skip to content

Commit 3317c2b

Browse files
committedAug 31, 2021
0.0.1a4
1 parent d1b51da commit 3317c2b

File tree

24 files changed

+154
-94
lines changed

24 files changed

+154
-94
lines changed
 

‎build/lib/eggdriver/app.py

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
# Imports
21
from eggdriver.resources.console import get, clearConsole, pg
32
from eggdriver.resources.constants import *
43
from eggdriver.resources.modules import installFromRequests, upgrade, Repo

‎build/lib/eggdriver/library/repos.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
from eggdriver.resources.modules import Repo
22

3-
NQS=Repo("NQS")
4-
nqs=NQS.pull("nqs")
3+
# NQS=Repo("PythonForChange", "eggdriver")
4+
# nqs=NQS.pull("nqs")
+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import eggdriver.nqs.core as core
1+
from eggdriver.nqs.core.core import compile
22
from eggdriver.resources.extensions import py
33

44
def write(name: str):
5-
T=core.compile(name)
6-
py.write(T,name)
5+
T = compile(name)
6+
py.write(T, name)

‎build/lib/eggdriver/resources/__init__.py

+3-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from eggdriver.resources.strings import *
1111
from eggdriver.resources.utils import *
1212
from eggdriver.resources.web import *
13+
from eggdriver.resources.algorithms import *
1314

14-
_author="eanorambuena"
15-
_author_email="eanorambuena@uc.cl"
15+
author="eanorambuena"
16+
author_email="eanorambuena@uc.cl"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from eggdriver.algorithms.solver import *

‎build/lib/eggdriver/resources/algorithms/solver/__init__.py

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#dichotomy method
+27-26
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,45 @@
11
import os
22

33
class Lang:
4-
def __init__(self,name: str):
5-
self.name=name
6-
self.extension="."+self.name
7-
self.root="/usr/bin/python "+name+self.extension
8-
def write(self,T: str,name: str):
9-
f=open(name+self.extension,"w")
4+
"""File Format class with some useful methods"""
5+
def __init__(self, name: str):
6+
self.name = name
7+
self.extension = "." + self.name
8+
self.root="/usr/bin/python " + name + self.extension
9+
def write(self, T: str, name: str):
10+
f = open(name + self.extension, "w")
1011
f.write(T)
1112
f.close()
12-
def append(self,T: str,name: str):
13-
f=open(name+self.extension,"a")
13+
def append(self, T: str, name: str):
14+
f = open(name + self.extension, "a")
1415
f.write(T)
1516
f.close()
1617
def read(self, name: str):
17-
f=open(name+self.extension,"r")
18-
text=f.read()
18+
f = open(name + self.extension, "r")
19+
text = f.read()
1920
f.close()
2021
return text
21-
def execute(self,name: str):
22+
def execute(self, name: str):
2223
try:
2324
os.system(self.root)
2425
except:
25-
print("Execute error in: "+self.root)
26-
def delete(self,name: str):
27-
os.remove(name+self.extension)
28-
def getLines(self,name: str):
29-
h=open(name+self.extension,"r")
30-
lines=h.readlines()
26+
print("Execute error in: " + self.root)
27+
def delete(self, name: str):
28+
os.remove(name + self.extension)
29+
def getLines(self, name: str):
30+
h = open(name + self.extension, "r")
31+
lines = h.readlines()
3132
h.close()
3233
return lines
33-
def writeLines(self,lines,name: str):
34-
self.write("",name)
34+
def writeLines(self, lines, name: str):
35+
self.write("", name)
3536
for i in lines:
36-
self.append(i,name)
37+
self.append(i, name)
3738

3839
# Extensions
39-
py=Lang("py")
40-
txt=Lang("txt")
41-
nqa=Lang("nqa")
42-
pfcf=Lang("pfcf")
43-
html=Lang("html")
44-
withoutFormat=Lang("")
40+
py = Lang("py")
41+
txt = Lang("txt")
42+
nqa = Lang("nqa")
43+
pfcf = Lang("pfcf")
44+
html = Lang("html")
45+
withoutFormat = Lang("")

‎build/lib/eggdriver/resources/help.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
from eggdriver.resources.extensions import py
33

44
def help():
5-
T = "Welcome to Pyfoch Egg:\nThe Pyfoch Egg-cosystem console\n\n"
5+
"""Get help from Egg"""
6+
T = "Welcome to Egg:\nThe Egg-cosystem console\n\n"
67
T += py.read("egg/library/commands")
78
print(white + T)
89
return "done"

‎build/lib/eggdriver/resources/modules.py

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import pip, sys, subprocess
2-
import importlib as il
32
import importlib.util
43
from eggdriver.resources.constants import white
54
from eggdriver.resources.extensions import withoutFormat
65
from eggdriver.resources.console import ProgressBar
76

87
def isntInstalled(package):
8+
"""Returns True if a PyPI is not installed"""
99
spec = importlib.util.find_spec(package)
1010
loweredSpec = importlib.util.find_spec(package.lower())
1111
if (spec is None) and (loweredSpec is None):
@@ -26,6 +26,7 @@ def install_option_2(name: str):
2626
return "done"
2727

2828
def installFromRequests(requestOrPackages = "requests", fromRequests = True):
29+
"""Install PyPI packages from a requests file or a list"""
2930
if fromRequests:
3031
requestOrPackages = withoutFormat.getLines(requestOrPackages)
3132
bar = ProgressBar()
@@ -40,13 +41,15 @@ def installFromRequests(requestOrPackages = "requests", fromRequests = True):
4041
bar.display(int(c / l * 100), 32, 24, True)
4142

4243
def installFromGithub(userOrOrganization: str, packages: list):
44+
"""Install a package from github.com"""
4345
for package in packages:
4446
url = f"git+https://github.com/{userOrOrganization}/{package}.git#egg={package}"
4547
installFromRequests([url], False)
4648
print(white + package +" succesfully installed")
4749
print(white + f"Try \'import {package}\'")
4850

4951
def install(name: str):
52+
"""Install a PyPI package"""
5053
try:
5154
installFromRequests(name,0)
5255
#raise Exception("error")
@@ -62,13 +65,15 @@ def install(name: str):
6265
return "done"
6366

6467
def upgrade(name: str):
68+
"""Update a PyPI package"""
6569
try:
6670
subprocess.check_call([sys.executable, '-m', 'pip', 'install', '--upgrade', name])
6771
except:
6872
print(white + name + " succesfully ugraded")
6973
return "done"
7074

7175
class Repo():
76+
"""Github Repo class"""
7277
def __init__(self, userOrOrganization: str, package: str):
7378
self.root = userOrOrganization
7479
self.name = package
+23-22
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,24 @@
11
class Parser():
2-
def __init__(self,name: str ="Parser"):
3-
self.sep=[',']
4-
self.sec=['|']
5-
self.ski=["\""]
6-
self.vip=["\\"]
7-
self.den=["~"]
8-
self.name=name
9-
def compare(self,x: str,arr):
10-
k = False
11-
for i in arr:
12-
k =( k or x==i)
13-
return k
14-
def separator(self,x: str ):
15-
return self.compare(x,self.sep)
16-
def section(self,x: str):
17-
return self.compare(x,self.sec)
18-
def skip(self,x: str):
19-
return self.compare(x,self.ski)
20-
def isVip(self,x: str):
21-
return self.compare(x,self.vip)
22-
def isDeny(self,x: str):
23-
return self.compare(x,self.den)
2+
"""Pfcf files parser"""
3+
def __init__(self, name: str = "Parser"):
4+
self.sep = [',']
5+
self.sec = ['|']
6+
self.ski = ["\""]
7+
self.vip = ["\\"]
8+
self.den = ["~"]
9+
self.name = name
10+
def compare(self, x: str, arr):
11+
k = False
12+
for i in arr:
13+
k =( k or x == i)
14+
return k
15+
def separator(self, x: str ):
16+
return self.compare(x, self.sep)
17+
def section(self, x: str):
18+
return self.compare(x, self.sec)
19+
def skip(self, x: str):
20+
return self.compare(x, self.ski)
21+
def isVip(self, x: str):
22+
return self.compare(x, self.vip)
23+
def isDeny(self, x: str):
24+
return self.compare(x, self.den)

‎build/lib/eggdriver/resources/strings.py

+11-10
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,14 @@
99
>>> El camion es mio
1010
"""
1111
def normalize(self): # Method retrieved from https://micro.recursospython.com/recursos/como-quitar-tildes-de-una-cadena.html
12-
replacements = (
13-
("á", "a"),
14-
("é", "e"),
15-
("í", "i"),
16-
("ó", "o"),
17-
("ú", "u"),
18-
)
19-
for a, b in replacements:
20-
s = self.str.replace(a, b).replace(a.upper(), b.upper())
21-
return s
12+
"""Remove accents from words"""
13+
replacements = (
14+
("á", "a"),
15+
("é", "e"),
16+
("í", "i"),
17+
("ó", "o"),
18+
("ú", "u"),
19+
)
20+
for a, b in replacements:
21+
s = self.str.replace(a, b).replace(a.upper(), b.upper())
22+
return s

‎build/lib/eggdriver/resources/utils.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ def floor(f: float):
1010

1111
def colour(id: int, bgcolor: int = 0):
1212
if bgcolor != 0:
13-
return "\033[1;" +str(id) + ";" + str(bgcolor + 10) + "m "
13+
return "\033[1;" + str(id) + ";" + str(bgcolor + 10) + "m "
1414
return "\033[1;" + str(id) + "m"

‎build/lib/eggdriver/resources/web.py

+19-17
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,30 @@
22
from eggdriver.resources.extensions import html
33

44
class Document():
5+
"""HTML documents class whit some useful methods like Document.write"""
56
def __init__(self, name: str, output: str ="index"):
67
install("bs4")
78
from bs4 import BeautifulSoup
8-
self.name=name
9-
doc=open(self.name+".html").read()
10-
self.soup=BeautifulSoup(doc,features="html.parser")
11-
self.output=output
12-
lines=html.getLines(self.name)
9+
self.name = name
10+
doc = open(self.name + ".html").read()
11+
self.soup = BeautifulSoup(doc, features = "html.parser")
12+
self.output = output
13+
lines = html.getLines(self.name)
1314
html.writeLines(lines, self.output)
1415
def write(self, text: str, id: str):
15-
lines=html.getLines(self.output)
16-
for i in range(0,len(lines)):
17-
l=lines[i]
18-
words=l.split()
19-
if words[0]=="$egg" and id==words[1]:
20-
lines[i]=text+"\n"
21-
html.writeLines(lines,self.output)
16+
lines = html.getLines(self.output)
17+
for i in range(0, len(lines)):
18+
line = lines[i]
19+
words = line.split()
20+
if words[0] == "$egg" and id == words[1]:
21+
lines[i] = text + "\n"
22+
html.writeLines(lines, self.output)
2223
return lines
23-
def addTag(self,tag: str, content: str, id: str):
24-
return self.write(makeTag(self,tag, content),id)
24+
def addTag(self, tag: str, content: str, id: str):
25+
return self.write(makeTag(self, tag, content), id)
2526

26-
def makeTag(document,tag: str, content: str):
27-
new=document.soup.new_tag(tag)
28-
new.string=content
27+
def makeTag(document, tag: str, content: str):
28+
"""Make an HTML tag"""
29+
new = document.soup.new_tag(tag)
30+
new.string = content
2931
return str(new)
25.7 KB
Binary file not shown.

‎dist/eggdriver-0.0.1a4.tar.gz

1.42 MB
Binary file not shown.

‎eggdriver.egg-info/PKG-INFO

+7-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Metadata-Version: 2.1
22
Name: eggdriver
3-
Version: 0.0.1a3
3+
Version: 0.0.1a4
44
Summary: Your proyect trusted driver.
55
Home-page: https://github.com/PythonForChange/eggdriver
66
Author: Emmanuel Norambuena
@@ -23,6 +23,7 @@ Classifier: Programming Language :: Python :: 3 :: Only
2323
Requires-Python: >=3.6, <4
2424
Description-Content-Type: text/markdown
2525
Provides-Extra: qiskit
26+
Provides-Extra: bs4
2627
License-File: LICENSE
2728

2829
# eggdriver
@@ -37,11 +38,11 @@ Natural Quantum Script is a special domain programming language that aims to sim
3738

3839
Scripts written in NQS seek to visually resemble quantum circuits as much as possible. For example:
3940

40-
q0 q1
41-
X
42-
H
43-
.--- X
44-
c1
41+
q0 q1<br>
42+
X<br>
43+
H<br>
44+
.--- X<br>
45+
c1<br>
4546

4647
NQS is initially based on Qiskit, but seeks to go mainstream in the future. This is an OS project whose initial goal was to make it easier to write basic scripts in Qiskit and to bridge the gap for people who don't dare to delve into quantum computing.
4748

0 commit comments

Comments
 (0)
Please sign in to comment.