Esempio n. 1
0
        private int GetLevenshteinAfterFormat(string input, EditorStyles formatStyle, List <IFormatOption> formatOptions)
        {
            var styleFormatter = new StyleFormatter();
            var formattedText  = styleFormatter.FormatText(input, formatOptions, formatStyle);

            var diffMatchPatchWrapper = new DiffMatchPatchWrapper();

            diffMatchPatchWrapper.Diff(input, formattedText);

            return(diffMatchPatchWrapper.DiffLevenshtein());
        }
Esempio n. 2
0
        public async Task <(FlowDocument, FlowDocument)> CreateFlowDocumentAsync(string input, EditorStyles formatStyle, List <IFormatOption> formatOptions, CancellationToken cancelToken)
        {
            var    diffMatchPatchWrapper = new DiffMatchPatchWrapper();
            string output = string.Empty;
            await Task.Run(() =>
            {
                var formatter = new StyleFormatter();
                output        = formatter.FormatText(input, formatOptions, formatStyle);
                diffMatchPatchWrapper.Diff(input, output);
                diffMatchPatchWrapper.CleanupSemantic();
            }, cancelToken);

            return(diffMatchPatchWrapper.DiffAsFlowDocuments(input, output));
        }
Esempio n. 3
0
        public async Task <(bool, string)> CheckOptionValidityAsync(string input, EditorStyles formatStyle, List <IFormatOption> formatOptions)
        {
            string output = string.Empty;
            await Task.Run(() =>
            {
                var formatter = new StyleFormatter();
                output        = formatter.FormatText(input, formatOptions, formatStyle);
            });

            if (output.Contains("YAML"))
            {
                return(true, output);
            }
            return(false, string.Empty);
        }