Я написал небольшое служебное приложение, которое позволяет мне преобразовывать текст в «псевдо».
Он основан на простой функции, которая просматривает каждый символ в строке.Если символ IsAlpha , тогда я добавляю к нему акцент.
Я добавляю акцент, добавляя символ с случайной диакритической меткой между U + 0300 и U + 036F * 1008.* (диапазон диакритических знаков).
Так что теперь я просто локализую свое приложение / веб-сайт, как будто я был одним из голландских говорящих локализаторов.
Существует также возможность добавления отступов к тексту, поэтому допускается использование других языков, не использующих столько же места, что и английский
, для других языков, не использующих такой же объем пространства, как английский *1030*
Today
->
[T̀oͨd̼a͈̹y̭ !!]
Control Panel
->
[C̊ȍńt̪r͗o͂l͇ P̈ȁñeͮl͢ !!!!!]
Oxydative Decarboxilation
->
[Ŏx͞y̠dͥa͂t̿i̚v͙eͪ D̼e̖c̿aͤr͖b̐o̼x̹i͂l͖a̠t̮i̓o̧n̰ !!!!!!!!!]
И мойPsuedoLocalizeText
функция:
function TForm1.PsuedoLocalizeText(s: WideString; AddPadding: Boolean): WideString;
var
i: Integer;
sb: TWideStringBuilder;
x: Integer;
tiny: WideString;
const
n: WideString = ''; //n=nothing
begin
//Code is public domain. No attribution required.
sb := TWideStringBuilder.Create;
try
for i := 1 to Length(s) do
begin
//http://www.fileformat.info/info/unicode/block/combining_diacritical_marks/list.htm
//U+0300 .. U+36F are combining diacritic marks
x := $300+Random($36f-$300);
if Windows.IsCharAlphaW(s[i]) then
begin
tiny := n+ s[i] + WideChar(x);
if Random(10) < 1 then
tiny := n+tiny+WideChar($300+Random($36f-$300));
sb.Append(tiny);
end
else
sb.Append(s[i]);
end;
Result := sb.ToString;
finally
sb.Free;
end;
if AddPadding then
begin
Result := '['+Result+' ';
for i := 1 to Ceil(Length(s) / 3) do
begin
Result := n+Result+'!';
end;
Result := Result+']';
end;
end;
Обновление Мой псевдолокализатор:
Моя следующая задача - заставить его работатьна *.resx
, но исключить *.xx-yy.resx
, чтобы он мог работать и в приложениях WinForms.
И, конечно, заполните Размер , Атрибуты , получите правильный значок для Папки .
Тогда, возможно, естьон выделяет часть имен файлов fr-FR
или qps-ploc
.