示例#1
0
        private LocalizableEntity GetLocalizableProperty(string filePath, string className, string fieldName, string fieldValue)
        {
            var ee = new ClasslikeEntity {
                EntityNameForOverride = className,
                FilePath = filePath,
                FullEntityName = className,
                ShortEntityName = GetShortClassName(className)
            };

            return new LocalizableEntity
            {
                EnclosingEntity = ee,
                FullEntityPath = className + "." + fieldName,
                IsQuoteEnclosed = false, // KISS
                EntityName = fieldName,
                ShallowEntityPath = ee.ShortEntityName + "." + fieldName,
                Value = fieldValue
            };
        }
示例#2
0
        LocalizableEntity ProcessPropertyLine(ClasslikeEntity jsObject, String line)
        {
            var m1 = lineForLocalization.Match(line);
            if (m1.Success)
            {
                var name = m1.Result("${name}");
                var value = m1.Result("${value}").TrimEnd(',', ';', ' ', '\t', '\r', '\n');
                bool quotes = (value.StartsWith("'") && value.EndsWith("'")) || (value.StartsWith("\"") && value.EndsWith("\""));
                return new LocalizableEntity
                {
                    EnclosingEntity = jsObject,
                    EntityName = name,
                    ShallowEntityPath = jsObject.ShortEntityName + "." + name,
                    FullEntityPath = jsObject.EntityNameForOverride + "." + name,
                    IsQuoteEnclosed = quotes,
                    Value = quotes ? value.TrimStart('"', '\'').TrimEnd('"', '\'') : value
                };
            }

            else
                return null;
        }