Exemple #1
0
        public async ValueTask ExecuteAsync(IConsole console)
        {
            var(draftFileInfo, draftFrontMatter) = await BlogUtils.AskUserToSelectDraft("Which draft do you want to publish?");

            var blogPostPath = Path.Combine(BlogSettings.PostsFolder, draftFileInfo.Name);

            if (!Overwrite && File.Exists(blogPostPath))
            {
                await console.Output.WriteLineAsync($"File exists, please use {nameof(Overwrite)} parameter.");

                return;
            }

            var updatedDraftLines = await GetUpdatedDraftFrontMatterLines(draftFileInfo.FullName, draftFrontMatter);

            await File.WriteAllLinesAsync(blogPostPath, updatedDraftLines);

            File.Delete(draftFileInfo.FullName);

            AnsiConsole.Markup($"Published [green]{blogPostPath}[/]");
        }
Exemple #2
0
        public async ValueTask ExecuteAsync(IConsole console)
        {
            var(fileInfo, _) = await BlogUtils.AskUserToSelectDraft("Which draft do you want to edit?");

            await Command.RunAsync("cmd.exe", $"/c code {fileInfo.FullName}", "./");
        }