-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathsetup.py
More file actions
30 lines (26 loc) · 884 Bytes
/
setup.py
File metadata and controls
30 lines (26 loc) · 884 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from setuptools import setup
import os
import yaml
LANGUAGES_DIR = os.path.join(os.path.dirname(__file__), 'universalpython', 'languages')
def get_aliases():
aliases = []
if not os.path.exists(LANGUAGES_DIR):
return aliases
for lang_dir in os.listdir(LANGUAGES_DIR):
yaml_path = os.path.join(LANGUAGES_DIR, lang_dir, 'default.yaml')
if not os.path.isfile(yaml_path):
continue
with open(yaml_path, encoding='utf-8') as f:
data = yaml.safe_load(f)
for alias in data.get('aliases', []):
aliases.append(f'{alias}=universalpython.universalpython:main')
return aliases
console_scripts = [
'universalpython=universalpython.universalpython:main',
'unipy=universalpython.universalpython:main',
] + get_aliases()
setup(
entry_points={
'console_scripts': console_scripts,
}
)