Ctrl K
ComunidadGuías…

src/MultipleEntrySeparator.cs

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
using System;

namespace Clipman
{
    internal static class MultipleEntrySeparator
    {
        public static string NormalizeMode(string value)
        {
            switch ((value ?? string.Empty).Trim().ToUpperInvariant())
            {
                case "NONE": return "None";
                case "NEWLINE": return "NewLine";
                case "SPACE": return "Space";
                case "COMMASPACE": return "CommaSpace";
                case "CUSTOM": return "Custom";
                case "BLANKLINE":
                default: return "BlankLine";
            }
        }

        public static string Resolve(string mode, string custom)
        {
            switch (NormalizeMode(mode))
            {
                case "None": return string.Empty;
                case "NewLine": return Environment.NewLine;
                case "Space": return " ";
                case "CommaSpace": return ", ";
                case "Custom": return DecodeCustom(custom);
                default: return Environment.NewLine + Environment.NewLine;
            }
        }

        private static string DecodeCustom(string value)
        {
            return (value ?? string.Empty)
                .Replace("\\r\\n", "\r\n")
                .Replace("\\n", "\n")
                .Replace("\\r", "\r")
                .Replace("\\t", "\t");
        }
    }
}