Skip to content

Commit 6412ef6

Browse files
committed
Fix bug for projects without folders
1 parent 7dac042 commit 6412ef6

1 file changed

Lines changed: 17 additions & 5 deletions

File tree

advanced_new_file/commands/command_base.py

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,10 @@ def __generate_default_root(self):
2929
if path is None and folder_index is None:
3030
return os.path.expanduser(self.settings.get(DEFAULT_PATH_SETTING))
3131
elif path is None:
32-
return self.window.folders()[folder_index]
32+
if folder_index >= 0:
33+
return self.window.folders()[folder_index]
34+
else:
35+
return os.path.expanduser("~/")
3336
return path
3437

3538
def __generate_alias_root(self):
@@ -38,7 +41,10 @@ def __generate_alias_root(self):
3841
if path is None and folder_index is None:
3942
return os.path.expanduser(self.settings.get(ALIAS_PATH_SETTING))
4043
elif path is None:
41-
return self.window.folders()[folder_index]
44+
if folder_index >= 0:
45+
return self.window.folders()[folder_index]
46+
else:
47+
return os.path.expanduser("~/")
4248
return path
4349

4450
def generate_initial_path(self, initial_path=None):
@@ -86,6 +92,7 @@ def __get_aliases(self):
8692
def __parse_path_setting(self, setting, index_setting):
8793
root = None
8894
folder_index = None
95+
num_folders = len(self.window.folders())
8996
if setting == "home":
9097
root = os.path.expanduser("~/")
9198
elif setting == "current":
@@ -96,15 +103,20 @@ def __parse_path_setting(self, setting, index_setting):
96103
root = os.path.expanduser("~/")
97104
elif setting == "project_folder":
98105
folder_index = self.settings.get(index_setting)
99-
num_folders = len(self.window.folders())
100-
if num_folders < folder_index:
106+
if num_folders == 0:
107+
folder_index = -1
108+
elif num_folders < folder_index:
101109
folder_index = 0
102110
elif setting == "top_folder":
103-
folder_index = 0
111+
if num_folders == 0:
112+
folder_index = -1
113+
else:
114+
folder_index = 0
104115
elif setting == "path":
105116
pass
106117
else:
107118
print("Invalid root specifier")
119+
108120
return (root, folder_index)
109121

110122
def split_path(self, path=""):

0 commit comments

Comments
 (0)