public static String ToShortTagFilenameDefault( this LitOptions LO, MDAnnSourceInfo info ) { return("tags"); }
public static String ToShortNotesFilenameDefault( this LitOptions LO, MDAnnSourceInfo info ) { return(String.Format("{0}notes.md", info.Prefix)); }
public static String ToLongTagFilenameDefault( this LitOptions LO, MDAnnSourceInfo info ) { return(String.Format("{0}\\{1}", info.BaseDir, LO.ToShortTagFilename(info))); }
public static IEnumerable <String> BuildSourceFilenamesNovel( this LitOptions LO, MDAnnSourceInfo info ) { return(new String[] { String.Format("{0}\\{1}", info.BaseDir, info.Prefix) }); }
public static String ToLongFilenameDefault( this LitOptions LO, MDAnnSourceInfo info, MDSourceFile source ) { return(String.Format("{0}\\{1}", info.BaseDir, ToShortFilenameDefault(LO, info, source))); }
public static void WriteToFileSystemDefault(this LitOptions LO, MDAnnSource sourceObjects, MDAnnSourceInfo info ) { foreach (var source in sourceObjects.Sources) { System.IO.File.WriteAllLines(LO.ToLongSourceFilename(info, source), source.Lines); } System.IO.File.WriteAllLines(LO.ToLongNotesFilename(info), sourceObjects.Notes.Lines); System.IO.File.WriteAllLines(LO.ToLongTagFilename(info), sourceObjects.TagFile.Lines); }
public static String ToShortFilenameDefault( this LitOptions LO, MDAnnSourceInfo info, MDSourceFile source ) { return(ToShortFilenameDefault( LO, info, source.Metadata, source.Author )); }
/// <summary> /// Takes the source info, and compiles it all together into a LitAnnSource object /// </summary> /// <param name="info"></param> /// <returns></returns> public static MDAnnSource BuildAnnSourceDefault( this LitOptions LO, MDAnnSourceInfo info ) { var retVal = new MDAnnSource(); var files = LO.BuildSourceFilenames(info); retVal.Sources = LO.BuildSourceFiles(info, files); retVal.Notes = LO.BuildNotesFile(info, files); return(retVal); }
public static MDNotesFile BuildNotesFileDefault(this LitOptions LO, MDAnnSourceInfo info, IEnumerable <String> files) { var retVal = new MDNotesFile(); var pattern = String.Format(@"{0}notes.md", info.Prefix); var NotesFileLines = files.Where(s => System.Text.RegularExpressions.Regex.IsMatch(s, pattern)); if (NotesFileLines.Count() > 0) { var NotesFile = new MDNotesFile(); NotesFile.Lines = new List <string>(System.IO.File.ReadAllLines(NotesFileLines.First())); retVal = NotesFile; } return(retVal); }
public static String ToShortFilenameDefault( this LitOptions LO, MDAnnSourceInfo info, LitSceneMetadata metadata, LitAuthor author ) { return(ToShortFilenameDefault( LO, info.Prefix, metadata.Descriptor, author.Author )); }
public static List <MDSourceFile> BuildSourceFilesNovel( this LitOptions LO, MDAnnSourceInfo info, IEnumerable <String> filenames ) { return(new List <MDSourceFile>(new MDSourceFile[] { new MDSourceFile() { Lines = new List <String>( System.IO.File.ReadAllLines(filenames.First()) ) } })); }
public static void WriteToFileSystemRaw( this LitOptions LO, MDAnnSource sourceObjects, MDAnnSourceInfo info ) { foreach (var source in sourceObjects.Sources) { String dir = String.Format("{0}\\{1}", info.BaseDir, info.Prefix); if (!System.IO.Directory.Exists(dir)) { System.IO.Directory.CreateDirectory(dir); } System.IO.File.WriteAllLines( LO.ToLongSourceFilename(info, source), source.Lines ); } }
public static MDTagFile WriteTagFileDefault( this LitOptions LO, LitNovel novel, MDAnnSourceInfo info ) { var retVal = new MDTagFile(); var Tags = new List <MDTag>(); string Filename; foreach (var author in novel.Authors) { foreach (var metadata in novel.SceneMetadata) { Filename = LO.ToShourtSourceFilename(info, metadata, author); var query = novel.Scenes.Where(s => s.Metadata == metadata); foreach (var scene in query) { Tags.AddRange(LO.GetAllTags(scene, Filename)); } } } Filename = LO.ToShortNotesFilename(info); foreach (var litRef in novel.References) { foreach (var Tag in litRef.Tags) { Tags.Add(new MDTag() { TagName = Tag.Tag, TagFile = Filename, TagLine = LO.WriteRefTagEX(litRef) }); } } retVal.Lines = Tags.Select(t => LO.WriteTagLine(t)).ToList(); return(retVal); }
public static List <MDSourceFile> BuildSourceFilesDefault(this LitOptions LO, MDAnnSourceInfo info, IEnumerable <String> files) { var retVal = new List <MDSourceFile>(); string pattern = String.Format(@"{0}(\d[\d\.]+)\.([^\.]+)\.md", info.Prefix); var query = files .Select(s => new { File = s, Match = System.Text.RegularExpressions.Regex.Match(s, pattern) }) .Where(f => f.Match.Success); MDSourceFile SourceObj; foreach (var file in query) { SourceObj = new MDSourceFile(); SourceObj.Lines = new List <String>( System.IO.File.ReadAllLines(file.File) ); SourceObj.Metadata = new LitSceneMetadata() { Descriptor = file.Match.Groups[1].Value }; SourceObj.Author = new LitAuthor() { Author = file.Match.Groups[2].Value }; retVal.Add(SourceObj); } return(retVal); }
public static IEnumerable <String> BuildSourceFilenamesDefault(this LitOptions LO, MDAnnSourceInfo info) { var files = System.IO.Directory.GetFiles(info.BaseDir, info.Prefix + "*.md"); Array.Sort(files); return(files); }