mirror of
https://github.com/Nioux/AideDeJeu.git
synced 2025-10-28 22:15:37 +00:00
Découpage
This commit is contained in:
parent
5e49f9c830
commit
f8df8078df
2 changed files with 78 additions and 28 deletions
|
|
@ -1,4 +1,5 @@
|
|||
using AideDeJeu.ViewModels;
|
||||
using AideDeJeu.Tools;
|
||||
using AideDeJeu.ViewModels;
|
||||
using SQLite;
|
||||
using System;
|
||||
using System.Collections;
|
||||
|
|
@ -235,7 +236,7 @@ namespace AideDeJeuLib
|
|||
{
|
||||
get
|
||||
{
|
||||
return $"---\n{Yaml}---\n{Markdown}";
|
||||
return $"---\n{Yaml}---\n{CleanMarkdown}";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -260,5 +261,36 @@ namespace AideDeJeuLib
|
|||
item.Markdown = yamlmd.Substring(parser.Current.End.Index + 1);
|
||||
return post as Item;
|
||||
}
|
||||
|
||||
public string CleanMarkdown
|
||||
{
|
||||
get
|
||||
{
|
||||
var md = Markdown;
|
||||
var rx = new Regex("<!--.*?-->");
|
||||
md = rx.Replace(md, "");
|
||||
return md;
|
||||
}
|
||||
}
|
||||
|
||||
public string NewId
|
||||
{
|
||||
get
|
||||
{
|
||||
var id = string.IsNullOrEmpty(RootId) ? Id : RootId;
|
||||
if(id.Contains("_hd.md"))
|
||||
{
|
||||
return "hd_" + Helpers.RemoveDiacritics(id).Replace("_hd.md#", "_").Replace("_hd.md", "").Replace("-","_").Replace("__","_").ToLower() + ".md";
|
||||
}
|
||||
else if(id.Contains("_vo.md"))
|
||||
{
|
||||
return "srd_" + Helpers.RemoveDiacritics(id).Replace("_vo.md#", "_").Replace("_vo.md", "").Replace("-", "_").Replace("__", "_").ToLower() + ".md";
|
||||
}
|
||||
else
|
||||
{
|
||||
return Helpers.RemoveDiacritics(id).Replace("-", "_").Replace("__", "_").ToLower() + ".md";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ using System.Collections.Generic;
|
|||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Runtime.Serialization.Json;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
|
|
@ -292,6 +293,8 @@ namespace AideDeJeuCmd
|
|||
Console.ReadLine();
|
||||
}
|
||||
|
||||
static string outDir = @"..\..\..\..\..\Data\HD\";
|
||||
|
||||
static async Task Main(string[] args)
|
||||
{
|
||||
Tests.Xamarin.Forms.Mocks.MockForms.Init();
|
||||
|
|
@ -321,37 +324,52 @@ namespace AideDeJeuCmd
|
|||
var monstersVO = await context.MonstersVO.ToListAsync();
|
||||
var spells = await context.Spells.ToListAsync();
|
||||
|
||||
var item1 = monsters.FirstOrDefault();
|
||||
//var item1 = monsters.FirstOrDefault();
|
||||
|
||||
var test1y = item1.Yaml;
|
||||
var test1m = item1.Markdown;
|
||||
var test1ym = item1.YamlMarkdown;
|
||||
//var test1y = item1.Yaml;
|
||||
//var test1m = item1.Markdown;
|
||||
//var test1ym = item1.YamlMarkdown;
|
||||
|
||||
var item2 = Item.ParseYamlMarkdown(test1ym);
|
||||
//var item2 = Item.ParseYamlMarkdown(test1ym);
|
||||
|
||||
var test2y = item2.Yaml;
|
||||
var test2m = item2.Markdown;
|
||||
var test2ym = item2.YamlMarkdown;
|
||||
//var test2y = item2.Yaml;
|
||||
//var test2m = item2.Markdown;
|
||||
//var test2ym = item2.YamlMarkdown;
|
||||
|
||||
var serializer = new SerializerBuilder()
|
||||
.WithTagMapping("!MonsterHD", typeof(MonsterHD))
|
||||
.WithTagMapping("!MonsterVO", typeof(MonsterVO))
|
||||
.WithTagMapping("!Monsters", typeof(List<Monster>))
|
||||
.EnsureRoundtrip()
|
||||
.WithNamingConvention(new PascalCaseNamingConvention())
|
||||
.Build();
|
||||
var deserializer = new DeserializerBuilder()
|
||||
.WithTagMapping("!MonsterHD", typeof(MonsterHD))
|
||||
.WithTagMapping("!MonsterVO", typeof(MonsterVO))
|
||||
.WithTagMapping("!Monsters", typeof(List<Monster>))
|
||||
.WithNamingConvention(new PascalCaseNamingConvention())
|
||||
.Build();
|
||||
var yaml = serializer.Serialize(monsters);
|
||||
var sr = new StringReader(yaml);
|
||||
var deser = deserializer.Deserialize(sr);
|
||||
var items = await context.Items.ToListAsync();
|
||||
|
||||
var truc = Item.ParseYamlMarkdown(monsters.FirstOrDefault().YamlMarkdown);
|
||||
Console.WriteLine(yaml);
|
||||
var matchids = new Dictionary<string, string>();
|
||||
|
||||
foreach (var item in await context.Items.ToListAsync())
|
||||
{
|
||||
matchids[item.Id] = Helpers.RemoveDiacritics(item.Id).Replace(".md#", "_") + ".md";
|
||||
}
|
||||
|
||||
foreach (var item in await context.Items.ToListAsync())
|
||||
{
|
||||
var filename = Path.Combine(outDir, WebUtility.UrlEncode(item.NewId));
|
||||
await SaveStringAsync(filename, item.YamlMarkdown);
|
||||
}
|
||||
|
||||
//var serializer = new SerializerBuilder()
|
||||
// .WithTagMapping("!MonsterHD", typeof(MonsterHD))
|
||||
// .WithTagMapping("!MonsterVO", typeof(MonsterVO))
|
||||
// .WithTagMapping("!Monsters", typeof(List<Monster>))
|
||||
// .EnsureRoundtrip()
|
||||
// .WithNamingConvention(new PascalCaseNamingConvention())
|
||||
// .Build();
|
||||
//var deserializer = new DeserializerBuilder()
|
||||
// .WithTagMapping("!MonsterHD", typeof(MonsterHD))
|
||||
// .WithTagMapping("!MonsterVO", typeof(MonsterVO))
|
||||
// .WithTagMapping("!Monsters", typeof(List<Monster>))
|
||||
// .WithNamingConvention(new PascalCaseNamingConvention())
|
||||
// .Build();
|
||||
//var yaml = serializer.Serialize(monsters);
|
||||
//var sr = new StringReader(yaml);
|
||||
//var deser = deserializer.Deserialize(sr);
|
||||
|
||||
//var truc = Item.ParseYamlMarkdown(monsters.FirstOrDefault().YamlMarkdown);
|
||||
//Console.WriteLine(yaml);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue