GitRemoteRemove
Handle directoryInfo.LinkTarget better
This commit is contained in:
parent
e047304438
commit
f2e714730f
@ -73,7 +73,7 @@ internal static partial class Helper20240624
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static void MoveUpOndDirectory(ILogger<Worker> logger, List<string> args)
|
internal static void MoveUpOneDirectory(ILogger<Worker> logger, List<string> args)
|
||||||
{
|
{
|
||||||
string searchPattern = args[2];
|
string searchPattern = args[2];
|
||||||
string sourceDirectory = Path.GetFullPath(args[0]);
|
string sourceDirectory = Path.GetFullPath(args[0]);
|
||||||
|
71
Day/2024-Q3/Helper-2024-07-11.cs
Normal file
71
Day/2024-Q3/Helper-2024-07-11.cs
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
using Microsoft.Extensions.Logging;
|
||||||
|
using System.Collections.ObjectModel;
|
||||||
|
|
||||||
|
namespace File_Folder_Helper.Day;
|
||||||
|
|
||||||
|
internal static partial class Helper20240711
|
||||||
|
{
|
||||||
|
|
||||||
|
internal static void GitRemoteRemove(ILogger<Worker> logger, List<string> args)
|
||||||
|
{
|
||||||
|
string[] lines;
|
||||||
|
bool branchCheck;
|
||||||
|
bool remoteCheck;
|
||||||
|
string? directory;
|
||||||
|
string parentDirectoryName;
|
||||||
|
string? parentDirectory;
|
||||||
|
string branchName = args[6];
|
||||||
|
string searchPattern = args[2];
|
||||||
|
string remoteToAddUrl = args[5];
|
||||||
|
string remoteToRemove = args[3];
|
||||||
|
string remoteToAddName = args[4];
|
||||||
|
ReadOnlyCollection<string> messages;
|
||||||
|
string sourceDirectory = Path.GetFullPath(args[0]);
|
||||||
|
string lastRemoteSegment = remoteToRemove.Split('/')[^1];
|
||||||
|
string[] files = Directory.EnumerateFiles(sourceDirectory, searchPattern, new EnumerationOptions() { IgnoreInaccessible = true, RecurseSubdirectories = true, AttributesToSkip = FileAttributes.None }).ToArray();
|
||||||
|
logger.LogInformation("Found {files} file(s)", files.Length);
|
||||||
|
foreach (string file in files)
|
||||||
|
{
|
||||||
|
branchCheck = false;
|
||||||
|
remoteCheck = false;
|
||||||
|
lines = File.ReadAllLines(file);
|
||||||
|
foreach (string line in lines)
|
||||||
|
{
|
||||||
|
if (!line.Contains(remoteToRemove))
|
||||||
|
continue;
|
||||||
|
remoteCheck = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
foreach (string line in lines)
|
||||||
|
{
|
||||||
|
if (!line.Contains(branchName))
|
||||||
|
continue;
|
||||||
|
branchCheck = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (!remoteCheck)
|
||||||
|
continue;
|
||||||
|
directory = Path.GetDirectoryName(file);
|
||||||
|
if (directory is null)
|
||||||
|
continue;
|
||||||
|
parentDirectory = Path.GetDirectoryName(directory);
|
||||||
|
if (parentDirectory is null)
|
||||||
|
continue;
|
||||||
|
parentDirectoryName = Path.GetFileName(parentDirectory).ToLower();
|
||||||
|
messages = Helpers.HelperGit.RemoteRemove(directory, lastRemoteSegment, CancellationToken.None);
|
||||||
|
foreach (string message in messages)
|
||||||
|
logger.LogInformation("{function} => {parentDirectoryName}: [{message}]", nameof(Helpers.HelperGit.RemoteRemove), parentDirectoryName, message);
|
||||||
|
messages = Helpers.HelperGit.RemoteAdd(directory, remoteToAddName, $"{remoteToAddUrl}{parentDirectoryName}.git", CancellationToken.None);
|
||||||
|
foreach (string message in messages)
|
||||||
|
logger.LogInformation("{function} => {parentDirectoryName}: [{message}]", nameof(Helpers.HelperGit.RemoteAdd), parentDirectoryName, message);
|
||||||
|
if (!branchCheck)
|
||||||
|
continue;
|
||||||
|
try
|
||||||
|
{ messages = Helpers.HelperGit.PushBranch(directory, remoteToAddName, branchName, CancellationToken.None); }
|
||||||
|
catch (Exception) { }
|
||||||
|
foreach (string message in messages)
|
||||||
|
logger.LogInformation("{function} => {parentDirectoryName}: [{message}]", nameof(Helpers.HelperGit.PushBranch), parentDirectoryName, message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -76,7 +76,9 @@ internal static class HelperDay
|
|||||||
else if (args[1] == "Day-Helper-2024-06-23")
|
else if (args[1] == "Day-Helper-2024-06-23")
|
||||||
Day.Helper20240623.UpdateSubTasksInMarkdownFiles(logger, args);
|
Day.Helper20240623.UpdateSubTasksInMarkdownFiles(logger, args);
|
||||||
else if (args[1] == "Day-Helper-2024-06-24")
|
else if (args[1] == "Day-Helper-2024-06-24")
|
||||||
Day.Helper20240624.MoveUpOndDirectory(logger, args);
|
Day.Helper20240624.MoveUpOneDirectory(logger, args);
|
||||||
|
else if (args[1] == "Day-Helper-2024-07-11")
|
||||||
|
Day.Helper20240711.GitRemoteRemove(logger, args);
|
||||||
else
|
else
|
||||||
throw new Exception(appSettings.Company);
|
throw new Exception(appSettings.Company);
|
||||||
}
|
}
|
||||||
|
@ -46,7 +46,7 @@ internal static class HelperGit
|
|||||||
private static List<string> GetOthersModifiedAndDeletedExcludingStandardFilesAsList(string repositoryDirectory, bool usePathCombine, CancellationToken cancellationToken)
|
private static List<string> GetOthersModifiedAndDeletedExcludingStandardFilesAsList(string repositoryDirectory, bool usePathCombine, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
List<string> results = [];
|
List<string> results = [];
|
||||||
Task<string> task = RunAsync($"ls-files --others --modified --deleted --exclude-standard", repositoryDirectory, cancellationToken);
|
Task<string> task = RunAsync("ls-files --others --modified --deleted --exclude-standard", repositoryDirectory, cancellationToken);
|
||||||
task.Wait(cancellationToken);
|
task.Wait(cancellationToken);
|
||||||
string[] files = task.Result.Split("\r\n");
|
string[] files = task.Result.Split("\r\n");
|
||||||
foreach (string file in files)
|
foreach (string file in files)
|
||||||
@ -62,7 +62,9 @@ internal static class HelperGit
|
|||||||
internal static ReadOnlyCollection<string> GetOthersModifiedAndDeletedExcludingStandardFiles(string repositoryDirectory, bool usePathCombine, CancellationToken cancellationToken)
|
internal static ReadOnlyCollection<string> GetOthersModifiedAndDeletedExcludingStandardFiles(string repositoryDirectory, bool usePathCombine, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
List<string> results = [];
|
List<string> results = [];
|
||||||
|
List<string> relativePathFiles;
|
||||||
DirectoryInfo directoryInfo;
|
DirectoryInfo directoryInfo;
|
||||||
|
bool usePathCombineInner = false;
|
||||||
string checkDirectory = Path.Combine(repositoryDirectory, ".git");
|
string checkDirectory = Path.Combine(repositoryDirectory, ".git");
|
||||||
if (Directory.Exists(checkDirectory))
|
if (Directory.Exists(checkDirectory))
|
||||||
results.AddRange(GetOthersModifiedAndDeletedExcludingStandardFilesAsList(repositoryDirectory, usePathCombine, cancellationToken));
|
results.AddRange(GetOthersModifiedAndDeletedExcludingStandardFilesAsList(repositoryDirectory, usePathCombine, cancellationToken));
|
||||||
@ -75,9 +77,44 @@ internal static class HelperGit
|
|||||||
checkDirectory = Path.Combine(directoryInfo.LinkTarget, ".git");
|
checkDirectory = Path.Combine(directoryInfo.LinkTarget, ".git");
|
||||||
if (!Directory.Exists(checkDirectory))
|
if (!Directory.Exists(checkDirectory))
|
||||||
continue;
|
continue;
|
||||||
results.AddRange(GetOthersModifiedAndDeletedExcludingStandardFilesAsList(directoryInfo.LinkTarget, usePathCombine, cancellationToken));
|
relativePathFiles = GetOthersModifiedAndDeletedExcludingStandardFilesAsList(directoryInfo.LinkTarget, usePathCombineInner, cancellationToken);
|
||||||
|
foreach (string relativePathFile in relativePathFiles)
|
||||||
|
results.Add(Path.GetFullPath(Path.Combine(subdirectory, relativePathFile)));
|
||||||
}
|
}
|
||||||
return new(results);
|
return new(results);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal static ReadOnlyCollection<string> RemoteRemove(string repositoryDirectory, string name, CancellationToken cancellationToken)
|
||||||
|
{
|
||||||
|
List<string> results = [];
|
||||||
|
Task<string> task = RunAsync($"remote rm {name}", repositoryDirectory, cancellationToken);
|
||||||
|
task.Wait(cancellationToken);
|
||||||
|
string[] lines = task.Result.Split("\r\n");
|
||||||
|
foreach (string line in lines)
|
||||||
|
results.Add(line);
|
||||||
|
return new(results);
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static ReadOnlyCollection<string> RemoteAdd(string repositoryDirectory, string name, string url, CancellationToken cancellationToken)
|
||||||
|
{
|
||||||
|
List<string> results = [];
|
||||||
|
Task<string> task = RunAsync($"remote add {name} {url}", repositoryDirectory, cancellationToken);
|
||||||
|
task.Wait(cancellationToken);
|
||||||
|
string[] lines = task.Result.Split("\r\n");
|
||||||
|
foreach (string line in lines)
|
||||||
|
results.Add(line);
|
||||||
|
return new(results);
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static ReadOnlyCollection<string> PushBranch(string repositoryDirectory, string remote, string name, CancellationToken cancellationToken)
|
||||||
|
{
|
||||||
|
List<string> results = [];
|
||||||
|
Task<string> task = RunAsync($"push {remote} {name}", repositoryDirectory, cancellationToken);
|
||||||
|
task.Wait(cancellationToken);
|
||||||
|
string[] lines = task.Result.Split("\r\n");
|
||||||
|
foreach (string line in lines)
|
||||||
|
results.Add(line);
|
||||||
|
return new(results);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,6 +1,7 @@
|
|||||||
using File_Folder_Helper.Models;
|
using File_Folder_Helper.Models;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
|
using System.Diagnostics;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
@ -14,7 +15,8 @@ internal static partial class HelperMarkdown
|
|||||||
{
|
{
|
||||||
|
|
||||||
private record Input(string? Destination,
|
private record Input(string? Destination,
|
||||||
string Source);
|
string Source,
|
||||||
|
bool UseProcessStart);
|
||||||
|
|
||||||
private record Record(string Directory,
|
private record Record(string Directory,
|
||||||
string File,
|
string File,
|
||||||
@ -28,6 +30,7 @@ internal static partial class HelperMarkdown
|
|||||||
string FileNameWithoutExtension,
|
string FileNameWithoutExtension,
|
||||||
ReadOnlyDictionary<string, object> FrontMatterYaml,
|
ReadOnlyDictionary<string, object> FrontMatterYaml,
|
||||||
string H1,
|
string H1,
|
||||||
|
bool IsGitOthersModifiedAndDeletedExcludingStandard,
|
||||||
bool IsKanbanIndex,
|
bool IsKanbanIndex,
|
||||||
bool IsKanbanMarkdown,
|
bool IsKanbanMarkdown,
|
||||||
DateTime LastWriteDateTime,
|
DateTime LastWriteDateTime,
|
||||||
@ -52,7 +55,7 @@ internal static partial class HelperMarkdown
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void SetRecursiveLines(AppSettings appSettings, ILogger<Worker> logger, ReadOnlyDictionary<string, List<MarkdownFileAndLines>> keyValuePairs, string linkTitle, MarkdownFile markdownFile, string[] lines, List<char> indentations, List<string> recursiveLines)
|
private static void SetRecursiveLines(AppSettings appSettings, ILogger<Worker> logger, Input input, ReadOnlyDictionary<string, List<MarkdownFileAndLines>> keyValuePairs, string linkTitle, MarkdownFile markdownFile, string[] lines, List<char> indentations, List<string> recursiveLines)
|
||||||
{
|
{
|
||||||
if (recursiveLines is null)
|
if (recursiveLines is null)
|
||||||
throw new Exception();
|
throw new Exception();
|
||||||
@ -97,14 +100,16 @@ internal static partial class HelperMarkdown
|
|||||||
if (markdownFileH1AndRelativePath.MarkdownFile is null || markdownFileH1AndRelativePath.H1 is null || markdownFileH1AndRelativePath.RelativePath is null)
|
if (markdownFileH1AndRelativePath.MarkdownFile is null || markdownFileH1AndRelativePath.H1 is null || markdownFileH1AndRelativePath.RelativePath is null)
|
||||||
{
|
{
|
||||||
recursiveLines.Add($"???{indentation}{lines[i]}");
|
recursiveLines.Add($"???{indentation}{lines[i]}");
|
||||||
logger.LogInformation("Didn't find '{line}' in <{file}>", lines[i], markdownFile.FileName);
|
logger.LogInformation("`{line}' in <{file}>", lines[i], markdownFile.FileName);
|
||||||
|
if (input.UseProcessStart && File.Exists(markdownFile.File))
|
||||||
|
_ = Process.Start(new ProcessStartInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Programs", "VSCodium", "VSCodium.exe"), markdownFile.File) { WorkingDirectory = input.Source });
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (markdownFileH1AndRelativePath.Lines is null)
|
if (markdownFileH1AndRelativePath.Lines is null)
|
||||||
continue;
|
continue;
|
||||||
indentations.Add('\t');
|
indentations.Add('\t');
|
||||||
recursiveLines.Add($"{indentation}{lines[i]}");
|
recursiveLines.Add($"{indentation}{lines[i]}");
|
||||||
SetRecursiveLines(appSettings, logger, keyValuePairs, segmentsA[0].Split('[')[^1], markdownFileH1AndRelativePath.MarkdownFile, markdownFileH1AndRelativePath.Lines, indentations, recursiveLines);
|
SetRecursiveLines(appSettings, logger, input, keyValuePairs, segmentsA[0].Split('[')[^1], markdownFileH1AndRelativePath.MarkdownFile, markdownFileH1AndRelativePath.Lines, indentations, recursiveLines);
|
||||||
}
|
}
|
||||||
if (indentations.Count > 0)
|
if (indentations.Count > 0)
|
||||||
indentations.RemoveAt(0);
|
indentations.RemoveAt(0);
|
||||||
@ -466,11 +471,10 @@ internal static partial class HelperMarkdown
|
|||||||
return new(results);
|
return new(results);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int ConvertFileToSlugName(ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int ConvertFileToSlugName(ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
string h1;
|
string h1;
|
||||||
bool gitCheck;
|
|
||||||
string h1Check;
|
string h1Check;
|
||||||
string[] lines;
|
string[] lines;
|
||||||
string checkName;
|
string checkName;
|
||||||
@ -482,7 +486,6 @@ internal static partial class HelperMarkdown
|
|||||||
continue;
|
continue;
|
||||||
lines = relativeTo.Value.Lines;
|
lines = relativeTo.Value.Lines;
|
||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
markdownFile = relativeTo.Value.MarkdownFile;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
|
||||||
if (markdownFile.LineNumber.H1 is not null)
|
if (markdownFile.LineNumber.H1 is not null)
|
||||||
{
|
{
|
||||||
h1 = lines[markdownFile.LineNumber.H1.Value];
|
h1 = lines[markdownFile.LineNumber.H1.Value];
|
||||||
@ -491,7 +494,7 @@ internal static partial class HelperMarkdown
|
|||||||
h1Check = $"# {h1[2..]}";
|
h1Check = $"# {h1[2..]}";
|
||||||
if (h1Check.Length == h1.Length && h1Check != h1)
|
if (h1Check.Length == h1.Length && h1Check != h1)
|
||||||
{
|
{
|
||||||
if (!gitCheck)
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
continue;
|
continue;
|
||||||
lines[markdownFile.LineNumber.H1.Value] = h1Check;
|
lines[markdownFile.LineNumber.H1.Value] = h1Check;
|
||||||
File.WriteAllLines(markdownFile.File, lines);
|
File.WriteAllLines(markdownFile.File, lines);
|
||||||
@ -507,7 +510,7 @@ internal static partial class HelperMarkdown
|
|||||||
checkName = Path.Combine(markdownFile.Directory, checkFileName);
|
checkName = Path.Combine(markdownFile.Directory, checkFileName);
|
||||||
if (checkName == markdownFile.File)
|
if (checkName == markdownFile.File)
|
||||||
continue;
|
continue;
|
||||||
if (!gitCheck)
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
continue;
|
continue;
|
||||||
File.Move(markdownFile.File, checkName);
|
File.Move(markdownFile.File, checkName);
|
||||||
result += 1;
|
result += 1;
|
||||||
@ -525,24 +528,14 @@ internal static partial class HelperMarkdown
|
|||||||
private static ReadOnlyCollection<string> GetFiles(AppSettings appSettings, Input input)
|
private static ReadOnlyCollection<string> GetFiles(AppSettings appSettings, Input input)
|
||||||
{
|
{
|
||||||
List<string> results = [];
|
List<string> results = [];
|
||||||
FileInfo fileInfo;
|
|
||||||
List<string> files = [];
|
List<string> files = [];
|
||||||
DirectoryInfo directoryInfo;
|
|
||||||
string[] directories = Directory.GetDirectories(input.Source, "*", SearchOption.AllDirectories);
|
string[] directories = Directory.GetDirectories(input.Source, "*", SearchOption.AllDirectories);
|
||||||
foreach (string directory in directories)
|
foreach (string directory in directories)
|
||||||
{
|
{
|
||||||
files.Clear();
|
files.Clear();
|
||||||
directoryInfo = new(directory);
|
|
||||||
files.AddRange(GetFiles(appSettings, directory, SearchOption.TopDirectoryOnly));
|
files.AddRange(GetFiles(appSettings, directory, SearchOption.TopDirectoryOnly));
|
||||||
if (directoryInfo.LinkTarget is not null)
|
|
||||||
files.AddRange(GetFiles(appSettings, directoryInfo.LinkTarget, SearchOption.AllDirectories));
|
|
||||||
foreach (string file in files)
|
foreach (string file in files)
|
||||||
{
|
|
||||||
results.Add(file);
|
results.Add(file);
|
||||||
fileInfo = new(file);
|
|
||||||
if (fileInfo.LinkTarget is not null)
|
|
||||||
results.Add(fileInfo.LinkTarget);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return new(results);
|
return new(results);
|
||||||
}
|
}
|
||||||
@ -738,12 +731,15 @@ internal static partial class HelperMarkdown
|
|||||||
{
|
{
|
||||||
Input result;
|
Input result;
|
||||||
string? destination = null;
|
string? destination = null;
|
||||||
|
bool useProcessStart = false;
|
||||||
string source = Path.GetFullPath(args[0]);
|
string source = Path.GetFullPath(args[0]);
|
||||||
for (int i = 1; i < args.Count; i++)
|
for (int i = 1; i < args.Count; i++)
|
||||||
{
|
{
|
||||||
if (args[i].Length == 2 && i + 1 < args.Count)
|
if (args[i].Length == 2 && i + 1 < args.Count)
|
||||||
{
|
{
|
||||||
if (args[i][1] == 'd')
|
if (args[i][1] == 'u')
|
||||||
|
useProcessStart = args[i + 1] == "true";
|
||||||
|
else if (args[i][1] == 'd')
|
||||||
destination = Path.GetFullPath(args[i + 1]);
|
destination = Path.GetFullPath(args[i + 1]);
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
@ -756,16 +752,15 @@ internal static partial class HelperMarkdown
|
|||||||
if (!Directory.Exists(destination))
|
if (!Directory.Exists(destination))
|
||||||
_ = Directory.CreateDirectory(destination);
|
_ = Directory.CreateDirectory(destination);
|
||||||
}
|
}
|
||||||
result = new(destination, source);
|
result = new(destination, source, useProcessStart);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int CircularReference(ILogger<Worker> logger, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int CircularReference(ILogger<Worker> logger, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
string line;
|
string line;
|
||||||
string check;
|
string check;
|
||||||
bool gitCheck;
|
|
||||||
string[] lines;
|
string[] lines;
|
||||||
bool circularReference;
|
bool circularReference;
|
||||||
MarkdownFile markdownFile;
|
MarkdownFile markdownFile;
|
||||||
@ -776,6 +771,8 @@ internal static partial class HelperMarkdown
|
|||||||
circularReference = false;
|
circularReference = false;
|
||||||
lines = relativeTo.Value.Lines;
|
lines = relativeTo.Value.Lines;
|
||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
markdownFile = relativeTo.Value.MarkdownFile;
|
||||||
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
|
continue;
|
||||||
for (int i = 0; i < lines.Length; i++)
|
for (int i = 0; i < lines.Length; i++)
|
||||||
{
|
{
|
||||||
check = $"[[{markdownFile.FileNameWithoutExtension}]]";
|
check = $"[[{markdownFile.FileNameWithoutExtension}]]";
|
||||||
@ -815,22 +812,18 @@ internal static partial class HelperMarkdown
|
|||||||
}
|
}
|
||||||
if (!circularReference)
|
if (!circularReference)
|
||||||
continue;
|
continue;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
|
||||||
if (!gitCheck)
|
|
||||||
continue;
|
|
||||||
File.WriteAllLines(markdownFile.File, lines);
|
File.WriteAllLines(markdownFile.File, lines);
|
||||||
result += 1;
|
result += 1;
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int FindReplace(ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int FindReplace(ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
bool found;
|
bool found;
|
||||||
string line;
|
string line;
|
||||||
string check;
|
string check;
|
||||||
bool gitCheck;
|
|
||||||
string[] lines;
|
string[] lines;
|
||||||
MarkdownFile markdownFile;
|
MarkdownFile markdownFile;
|
||||||
foreach (KeyValuePair<string, MarkdownFileAndLines> relativeTo in relativeToCollection)
|
foreach (KeyValuePair<string, MarkdownFileAndLines> relativeTo in relativeToCollection)
|
||||||
@ -840,6 +833,8 @@ internal static partial class HelperMarkdown
|
|||||||
found = false;
|
found = false;
|
||||||
lines = relativeTo.Value.Lines;
|
lines = relativeTo.Value.Lines;
|
||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
markdownFile = relativeTo.Value.MarkdownFile;
|
||||||
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
|
continue;
|
||||||
for (int i = 0; i < lines.Length; i++)
|
for (int i = 0; i < lines.Length; i++)
|
||||||
{
|
{
|
||||||
check = $"[[K-A/";
|
check = $"[[K-A/";
|
||||||
@ -866,21 +861,17 @@ internal static partial class HelperMarkdown
|
|||||||
}
|
}
|
||||||
if (!found)
|
if (!found)
|
||||||
continue;
|
continue;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
|
||||||
if (!gitCheck)
|
|
||||||
continue;
|
|
||||||
File.WriteAllLines(markdownFile.File, lines);
|
File.WriteAllLines(markdownFile.File, lines);
|
||||||
result += 1;
|
result += 1;
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int ConvertToRelativePath(ILogger<Worker> logger, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int ConvertToRelativePath(ILogger<Worker> logger, Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
bool write;
|
bool write;
|
||||||
string line;
|
string line;
|
||||||
bool gitCheck;
|
|
||||||
string[] lines;
|
string[] lines;
|
||||||
string[] segmentsA;
|
string[] segmentsA;
|
||||||
string[] segmentsB;
|
string[] segmentsB;
|
||||||
@ -895,6 +886,8 @@ internal static partial class HelperMarkdown
|
|||||||
write = false;
|
write = false;
|
||||||
lines = relativeTo.Value.Lines;
|
lines = relativeTo.Value.Lines;
|
||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
markdownFile = relativeTo.Value.MarkdownFile;
|
||||||
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
|
continue;
|
||||||
for (int i = 0; i < lines.Length; i++)
|
for (int i = 0; i < lines.Length; i++)
|
||||||
{
|
{
|
||||||
segmentsA = lines[i].Split("]]");
|
segmentsA = lines[i].Split("]]");
|
||||||
@ -908,6 +901,8 @@ internal static partial class HelperMarkdown
|
|||||||
if (markdownFileH1AndRelativePath.MarkdownFile is null || markdownFileH1AndRelativePath.H1 is null || markdownFileH1AndRelativePath.RelativePath is null)
|
if (markdownFileH1AndRelativePath.MarkdownFile is null || markdownFileH1AndRelativePath.H1 is null || markdownFileH1AndRelativePath.RelativePath is null)
|
||||||
{
|
{
|
||||||
logger.LogInformation("Didn't find '{line}' in <{file}>", lines[i], markdownFile.FileName);
|
logger.LogInformation("Didn't find '{line}' in <{file}>", lines[i], markdownFile.FileName);
|
||||||
|
if (input.UseProcessStart && File.Exists(markdownFile.File))
|
||||||
|
_ = Process.Start(new ProcessStartInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Programs", "VSCodium", "VSCodium.exe"), markdownFile.File) { WorkingDirectory = input.Source });
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
line = $"{segmentsB[0]}[{markdownFileH1AndRelativePath.H1}]({markdownFileH1AndRelativePath.RelativePath.Replace('\\', '/')}){segmentsA[^1]}";
|
line = $"{segmentsB[0]}[{markdownFileH1AndRelativePath.H1}]({markdownFileH1AndRelativePath.RelativePath.Replace('\\', '/')}){segmentsA[^1]}";
|
||||||
@ -919,22 +914,18 @@ internal static partial class HelperMarkdown
|
|||||||
}
|
}
|
||||||
if (!write)
|
if (!write)
|
||||||
continue;
|
continue;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
|
||||||
if (!gitCheck)
|
|
||||||
continue;
|
|
||||||
File.WriteAllLines(markdownFile.File, lines);
|
File.WriteAllLines(markdownFile.File, lines);
|
||||||
result += 1;
|
result += 1;
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int ConvertFileToSlugName(AppSettings appSettings, ILogger<Worker> logger, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int ConvertFileToSlugName(AppSettings appSettings, ILogger<Worker> logger, Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
bool write;
|
bool write;
|
||||||
string file;
|
string file;
|
||||||
string line;
|
string line;
|
||||||
bool gitCheck;
|
|
||||||
string[] lines;
|
string[] lines;
|
||||||
string fileName;
|
string fileName;
|
||||||
string checkName;
|
string checkName;
|
||||||
@ -956,6 +947,8 @@ internal static partial class HelperMarkdown
|
|||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
markdownFile = relativeTo.Value.MarkdownFile;
|
||||||
if (markdownFile.IsKanbanIndex)
|
if (markdownFile.IsKanbanIndex)
|
||||||
continue;
|
continue;
|
||||||
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
|
continue;
|
||||||
if (!File.Exists(markdownFile.File))
|
if (!File.Exists(markdownFile.File))
|
||||||
continue;
|
continue;
|
||||||
write = false;
|
write = false;
|
||||||
@ -983,6 +976,8 @@ internal static partial class HelperMarkdown
|
|||||||
if (markdownFileH1AndRelativePath.MarkdownFile is null || markdownFileH1AndRelativePath.H1 is null || markdownFileH1AndRelativePath.RelativePath is null)
|
if (markdownFileH1AndRelativePath.MarkdownFile is null || markdownFileH1AndRelativePath.H1 is null || markdownFileH1AndRelativePath.RelativePath is null)
|
||||||
{
|
{
|
||||||
logger.LogInformation("Didn't find '{line}' in <{file}>", lines[i], markdownFile.FileName);
|
logger.LogInformation("Didn't find '{line}' in <{file}>", lines[i], markdownFile.FileName);
|
||||||
|
if (input.UseProcessStart && File.Exists(markdownFile.File))
|
||||||
|
_ = Process.Start(new ProcessStartInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Programs", "VSCodium", "VSCodium.exe"), markdownFile.File) { WorkingDirectory = input.Source });
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
line = $"{string.Join('[', segmentsC, 0, segmentsC.Length - 1)}[{markdownFileH1AndRelativePath.H1}]({markdownFileH1AndRelativePath.RelativePath.Replace('\\', '/')}){segmentsB[^1]}";
|
line = $"{string.Join('[', segmentsC, 0, segmentsC.Length - 1)}[{markdownFileH1AndRelativePath.H1}]({markdownFileH1AndRelativePath.RelativePath.Replace('\\', '/')}){segmentsB[^1]}";
|
||||||
@ -1017,14 +1012,11 @@ internal static partial class HelperMarkdown
|
|||||||
}
|
}
|
||||||
if (!write)
|
if (!write)
|
||||||
continue;
|
continue;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
|
||||||
if (!gitCheck)
|
|
||||||
continue;
|
|
||||||
File.WriteAllLines(markdownFile.File, lines);
|
File.WriteAllLines(markdownFile.File, lines);
|
||||||
result += 1;
|
result += 1;
|
||||||
}
|
}
|
||||||
if (result == 0)
|
if (result == 0)
|
||||||
result = ConvertFileToSlugName(relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
result = ConvertFileToSlugName(relativeToCollection);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1034,22 +1026,27 @@ internal static partial class HelperMarkdown
|
|||||||
string h1;
|
string h1;
|
||||||
string key;
|
string key;
|
||||||
string type;
|
string type;
|
||||||
bool gitCheck;
|
|
||||||
FileInfo fileInfo;
|
FileInfo fileInfo;
|
||||||
bool isKanbanIndex;
|
bool isKanbanIndex;
|
||||||
List<string> lines;
|
List<string> lines;
|
||||||
|
bool isWithinSource;
|
||||||
bool isKanbanMarkdown;
|
bool isKanbanMarkdown;
|
||||||
LineNumber lineNumber;
|
LineNumber lineNumber;
|
||||||
MarkdownFile markdownFile;
|
MarkdownFile markdownFile;
|
||||||
string fileNameWithoutExtension;
|
string fileNameWithoutExtension;
|
||||||
ReadOnlyDictionary<string, object> frontMatterYaml;
|
ReadOnlyDictionary<string, object> frontMatterYaml;
|
||||||
|
bool isGitOthersModifiedAndDeletedExcludingStandard;
|
||||||
ReadOnlyCollection<string> files = GetFiles(appSettings, input);
|
ReadOnlyCollection<string> files = GetFiles(appSettings, input);
|
||||||
foreach (string file in files)
|
foreach (string file in files)
|
||||||
{ // cSpell:disable
|
{ // cSpell:disable
|
||||||
fileInfo = new(file);
|
fileInfo = new(file);
|
||||||
if (fileInfo.DirectoryName is null)
|
if (fileInfo.DirectoryName is null)
|
||||||
continue;
|
continue;
|
||||||
key = !file.Contains(input.Source) ? file : Path.GetRelativePath(input.Source, file);
|
key = Path.GetRelativePath(input.Source, file);
|
||||||
|
isWithinSource = file.Contains(input.Source);
|
||||||
|
isGitOthersModifiedAndDeletedExcludingStandard = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(file);
|
||||||
|
if (!isWithinSource && results.ContainsKey(key))
|
||||||
|
continue;
|
||||||
(lines, lineNumber) = GetStatusAndFrontMatterYamlEndLineNumbers(fileInfo);
|
(lines, lineNumber) = GetStatusAndFrontMatterYamlEndLineNumbers(fileInfo);
|
||||||
fileNameWithoutExtension = Path.GetFileNameWithoutExtension(fileInfo.FullName);
|
fileNameWithoutExtension = Path.GetFileNameWithoutExtension(fileInfo.FullName);
|
||||||
h1 = fileNameWithoutExtension.ToLower().Replace("%20", "-").Replace(' ', '-');
|
h1 = fileNameWithoutExtension.ToLower().Replace("%20", "-").Replace(' ', '-');
|
||||||
@ -1058,8 +1055,7 @@ internal static partial class HelperMarkdown
|
|||||||
(type, h1) = GetTypeAndH1(appSettings, h1, lines, lineNumber);
|
(type, h1) = GetTypeAndH1(appSettings, h1, lines, lineNumber);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(file);
|
if (!isGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
if (!gitCheck)
|
|
||||||
continue;
|
continue;
|
||||||
type = appSettings.DefaultNoteType;
|
type = appSettings.DefaultNoteType;
|
||||||
File.WriteAllLines(file, ["---", $"type: {type}\"", "---", string.Empty, $"# {h1}"]);
|
File.WriteAllLines(file, ["---", $"type: {type}\"", "---", string.Empty, $"# {h1}"]);
|
||||||
@ -1075,6 +1071,7 @@ internal static partial class HelperMarkdown
|
|||||||
fileNameWithoutExtension,
|
fileNameWithoutExtension,
|
||||||
frontMatterYaml,
|
frontMatterYaml,
|
||||||
h1,
|
h1,
|
||||||
|
isGitOthersModifiedAndDeletedExcludingStandard,
|
||||||
isKanbanIndex,
|
isKanbanIndex,
|
||||||
isKanbanMarkdown,
|
isKanbanMarkdown,
|
||||||
fileInfo.LastWriteTime,
|
fileInfo.LastWriteTime,
|
||||||
@ -1085,28 +1082,6 @@ internal static partial class HelperMarkdown
|
|||||||
return new(results);
|
return new(results);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static List<MarkdownFileAndLines> GetRecursiveLines(AppSettings appSettings, Input input, ILogger<Worker> logger, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
|
||||||
{
|
|
||||||
List<MarkdownFileAndLines> results = [];
|
|
||||||
string[] lines;
|
|
||||||
List<char> indentations;
|
|
||||||
MarkdownFile markdownFile;
|
|
||||||
List<string> recursiveLines;
|
|
||||||
ReadOnlyDictionary<string, List<MarkdownFileAndLines>> keyValuePairs = GetKeyValuePairs(relativeToCollection);
|
|
||||||
foreach (KeyValuePair<string, MarkdownFileAndLines> relativeTo in relativeToCollection)
|
|
||||||
{
|
|
||||||
if (relativeTo.Value.Lines.Length == 0)
|
|
||||||
continue;
|
|
||||||
indentations = [];
|
|
||||||
recursiveLines = [];
|
|
||||||
lines = relativeTo.Value.Lines;
|
|
||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
|
||||||
SetRecursiveLines(appSettings, logger, keyValuePairs, markdownFile.FileNameWithoutExtension, markdownFile, lines, indentations, recursiveLines);
|
|
||||||
results.Add(new(relativeTo.Value.MarkdownFile, recursiveLines.ToArray()));
|
|
||||||
}
|
|
||||||
return results;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void SaveColumnToCards(Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
private static void SaveColumnToCards(Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(input.Destination))
|
if (string.IsNullOrEmpty(input.Destination))
|
||||||
@ -1136,11 +1111,10 @@ internal static partial class HelperMarkdown
|
|||||||
return (type, h1FromFile);
|
return (type, h1FromFile);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int SetFrontMatterAndH1(AppSettings appSettings, ILogger<Worker> logger, Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int SetFrontMatterAndH1(AppSettings appSettings, ILogger<Worker> logger, Input input, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
List<string> results = [];
|
List<string> results = [];
|
||||||
bool gitCheck;
|
|
||||||
string h1Line;
|
string h1Line;
|
||||||
string[] lines;
|
string[] lines;
|
||||||
string typeLine;
|
string typeLine;
|
||||||
@ -1165,7 +1139,6 @@ internal static partial class HelperMarkdown
|
|||||||
typeLine = $"type: {appSettings.DefaultNoteType}";
|
typeLine = $"type: {appSettings.DefaultNoteType}";
|
||||||
h1Line = $"# {markdownFile.FileNameWithoutExtension}";
|
h1Line = $"# {markdownFile.FileNameWithoutExtension}";
|
||||||
creationDateTime = markdownFile.CreationDateTime > markdownFile.LastWriteDateTime ? markdownFile.LastWriteDateTime : markdownFile.CreationDateTime;
|
creationDateTime = markdownFile.CreationDateTime > markdownFile.LastWriteDateTime ? markdownFile.LastWriteDateTime : markdownFile.CreationDateTime;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
|
||||||
createdLine = $"created: {creationDateTime.ToUniversalTime():yyyy-MM-ddTHH:mm:ss.fffZ}";
|
createdLine = $"created: {creationDateTime.ToUniversalTime():yyyy-MM-ddTHH:mm:ss.fffZ}";
|
||||||
updatedLine = $"updated: {markdownFile.LastWriteDateTime.ToUniversalTime():yyyy-MM-ddTHH:mm:ss.fffZ}";
|
updatedLine = $"updated: {markdownFile.LastWriteDateTime.ToUniversalTime():yyyy-MM-ddTHH:mm:ss.fffZ}";
|
||||||
if (markdownFile.IsKanbanIndex)
|
if (markdownFile.IsKanbanIndex)
|
||||||
@ -1181,7 +1154,7 @@ internal static partial class HelperMarkdown
|
|||||||
results.Insert(0, string.Empty);
|
results.Insert(0, string.Empty);
|
||||||
}
|
}
|
||||||
results.Insert(0, "---");
|
results.Insert(0, "---");
|
||||||
if (gitCheck)
|
if (markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
{
|
{
|
||||||
results.Insert(0, updatedLine);
|
results.Insert(0, updatedLine);
|
||||||
results.Insert(0, createdLine);
|
results.Insert(0, createdLine);
|
||||||
@ -1199,7 +1172,7 @@ internal static partial class HelperMarkdown
|
|||||||
}
|
}
|
||||||
if (markdownFile.LineNumber.Type is null)
|
if (markdownFile.LineNumber.Type is null)
|
||||||
results.Insert(markdownFile.LineNumber.FrontMatterYamlEnd.Value, typeLine);
|
results.Insert(markdownFile.LineNumber.FrontMatterYamlEnd.Value, typeLine);
|
||||||
if (gitCheck)
|
if (markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
{
|
{
|
||||||
if (markdownFile.LineNumber.Updated is null)
|
if (markdownFile.LineNumber.Updated is null)
|
||||||
results.Insert(markdownFile.LineNumber.FrontMatterYamlEnd.Value, updatedLine);
|
results.Insert(markdownFile.LineNumber.FrontMatterYamlEnd.Value, updatedLine);
|
||||||
@ -1235,7 +1208,7 @@ internal static partial class HelperMarkdown
|
|||||||
}
|
}
|
||||||
if (results.Count == lines.Length && string.Join('\r', lines) == string.Join('\r', results))
|
if (results.Count == lines.Length && string.Join('\r', lines) == string.Join('\r', results))
|
||||||
continue;
|
continue;
|
||||||
if (!gitCheck)
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
continue;
|
continue;
|
||||||
File.WriteAllLines(markdownFile.File, results);
|
File.WriteAllLines(markdownFile.File, results);
|
||||||
File.SetLastWriteTime(markdownFile.File, markdownFile.LastWriteDateTime);
|
File.SetLastWriteTime(markdownFile.File, markdownFile.LastWriteDateTime);
|
||||||
@ -1250,11 +1223,10 @@ internal static partial class HelperMarkdown
|
|||||||
return new(result?.MarkdownFile, result?.Lines, result?.MarkdownFile.H1, result is null ? null : Path.GetRelativePath(markdownFile.Directory, Path.GetFullPath(result.MarkdownFile.File)));
|
return new(result?.MarkdownFile, result?.Lines, result?.MarkdownFile.H1, result is null ? null : Path.GetRelativePath(markdownFile.Directory, Path.GetFullPath(result.MarkdownFile.File)));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static int SortFrontMatter(AppSettings appSettings, ILogger<Worker> logger, Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection, ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles)
|
private static int SortFrontMatter(AppSettings appSettings, ILogger<Worker> logger, Input input, ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection)
|
||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
List<string> results = [];
|
List<string> results = [];
|
||||||
bool gitCheck;
|
|
||||||
string[] lines;
|
string[] lines;
|
||||||
string frontMatterYaml;
|
string frontMatterYaml;
|
||||||
MarkdownFile markdownFile;
|
MarkdownFile markdownFile;
|
||||||
@ -1269,8 +1241,7 @@ internal static partial class HelperMarkdown
|
|||||||
markdownFile = relativeTo.Value.MarkdownFile;
|
markdownFile = relativeTo.Value.MarkdownFile;
|
||||||
if (markdownFile.IsKanbanMarkdown)
|
if (markdownFile.IsKanbanMarkdown)
|
||||||
continue;
|
continue;
|
||||||
gitCheck = gitOthersModifiedAndDeletedExcludingStandardFiles.Contains(markdownFile.File);
|
if (!markdownFile.IsGitOthersModifiedAndDeletedExcludingStandard)
|
||||||
if (!gitCheck)
|
|
||||||
continue;
|
continue;
|
||||||
if (markdownFile.LineNumber.FrontMatterYamlEnd is null)
|
if (markdownFile.LineNumber.FrontMatterYamlEnd is null)
|
||||||
continue;
|
continue;
|
||||||
@ -1296,37 +1267,37 @@ internal static partial class HelperMarkdown
|
|||||||
Input input = GetInput(args);
|
Input input = GetInput(args);
|
||||||
ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles = HelperGit.GetOthersModifiedAndDeletedExcludingStandardFiles(input.Source, usePathCombine, cancellationToken);
|
ReadOnlyCollection<string> gitOthersModifiedAndDeletedExcludingStandardFiles = HelperGit.GetOthersModifiedAndDeletedExcludingStandardFiles(input.Source, usePathCombine, cancellationToken);
|
||||||
ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
ReadOnlyDictionary<string, MarkdownFileAndLines> relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
updated = SetFrontMatterAndH1(appSettings, logger, input, relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
updated = SetFrontMatterAndH1(appSettings, logger, input, gitOthersModifiedAndDeletedExcludingStandardFiles, relativeToCollection);
|
||||||
if (updated != 0)
|
if (updated != 0)
|
||||||
{
|
{
|
||||||
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
||||||
}
|
}
|
||||||
updated = SortFrontMatter(appSettings, logger, input, relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
updated = SortFrontMatter(appSettings, logger, input, relativeToCollection);
|
||||||
if (updated != 0)
|
if (updated != 0)
|
||||||
{
|
{
|
||||||
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
||||||
}
|
}
|
||||||
updated = CircularReference(logger, relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
updated = CircularReference(logger, relativeToCollection);
|
||||||
if (updated != 0)
|
if (updated != 0)
|
||||||
{
|
{
|
||||||
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
||||||
}
|
}
|
||||||
updated = FindReplace(relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
updated = FindReplace(relativeToCollection);
|
||||||
if (updated != 0)
|
if (updated != 0)
|
||||||
{
|
{
|
||||||
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
||||||
}
|
}
|
||||||
updated = ConvertToRelativePath(logger, relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
updated = ConvertToRelativePath(logger, input, relativeToCollection);
|
||||||
if (updated != 0)
|
if (updated != 0)
|
||||||
{
|
{
|
||||||
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
logger.LogInformation("{updated} Markdown file(s) were updated", updated);
|
||||||
}
|
}
|
||||||
updated = ConvertFileToSlugName(appSettings, logger, relativeToCollection, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
updated = ConvertFileToSlugName(appSettings, logger, input, relativeToCollection);
|
||||||
if (updated != 0)
|
if (updated != 0)
|
||||||
{
|
{
|
||||||
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
relativeToCollection = GetRelativeToCollection(appSettings, input, gitOthersModifiedAndDeletedExcludingStandardFiles);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user