aboutsummaryrefslogtreecommitdiff
path: root/lib/python/qmk/cli/new/keymap.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python/qmk/cli/new/keymap.py')
-rwxr-xr-xlib/python/qmk/cli/new/keymap.py26
1 files changed, 15 insertions, 11 deletions
diff --git a/lib/python/qmk/cli/new/keymap.py b/lib/python/qmk/cli/new/keymap.py
index 96525e28e..cbe50692e 100755
--- a/lib/python/qmk/cli/new/keymap.py
+++ b/lib/python/qmk/cli/new/keymap.py
@@ -1,8 +1,9 @@
1"""This script automates the copying of the default keymap into your own keymap. 1"""This script automates the copying of the default keymap into your own keymap.
2""" 2"""
3import os
4import shutil 3import shutil
4from pathlib import Path
5 5
6import qmk.path
6from milc import cli 7from milc import cli
7 8
8 9
@@ -17,24 +18,27 @@ def new_keymap(cli):
17 keymap = cli.config.new_keymap.keymap if cli.config.new_keymap.keymap else input("Keymap Name: ") 18 keymap = cli.config.new_keymap.keymap if cli.config.new_keymap.keymap else input("Keymap Name: ")
18 19
19 # generate keymap paths 20 # generate keymap paths
20 kb_path = os.path.join(os.getcwd(), "keyboards", keyboard) 21 kb_path = Path('keyboards') / keyboard
21 keymap_path_default = os.path.join(kb_path, "keymaps/default") 22 keymap_path = qmk.path.keymap(keyboard)
22 keymap_path = os.path.join(kb_path, "keymaps/%s" % keymap) 23 keymap_path_default = keymap_path / 'default'
24 keymap_path_new = keymap_path / keymap
23 25
24 # check directories 26 # check directories
25 if not os.path.exists(kb_path): 27 if not kb_path.exists():
26 cli.log.error('Keyboard %s does not exist!', kb_path) 28 cli.log.error('Keyboard %s does not exist!', kb_path)
27 exit(1) 29 exit(1)
28 if not os.path.exists(keymap_path_default): 30
31 if not keymap_path_default.exists():
29 cli.log.error('Keyboard default %s does not exist!', keymap_path_default) 32 cli.log.error('Keyboard default %s does not exist!', keymap_path_default)
30 exit(1) 33 exit(1)
31 if os.path.exists(keymap_path): 34
32 cli.log.error('Keymap %s already exists!', keymap_path) 35 if keymap_path_new.exists():
36 cli.log.error('Keymap %s already exists!', keymap_path_new)
33 exit(1) 37 exit(1)
34 38
35 # create user directory with default keymap files 39 # create user directory with default keymap files
36 shutil.copytree(keymap_path_default, keymap_path, symlinks=True) 40 shutil.copytree(str(keymap_path_default), str(keymap_path_new), symlinks=True)
37 41
38 # end message to user 42 # end message to user
39 cli.log.info("%s keymap directory created in: %s", keymap, keymap_path) 43 cli.log.info("%s keymap directory created in: %s", keymap, keymap_path_new)
40 cli.log.info("Compile a firmware with your new keymap by typing: \n" + "qmk compile -kb %s -km %s", keyboard, keymap) 44 cli.log.info("Compile a firmware with your new keymap by typing: \n\n\tqmk compile -kb %s -km %s\n", keyboard, keymap)