Merge pull request #69 from lurch/small_code_tidyups
Minor code reformatting
This commit is contained in:
commit
3606787df8
25
convert.py
25
convert.py
|
@ -2,19 +2,22 @@ import json, sys
|
|||
|
||||
db = json.load(open('pi-pinout.db'))
|
||||
|
||||
|
||||
def from_phys(phys, mode="bcm"):
|
||||
pin = db['pins'][str(phys)]
|
||||
if 'scheme' in pin:
|
||||
if mode in pin['scheme']:
|
||||
return int(pin['scheme'][mode])
|
||||
return None
|
||||
pin = db['pins'][str(phys)]
|
||||
if 'scheme' in pin:
|
||||
if mode in pin['scheme']:
|
||||
return int(pin['scheme'][mode])
|
||||
return None
|
||||
|
||||
|
||||
def to_phys(pin, mode="bcm"):
|
||||
for pin in db['pins']:
|
||||
if 'scheme' in db['pins'][pin]:
|
||||
if mode in db['pins'][pin]['scheme']:
|
||||
return int(pin)
|
||||
return None
|
||||
for pin in db['pins']:
|
||||
if 'scheme' in db['pins'][pin]:
|
||||
if mode in db['pins'][pin]['scheme']:
|
||||
return int(pin)
|
||||
return None
|
||||
|
||||
|
||||
pin = int(sys.argv[1])
|
||||
|
||||
|
@ -23,5 +26,5 @@ mode = 'bcm'
|
|||
if len(sys.argv) > 2:
|
||||
mode = sys.argv[2]
|
||||
|
||||
print("Pin {} is {}: {}".format(pin,mode.upper(),from_phys(pin,mode)))
|
||||
print("Pin {} is {}: {}".format(pin, mode.upper(), from_phys(pin, mode)))
|
||||
|
||||
|
|
135
generate-json.py
135
generate-json.py
|
@ -13,7 +13,7 @@ sys.setdefaultencoding('utf8')
|
|||
lang = "en"
|
||||
|
||||
if len(sys.argv) > 1:
|
||||
lang = sys.argv[1]
|
||||
lang = sys.argv[1]
|
||||
|
||||
pinout.load(lang)
|
||||
|
||||
|
@ -21,12 +21,14 @@ overlays = pinout.settings['overlays']
|
|||
|
||||
pages = {}
|
||||
|
||||
def cssify(value):
|
||||
value = slugify(value);
|
||||
if value[0] == '3' or value[0] == '5':
|
||||
value = 'pow' + value
|
||||
|
||||
return value
|
||||
def cssify(value):
|
||||
value = slugify(value);
|
||||
if value[0] == '3' or value[0] == '5':
|
||||
value = 'pow' + value
|
||||
|
||||
return value
|
||||
|
||||
|
||||
def slugify(value):
|
||||
"""
|
||||
|
@ -38,84 +40,87 @@ def slugify(value):
|
|||
value = re.sub('[^\w\s-]', '', value).strip().lower()
|
||||
return re.sub('[-\s]+', '_', value)
|
||||
|
||||
|
||||
def load_overlay(overlay):
|
||||
try:
|
||||
data = markjaml.load('src/{}/overlay/{}.md'.format(lang,overlay))
|
||||
try:
|
||||
data = markjaml.load('src/{}/overlay/{}.md'.format(lang, overlay))
|
||||
|
||||
loaded = data['data']
|
||||
except IOError:
|
||||
return None
|
||||
loaded = data['data']
|
||||
except IOError:
|
||||
return None
|
||||
|
||||
|
||||
details = []
|
||||
details = []
|
||||
|
||||
if 'manufacturer' in loaded:
|
||||
details.append('* Made by ' + loaded['manufacturer'])
|
||||
if 'manufacturer' in loaded:
|
||||
details.append('* Made by ' + loaded['manufacturer'])
|
||||
|
||||
if 'pincount' in loaded:
|
||||
pincount = int(loaded['pincount'])
|
||||
if pincount == 40:
|
||||
details.append('* HAT form-factor')
|
||||
elif pincount == 26:
|
||||
details.append('* Classic 26-pin')
|
||||
else:
|
||||
details.append('* {} pin header'.format(pincount))
|
||||
if 'pincount' in loaded:
|
||||
pincount = int(loaded['pincount'])
|
||||
if pincount == 40:
|
||||
details.append('* HAT form-factor')
|
||||
elif pincount == 26:
|
||||
details.append('* Classic 26-pin')
|
||||
else:
|
||||
details.append('* {} pin header'.format(pincount))
|
||||
|
||||
if 'pin' in loaded:
|
||||
uses_5v = False
|
||||
uses_3v = False
|
||||
uses = 0
|
||||
for pin in loaded['pin']:
|
||||
pin = str(pin)
|
||||
if pin.startswith('bcm'):
|
||||
pin = pinout.bcm_to_physical(pin[3:])
|
||||
if 'pin' in loaded:
|
||||
uses_5v = False
|
||||
uses_3v = False
|
||||
uses = 0
|
||||
for pin in loaded['pin']:
|
||||
pin = str(pin)
|
||||
if pin.startswith('bcm'):
|
||||
pin = pinout.bcm_to_physical(pin[3:])
|
||||
|
||||
if pin in pinout.pins:
|
||||
actual_pin = pinout.pins[pin]
|
||||
if pin in pinout.pins:
|
||||
actual_pin = pinout.pins[pin]
|
||||
|
||||
if actual_pin['type'] in ['+3v3','+5v','GND']:
|
||||
if actual_pin['type'] == '+3v3':
|
||||
uses_3v = True
|
||||
if actual_pin['type'] == '+5v':
|
||||
uses_5v = True
|
||||
else:
|
||||
uses += 1
|
||||
if actual_pin['type'] in ['+3v3', '+5v', 'GND']:
|
||||
if actual_pin['type'] == '+3v3':
|
||||
uses_3v = True
|
||||
if actual_pin['type'] == '+5v':
|
||||
uses_5v = True
|
||||
else:
|
||||
uses += 1
|
||||
|
||||
if uses > 0:
|
||||
details.append('* Uses {} GPIO pins'.format(uses))
|
||||
if uses > 0:
|
||||
details.append('* Uses {} GPIO pins'.format(uses))
|
||||
|
||||
if '3' in loaded['pin'] and '5' in loaded['pin']:
|
||||
pin_3 = loaded['pin']['3']
|
||||
pin_5 = loaded['pin']['5']
|
||||
if 'mode' in pin_3 and 'mode' in pin_5:
|
||||
if pin_3['mode'] == 'i2c' and pin_5['mode'] == 'i2c':
|
||||
details.append('* Uses I2C')
|
||||
if '3' in loaded['pin'] and '5' in loaded['pin']:
|
||||
pin_3 = loaded['pin']['3']
|
||||
pin_5 = loaded['pin']['5']
|
||||
if 'mode' in pin_3 and 'mode' in pin_5:
|
||||
if pin_3['mode'] == 'i2c' and pin_5['mode'] == 'i2c':
|
||||
details.append('* Uses I2C')
|
||||
|
||||
if 'url' in loaded:
|
||||
details.append('* [More Information]({url})'.format(url=loaded['url']))
|
||||
if 'url' in loaded:
|
||||
details.append('* [More Information]({url})'.format(url=loaded['url']))
|
||||
|
||||
if 'github' in loaded:
|
||||
details.append('* [GitHub Repository]({url})'.format(url=loaded['github']))
|
||||
if 'github' in loaded:
|
||||
details.append('* [GitHub Repository]({url})'.format(url=loaded['github']))
|
||||
|
||||
if 'buy' in loaded:
|
||||
details.append('* [Buy Now]({url})'.format(url=loaded['buy']))
|
||||
if 'buy' in loaded:
|
||||
details.append('* [Buy Now]({url})'.format(url=loaded['buy']))
|
||||
|
||||
if not 'page_url' in loaded:
|
||||
loaded['page_url'] = slugify(loaded['name'])
|
||||
if not 'page_url' in loaded:
|
||||
loaded['page_url'] = slugify(loaded['name'])
|
||||
|
||||
pages[loaded['page_url']] = loaded
|
||||
return loaded
|
||||
|
||||
pages[loaded['page_url']] = loaded
|
||||
return loaded
|
||||
|
||||
def load_md(filename):
|
||||
filename = 'src/{}/{}'.format(lang, filename)
|
||||
try:
|
||||
html = markdown.markdown(open(filename).read(), extensions=['fenced_code'])
|
||||
filename = 'src/{}/{}'.format(lang, filename)
|
||||
try:
|
||||
html = markdown.markdown(open(filename).read(), extensions=['fenced_code'])
|
||||
|
||||
return html
|
||||
except IOError:
|
||||
print('Unable to load markdown from {}'.format(filename))
|
||||
return ''
|
||||
return html
|
||||
except IOError:
|
||||
print('Unable to load markdown from {}'.format(filename))
|
||||
return ''
|
||||
|
||||
overlays = map(load_overlay,overlays)
|
||||
|
||||
overlays = map(load_overlay, overlays)
|
||||
|
||||
print(json.dumps(overlays))
|
||||
|
|
58
markjaml.py
58
markjaml.py
|
@ -4,6 +4,7 @@ import yaml
|
|||
import re
|
||||
import unicodedata
|
||||
|
||||
|
||||
def slugify(value):
|
||||
"""
|
||||
Normalizes string, converts to lowercase, removes non-alpha characters,
|
||||
|
@ -14,42 +15,43 @@ def slugify(value):
|
|||
value = re.sub('[^\w\s-]', '-', value).strip().lower()
|
||||
return re.sub('[-\s]+', '-', value)
|
||||
|
||||
|
||||
def load(file):
|
||||
'''
|
||||
Loads and parses JSON-embedded Markdown file, chopping out and
|
||||
parsing any JSON contained therein.
|
||||
'''
|
||||
Loads and parses JSON-embedded Markdown file, chopping out and
|
||||
parsing any JSON contained therein.
|
||||
|
||||
Returns an object that includes the JSON data, and the parsed HTML.
|
||||
'''
|
||||
markson = open(file).read()
|
||||
Returns an object that includes the JSON data, and the parsed HTML.
|
||||
'''
|
||||
markson = open(file).read()
|
||||
|
||||
_data = re.search(re.compile(r'<!--(JSON:|\n---\n)(.*)-->', re.DOTALL),markson)
|
||||
_data = re.search(re.compile(r'<!--(JSON:|\n---\n)(.*)-->', re.DOTALL), markson)
|
||||
|
||||
_markdown = re.sub(re.compile(r'<!--(JSON:|\n---\n)(.*)-->', re.DOTALL),'',markson)
|
||||
_html = markdown.markdown(_markdown, extensions=['fenced_code'])
|
||||
_markdown = re.sub(re.compile(r'<!--(JSON:|\n---\n)(.*)-->', re.DOTALL), '', markson)
|
||||
_html = markdown.markdown(_markdown, extensions=['fenced_code'])
|
||||
|
||||
# Scan for the Title in the Markdown file, this is always assumed
|
||||
# to be the first string starting with a single hash/pound ( # ) sign
|
||||
_title = re.search(re.compile(r'^#[^\#](.*)$', re.MULTILINE),markson)
|
||||
# Scan for the Title in the Markdown file, this is always assumed
|
||||
# to be the first string starting with a single hash/pound ( # ) sign
|
||||
_title = re.search(re.compile(r'^#[^\#](.*)$', re.MULTILINE), markson)
|
||||
|
||||
if _title != None:
|
||||
_title = _title.group(0).replace('#','').strip()
|
||||
if _title != None:
|
||||
_title = _title.group(0).replace('#', '').strip()
|
||||
|
||||
if _data != None:
|
||||
_type = _data.group(0)[4:8].upper().strip()
|
||||
if _data != None:
|
||||
_type = _data.group(0)[4:8].upper().strip()
|
||||
|
||||
if _type == 'JSON':
|
||||
_data = re.search('\{(.*)\}',_data.group(0),re.DOTALL).group(0)
|
||||
_data = json.loads(_data)
|
||||
elif _type == '---':
|
||||
_data = re.search('\n(.*)\n',_data.group(0),re.DOTALL).group(0)
|
||||
_data = yaml.load(_data)
|
||||
else:
|
||||
data = {}
|
||||
if _type == 'JSON':
|
||||
_data = re.search('\{(.*)\}', _data.group(0), re.DOTALL).group(0)
|
||||
_data = json.loads(_data)
|
||||
elif _type == '---':
|
||||
_data = re.search('\n(.*)\n', _data.group(0), re.DOTALL).group(0)
|
||||
_data = yaml.load(_data)
|
||||
else:
|
||||
data = {}
|
||||
|
||||
_data['title'] = _title
|
||||
_data['title'] = _title
|
||||
|
||||
elif _title != None:
|
||||
_data = {'title':_title}
|
||||
elif _title != None:
|
||||
_data = {'title':_title}
|
||||
|
||||
return {'data':_data, 'html':_html}
|
||||
return {'data':_data, 'html':_html}
|
17
pinout.py
17
pinout.py
|
@ -8,11 +8,13 @@ SETTINGS_FILE = 'settings.yaml'
|
|||
pins = None
|
||||
settings = None
|
||||
|
||||
|
||||
def get_setting(setting, default = None):
|
||||
if setting in settings and settings[setting] != None:
|
||||
return settings[setting]
|
||||
return default
|
||||
|
||||
|
||||
def render_html(*args, **kwargs):
|
||||
html = args[0]
|
||||
kwargs['v'] = str(int(time.time()))
|
||||
|
@ -20,6 +22,7 @@ def render_html(*args, **kwargs):
|
|||
html = html.replace('{{' + key + '}}', kwargs[key])
|
||||
return html
|
||||
|
||||
|
||||
def bcm_to_physical(pin):
|
||||
for idx in pins:
|
||||
compare_pin = pins[idx]
|
||||
|
@ -29,6 +32,7 @@ def bcm_to_physical(pin):
|
|||
#print("Mapping BCM{} to {}".format(pin, str(idx)))
|
||||
return str(idx)
|
||||
|
||||
|
||||
def physical_to_bcm(pin):
|
||||
pin = pins[pin]
|
||||
if 'scheme' in pin:
|
||||
|
@ -36,6 +40,7 @@ def physical_to_bcm(pin):
|
|||
return str(pin['scheme']['bcm'])
|
||||
return None
|
||||
|
||||
|
||||
def physical_to_wiringpi(pin):
|
||||
pin = pins[pin]
|
||||
if 'scheme' in pin:
|
||||
|
@ -43,8 +48,9 @@ def physical_to_wiringpi(pin):
|
|||
return str(pin['scheme']['wiringpi'])
|
||||
return None
|
||||
|
||||
|
||||
def physical_to(pin, scheme='bcm'):
|
||||
if scheme in ['bcm','wiringpi']:
|
||||
if scheme in ['bcm', 'wiringpi']:
|
||||
pin = pins[pin]
|
||||
if 'scheme' in pin:
|
||||
if scheme in pin['scheme']:
|
||||
|
@ -53,16 +59,17 @@ def physical_to(pin, scheme='bcm'):
|
|||
return pin
|
||||
return None
|
||||
|
||||
|
||||
def load(lang='en'):
|
||||
global pins, settings
|
||||
if DB_FILE.endswith('.yaml'):
|
||||
db = yaml.load(open('src/{}/{}'.format(lang,DB_FILE)).read())
|
||||
db = yaml.load(open('src/{}/{}'.format(lang, DB_FILE)).read())
|
||||
else:
|
||||
db = json.load(open('src/{}/{}'.format(lang,DB_FILE)))
|
||||
db = json.load(open('src/{}/{}'.format(lang, DB_FILE)))
|
||||
if SETTINGS_FILE.endswith('.yaml'):
|
||||
settings = yaml.load(open('src/{}/{}'.format(lang,SETTINGS_FILE)).read())
|
||||
settings = yaml.load(open('src/{}/{}'.format(lang, SETTINGS_FILE)).read())
|
||||
else:
|
||||
settings = json.load(open('src/{}/{}'.format(lang,SETTINGS_FILE)))
|
||||
settings = json.load(open('src/{}/{}'.format(lang, SETTINGS_FILE)))
|
||||
pins = db['pins']
|
||||
|
||||
|
||||
|
|
18
serve.py
18
serve.py
|
@ -5,23 +5,27 @@ app = Flask(__name__)
|
|||
|
||||
lang = 'en'
|
||||
|
||||
|
||||
@app.route('/')
|
||||
def show_index():
|
||||
return send_from_directory(basedir,'index.html')
|
||||
return send_from_directory(basedir, 'index.html')
|
||||
|
||||
|
||||
@app.route("/resources/<path:filename>")
|
||||
def custom_static(filename):
|
||||
return send_from_directory(basedir + 'resources/', filename)
|
||||
return send_from_directory(basedir + 'resources/', filename)
|
||||
|
||||
|
||||
@app.route("/<path:page>")
|
||||
def show_page(page):
|
||||
return send_from_directory(basedir,'{}.html'.format(page))
|
||||
return send_from_directory(basedir, '{}.html'.format(page))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
if len(sys.argv) > 1:
|
||||
lang = sys.argv[1]
|
||||
if len(sys.argv) > 1:
|
||||
lang = sys.argv[1]
|
||||
|
||||
basedir = 'output/{lang}/'.format(lang=lang)
|
||||
basedir = 'output/{lang}/'.format(lang=lang)
|
||||
|
||||
app.run(host='0.0.0.0', debug=True)
|
||||
app.run(host='0.0.0.0', debug=True)
|
||||
|
|
|
@ -32,6 +32,7 @@ comment_prefix = {
|
|||
'c': '//'
|
||||
}
|
||||
|
||||
|
||||
def slugify(value):
|
||||
"""
|
||||
Normalizes string, converts to lowercase, removes non-alpha characters,
|
||||
|
@ -39,11 +40,12 @@ def slugify(value):
|
|||
"""
|
||||
value = unicode(value)
|
||||
value = unicodedata.normalize('NFKD', value).encode('ascii', 'ignore').decode('ascii')
|
||||
value = value.replace('+','PLUS')
|
||||
value = value.replace('-','MINUS')
|
||||
value = value.replace('+', 'PLUS')
|
||||
value = value.replace('-', 'MINUS')
|
||||
value = re.sub('[^\w\s-]', '', value).strip().lower()
|
||||
return re.sub('[-\s]+', '_', value)
|
||||
|
||||
|
||||
def bcm_to_physical(pin):
|
||||
pin = pin[3:]
|
||||
for idx in pins:
|
||||
|
@ -54,6 +56,7 @@ def bcm_to_physical(pin):
|
|||
print("Mapping BCM{} to {}".format(pin, str(idx)))
|
||||
return str(idx)
|
||||
|
||||
|
||||
def physical_to_bcm(pin):
|
||||
pin = pins[pin]
|
||||
if 'scheme' in pin:
|
||||
|
@ -61,6 +64,7 @@ def physical_to_bcm(pin):
|
|||
return str(pin['scheme']['bcm'])
|
||||
return None
|
||||
|
||||
|
||||
def physical_to_wiringpi(pin):
|
||||
pin = pins[pin]
|
||||
if 'scheme' in pin:
|
||||
|
@ -68,8 +72,9 @@ def physical_to_wiringpi(pin):
|
|||
return str(pin['scheme']['wiringpi'])
|
||||
return None
|
||||
|
||||
|
||||
def physical_to(pin, scheme='bcm'):
|
||||
if scheme in ['bcm','wiringpi']:
|
||||
if scheme in ['bcm', 'wiringpi']:
|
||||
pin = pins[pin]
|
||||
if 'scheme' in pin:
|
||||
if scheme in pin['scheme']:
|
||||
|
@ -78,24 +83,26 @@ def physical_to(pin, scheme='bcm'):
|
|||
return pin
|
||||
return None
|
||||
|
||||
db = json.load(open('../src/{}/pi-pinout.json'.format(lang)))
|
||||
pins = db['pins']
|
||||
|
||||
define = {}
|
||||
keys = []
|
||||
|
||||
def add_define(key, value):
|
||||
global keys, define
|
||||
keys.append(key)
|
||||
define[key] = value
|
||||
|
||||
|
||||
db = json.load(open('../src/{}/pi-pinout.json'.format(lang)))
|
||||
pins = db['pins']
|
||||
|
||||
define = {}
|
||||
keys = []
|
||||
|
||||
if len(sys.argv) >= 3:
|
||||
|
||||
overlay_file = sys.argv[1]
|
||||
pin_scheme = sys.argv[2]
|
||||
output_lang = sys.argv[3]
|
||||
|
||||
overlay = json.load(open('../src/{}/overlay/{}.json'.format(lang,overlay_file)))
|
||||
overlay = json.load(open('../src/{}/overlay/{}.json'.format(lang, overlay_file)))
|
||||
|
||||
if 'i2c' in overlay:
|
||||
for addr in overlay['i2c']:
|
||||
|
@ -129,7 +136,7 @@ if len(sys.argv) >= 3:
|
|||
board_name = board_name,
|
||||
name = name
|
||||
)
|
||||
row_length = max(len(key),row_length)
|
||||
row_length = max(len(key), row_length)
|
||||
|
||||
|
||||
for name in keys:
|
||||
|
@ -140,6 +147,6 @@ if len(sys.argv) >= 3:
|
|||
|
||||
value = value_template[output_lang].format(value = define[name])
|
||||
|
||||
value = value.rjust(row_length - len(key) + len(value),' ')
|
||||
value = value.rjust(row_length - len(key) + len(value), ' ')
|
||||
|
||||
print(key+value)
|
||||
|
|
87
urlmapper.py
87
urlmapper.py
|
@ -10,6 +10,7 @@ import os
|
|||
reload(sys)
|
||||
sys.setdefaultencoding('utf8')
|
||||
|
||||
|
||||
def url_slugify(value):
|
||||
"""
|
||||
Normalizes string, converts to lowercase, removes non-alpha characters,
|
||||
|
@ -20,70 +21,74 @@ def url_slugify(value):
|
|||
value = re.sub('[^\w\s-]', '', value).strip().lower()
|
||||
return re.sub('[-\s]+', '_', value)
|
||||
|
||||
|
||||
def load_overlay_url(overlay, lang):
|
||||
try:
|
||||
data = markjaml.load('src/{}/overlay/{}.md'.format(lang,overlay))
|
||||
try:
|
||||
data = markjaml.load('src/{}/overlay/{}.md'.format(lang, overlay))
|
||||
|
||||
loaded = data['data']
|
||||
except IOError:
|
||||
return None
|
||||
loaded = data['data']
|
||||
except IOError:
|
||||
return None
|
||||
|
||||
if not 'page_url' in loaded:
|
||||
loaded['page_url'] = url_slugify(loaded['name'])
|
||||
if not 'page_url' in loaded:
|
||||
loaded['page_url'] = url_slugify(loaded['name'])
|
||||
|
||||
return overlay, loaded['page_url']
|
||||
return overlay, loaded['page_url']
|
||||
|
||||
def get_pin_url(pin_num,pinout):
|
||||
pin = pinout.pins[str(pin_num)]
|
||||
pin_url = pin['name']
|
||||
|
||||
if pin_url == 'Ground':
|
||||
return None
|
||||
def get_pin_url(pin_num, pinout):
|
||||
pin = pinout.pins[str(pin_num)]
|
||||
pin_url = pin['name']
|
||||
|
||||
if 'scheme' in pin:
|
||||
if 'bcm' in pin['scheme']:
|
||||
bcm = pin['scheme']['bcm']
|
||||
pin_url = 'gpio{}'.format(bcm)
|
||||
if pin_url == 'Ground':
|
||||
return None
|
||||
|
||||
if 'scheme' in pin:
|
||||
if 'bcm' in pin['scheme']:
|
||||
bcm = pin['scheme']['bcm']
|
||||
pin_url = 'gpio{}'.format(bcm)
|
||||
|
||||
return url_slugify('pin{}_{}'.format(pin_num, pin_url))
|
||||
|
||||
return url_slugify('pin{}_{}'.format(pin_num,pin_url))
|
||||
|
||||
def generate_for_lang(lang="en"):
|
||||
url_lookup = {}
|
||||
url_lookup = {}
|
||||
|
||||
pinout.load(lang)
|
||||
pinout.load(lang)
|
||||
|
||||
overlays = pinout.settings['overlays']
|
||||
overlays = pinout.settings['overlays']
|
||||
|
||||
base_url = pinout.get_setting('base_url','/pinout/')
|
||||
base_url = pinout.get_setting('base_url', '/pinout/')
|
||||
|
||||
domain = pinout.get_setting('domain','pinout.xyz')
|
||||
domain = pinout.get_setting('domain', 'pinout.xyz')
|
||||
|
||||
overlays_html = ''
|
||||
overlays_html = ''
|
||||
|
||||
overlays = map(lambda overlay: load_overlay_url(overlay, lang),overlays)
|
||||
overlays = map(lambda overlay: load_overlay_url(overlay, lang), overlays)
|
||||
|
||||
for pin in range(1,len(pinout.pins)+1):
|
||||
pin_url = get_pin_url(pin,pinout)
|
||||
if pin_url is None:
|
||||
continue
|
||||
for pin in range(1, len(pinout.pins)+1):
|
||||
pin_url = get_pin_url(pin, pinout)
|
||||
if pin_url is None:
|
||||
continue
|
||||
|
||||
url_lookup['pin{}'.format(pin)] = '//{domain}{base_url}{url}'.format(domain=domain,base_url=base_url,url=pin_url)
|
||||
url_lookup['pin{}'.format(pin)] = '//{domain}{base_url}{url}'.format(domain=domain, base_url=base_url, url=pin_url)
|
||||
|
||||
for url in overlays:
|
||||
if url is None:
|
||||
continue
|
||||
for url in overlays:
|
||||
if url is None:
|
||||
continue
|
||||
|
||||
url_lookup['{}'.format(url[0])] = '//{domain}{base_url}{url}'.format(domain=domain,base_url=base_url,url=url[1])
|
||||
url_lookup['{}'.format(url[0])] = '//{domain}{base_url}{url}'.format(domain=domain, base_url=base_url, url=url[1])
|
||||
|
||||
|
||||
url_lookup['index'] = '//{}'.format(domain)
|
||||
url_lookup['index'] = '//{}'.format(domain)
|
||||
|
||||
return url_lookup
|
||||
|
||||
return url_lookup
|
||||
|
||||
def generate_urls(lang="en"):
|
||||
languages = [l.replace('src/','') for l in glob.glob('src/??') if os.path.isdir(l)] # if not l == 'src/'+lang
|
||||
urls = {}
|
||||
for lang in languages:
|
||||
urls[lang] = generate_for_lang(lang)
|
||||
return urls
|
||||
languages = [l.replace('src/', '') for l in glob.glob('src/??') if os.path.isdir(l)] # if not l == 'src/'+lang
|
||||
urls = {}
|
||||
for lang in languages:
|
||||
urls[lang] = generate_for_lang(lang)
|
||||
return urls
|
||||
|
||||
|
|
Loading…
Reference in New Issue