def on_done(self, paths, relative_to_project, name): if relative_to_project and s.get('new_files_relative_to_project_root'): paths = SideBarProject().getDirectories() if paths: paths = [SideBarItem(paths[0], False)] if not paths: paths = SideBarSelection(paths).getSelectedDirectoriesOrDirnames() else: paths = SideBarSelection(paths).getSelectedDirectoriesOrDirnames() if not paths: paths = SideBarProject().getDirectories() if paths: paths = [SideBarItem(paths[0], False)] if not paths: sublime.active_window().new_file() else: for item in paths: item = SideBarItem(item.join(name), False) if item.exists(): sublime.error_message("Unable to create file, file or folder exists.") self.run(paths, name) return else: try: item.create() item.edit() except: sublime.error_message("Unable to create file:\n\n"+item.path()) self.run(paths, name) return SideBarProject().refresh();
def on_done(self, paths, name): for folder_item in SideBarSelection(paths).getSelectedDirectoriesOrDirnames(): folder_item = SideBarItem(folder_item.join(name), True) if folder_item.exists(): sublime.error_message("Unable to create folder, folder or file exists.") self.run(paths, name) return else: try: folder_item.create() init_item = SideBarItem(folder_item.join('__init__.py'), False) init_item.create() except: sublime.error_message("Unable to create file:\n\n" + init_item.path()) self.run(paths, name) return if not folder_item.exists(): sublime.error_message("Unable to create folder:\n\n" + folder_item.path()) self.run(paths, name) return SideBarProject().refresh()
def on_done(self, paths, name): for item in SideBarSelection(paths).getSelectedDirectoriesOrDirnames(): item = SideBarItem(item.join(name), True) if item.exists(): sublime.error_message("Unable to create folder, folder or file exists.") self.run(paths, name) return else: item.create() if not item.exists(): sublime.error_message("Unable to create folder:\n\n"+item.path()) self.run(paths, name) return SideBarProject().refresh();
def on_done(self, paths, name): for item in SideBarSelection(paths).getSelectedDirectoriesOrDirnames(): item = SideBarItem(item.join(name), True) if item.exists(): sublime.error_message("Unable to create folder, folder or file exists.") self.run(paths, name) return else: item.create() if not item.exists(): sublime.error_message("Unable to create folder:\n\n"+item.path()) self.run(paths, name) return SideBarProject().refresh();
def on_done(self, paths, name): for item in SideBarSelection(paths).getSelectedDirectoriesOrDirnames(): item = SideBarItem(item.join(name), False) if item.exists(): sublime.error_message("Unable to create file, file or folder exists.") self.run(paths, name) return else: try: item.create() item.edit() except: sublime.error_message("Unable to create file:\n\n"+item.path()) self.run(paths, name) return SideBarProject().refresh();
def on_done(self, paths, name): for item in SideBarSelection(paths).getSelectedDirectoriesOrDirnames(): item = SideBarItem(item.join(name), False) if item.exists(): sublime.error_message( "Unable to create file, file or folder exists.") self.run(paths, name) return else: try: item.create() item.edit() except: sublime.error_message("Unable to create file:\n\n" + item.path()) self.run(paths, name) return SideBarProject().refresh()
def run(self, paths = [], in_parent = 'False', test = 'True', replace = 'False'): s = sublime.load_settings("SideBarEnhancements/Clipboard.sublime-settings") cut = s.get('cut', '') copy = s.get('copy', '') already_exists_paths = [] if SideBarSelection(paths).len() > 0: if in_parent == 'False': location = SideBarSelection(paths).getSelectedItems()[0].path() else: location = SideBarSelection(paths).getSelectedDirectoriesOrDirnames()[0].dirname() if os.path.isdir(location) == False: location = SideBarItem(os.path.dirname(location), True) else: location = SideBarItem(location, True) if cut != '': cut = cut.split("\n") for path in cut: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.move(new, replace == 'True'): sublime.error_message("Unable to cut and paste, destination exists.") return except: sublime.error_message("Unable to move:\n\n"+path.path()+"\n\nto\n\n"+new) return if copy != '': copy = copy.split("\n") for path in copy: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.copy(new, replace == 'True'): sublime.error_message("Unable to copy and paste, destination exists.") return except: sublime.error_message("Unable to copy:\n\n"+path.path()+"\n\nto\n\n"+new) return if test == 'True' and len(already_exists_paths): self.confirm(paths, in_parent, already_exists_paths) elif test == 'True' and not len(already_exists_paths): self.run(paths, in_parent, 'False', 'False') elif test == 'False': cut = s.set('cut', '') SideBarProject().refresh();
def run(self, paths=[], in_parent='False', test='True', replace='False'): s = sublime.load_settings( "SideBarEnhancements/Clipboard.sublime-settings") cut = s.get('cut', '') copy = s.get('copy', '') already_exists_paths = [] if SideBarSelection(paths).len() > 0: if in_parent == 'False': location = SideBarSelection(paths).getSelectedItems()[0].path() else: location = SideBarSelection( paths).getSelectedDirectoriesOrDirnames()[0].dirname() if os.path.isdir(location) == False: location = SideBarItem(os.path.dirname(location), True) else: location = SideBarItem(location, True) if cut != '': cut = cut.split("\n") for path in cut: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.move(new, replace == 'True'): sublime.error_message( "Unable to cut and paste, destination exists." ) return except: sublime.error_message("Unable to move:\n\n" + path.path() + "\n\nto\n\n" + new) return if copy != '': copy = copy.split("\n") for path in copy: path = SideBarItem(path, os.path.isdir(path)) new = os.path.join(location.path(), path.name()) if test == 'True' and os.path.exists(new): already_exists_paths.append(new) elif test == 'False': if os.path.exists(new) and replace == 'False': pass else: try: if not path.copy(new, replace == 'True'): sublime.error_message( "Unable to copy and paste, destination exists." ) return except: sublime.error_message("Unable to copy:\n\n" + path.path() + "\n\nto\n\n" + new) return if test == 'True' and len(already_exists_paths): self.confirm(paths, in_parent, already_exists_paths) elif test == 'True' and not len(already_exists_paths): self.run(paths, in_parent, 'False', 'False') elif test == 'False': cut = s.set('cut', '') SideBarProject().refresh()