protected override void Run() { var organizer = new SnippetOrganizer(SnippyOptions.Instance.Value, Infrastructure.FileAssociations.Instance.Value); var tags = organizer.GetUniqueTags(); WriteObject(tags); }
protected override void Run() { var invalid = Path.GetInvalidFileNameChars(); if (Name.Any(c => invalid.Contains(c))) { throw new PSArgumentException($"The file name '{Name}' contains invalid characters"); } var organizer = new SnippetOrganizer(Options, FileAssociations); var package = organizer.CreateCustomWorkspace(Name, Tags, Languages, OrderBy, SortDirection, HideMetaFiles); package.Publish(Options, Overwrite); var manifestGenerator = new ManifestGenerator(); manifestGenerator.Add(package); var manifest = manifestGenerator.ToManifest(OrderBy, SortDirection); manifest.Publish(Options.WorkspacePath); if (Sync || Options.AutoSync) { CommitAndPush("New custom workspace"); } }
protected override void Run() { var organizer = new SnippetOrganizer(Options, FileAssociations); var index = organizer.CreateIndex(OrderBy, SortDirection); WriteObject(index, true); }
protected override void Run() { var organizer = new SnippetOrganizer(Options, FileAssociations); var manifestGenerator = new ManifestGenerator(); var unpartitioned = organizer.CreateUnpartitionedWorkspace(OrderBy, SortDirection, HideMetaFiles); try { unpartitioned.Publish(Options, Overwrite); manifestGenerator.Add(unpartitioned); } catch (WorkspaceAlreadyExistsException e) { WriteWarning(e.Message); } var languagePackages = organizer.CreateWorkspacesByLanguage(OrderBy, SortDirection, HideMetaFiles); foreach (var languagePackage in languagePackages) { try { languagePackage.Publish(Options, Overwrite); manifestGenerator.Add(languagePackage); } catch (WorkspaceAlreadyExistsException e) { WriteWarning(e.Message); } } var tagPackages = organizer.CreateWorkspacesByTag(OrderBy, SortDirection, HideMetaFiles); foreach (var tagPackage in tagPackages) { try { tagPackage.Publish(Options, Overwrite); manifestGenerator.Add(tagPackage); } catch (WorkspaceAlreadyExistsException e) { WriteWarning(e.Message); } } var manifest = manifestGenerator.ToManifest(OrderBy, SortDirection); manifest.Publish(Options.WorkspacePath); if (Sync || Options.AutoSync) { CommitAndPush("New standard workspace"); } }
protected override void Run() { var organizer = new SnippetOrganizer(Options, FileAssociations); var path = organizer.CreateNewSnippet(Title, Description, Tags, Files); path.RunWithCode(); var manifest = Manifest.Load(Options.WorkspacePath); organizer.UpdateAllWorkspaces(manifest.Definitions, manifest.OrderBy, manifest.SortDirection, resetSettings: false); if (Sync || Options.AutoSync) { CommitAndPush("Add new snippet"); } }
protected override void Run() { var manifest = Manifest.Load(Options.WorkspacePath); var organizer = new SnippetOrganizer(Options, FileAssociations); if (All) { organizer.UpdateAllWorkspaces(manifest.Definitions, OrderBy, SortDirection, ResetSettings); } else { var workspaceFileNames = Workspaces.Select(x => Path.ChangeExtension(x, Constants.WorkspaceFileExtension)).ToList(); organizer.UpdateWorkspaces(manifest.Definitions, OrderBy, SortDirection, ResetSettings, workspaceFileNames); } if (Sync || Options.AutoSync) { CommitAndPush("Update workspaces"); } }