Merge remote-tracking branch 'origin/master' into develop
This commit is contained in:
		@@ -92,7 +92,16 @@ def list_keyboards():
 | 
			
		||||
    kb_wildcard = os.path.join(base_path, "**", "rules.mk")
 | 
			
		||||
    paths = [path for path in glob(kb_wildcard, recursive=True) if 'keymaps' not in path]
 | 
			
		||||
 | 
			
		||||
    return sorted(map(_find_name, paths))
 | 
			
		||||
    return sorted(set(map(resolve_keyboard, map(_find_name, paths))))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def resolve_keyboard(keyboard):
 | 
			
		||||
    cur_dir = Path('keyboards')
 | 
			
		||||
    rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk')
 | 
			
		||||
    while 'DEFAULT_FOLDER' in rules and keyboard != rules['DEFAULT_FOLDER']:
 | 
			
		||||
        keyboard = rules['DEFAULT_FOLDER']
 | 
			
		||||
        rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk')
 | 
			
		||||
    return keyboard
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def config_h(keyboard):
 | 
			
		||||
@@ -106,8 +115,7 @@ def config_h(keyboard):
 | 
			
		||||
    """
 | 
			
		||||
    config = {}
 | 
			
		||||
    cur_dir = Path('keyboards')
 | 
			
		||||
    rules = rules_mk(keyboard)
 | 
			
		||||
    keyboard = Path(rules['DEFAULT_FOLDER'] if 'DEFAULT_FOLDER' in rules else keyboard)
 | 
			
		||||
    keyboard = Path(resolve_keyboard(keyboard))
 | 
			
		||||
 | 
			
		||||
    for dir in keyboard.parts:
 | 
			
		||||
        cur_dir = cur_dir / dir
 | 
			
		||||
@@ -125,13 +133,10 @@ def rules_mk(keyboard):
 | 
			
		||||
    Returns:
 | 
			
		||||
        a dictionary representing the content of the entire rules.mk tree for a keyboard
 | 
			
		||||
    """
 | 
			
		||||
    keyboard = Path(keyboard)
 | 
			
		||||
    cur_dir = Path('keyboards')
 | 
			
		||||
    keyboard = Path(resolve_keyboard(keyboard))
 | 
			
		||||
    rules = parse_rules_mk_file(cur_dir / keyboard / 'rules.mk')
 | 
			
		||||
 | 
			
		||||
    if 'DEFAULT_FOLDER' in rules:
 | 
			
		||||
        keyboard = Path(rules['DEFAULT_FOLDER'])
 | 
			
		||||
 | 
			
		||||
    for i, dir in enumerate(keyboard.parts):
 | 
			
		||||
        cur_dir = cur_dir / dir
 | 
			
		||||
        rules = parse_rules_mk_file(cur_dir / 'rules.mk', rules)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user