Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 25682
Рейтинг: 2087
#16: 2008-09-11 22:18:25 ЛС | профиль | цитата
Dilma писал(а):
но сами языковые конструкции задаются только на этапе сборки

Да, я это помню, и писал именно про применение.

Ну я так понял, что чел хочет что-то наподобие, как в Тотале, языковый перевод отдельным файлом, которй можно отредактировать
карма: 20

0
Ответов: 1161
Рейтинг: 159
#17: 2008-09-12 14:06:30 ЛС | профиль | цитата
nesco писал(а):
Ну я так понял, что чел хочет что-то наподобие, как в Тотале, языковый перевод отдельным файлом, которй можно отредактироват

Ну что-то вроде этого
карма: 0

0
Администрация
Ответов: 15294
Рейтинг: 1515
#18: 2008-09-13 13:46:49 ЛС | профиль | цитата
со временем это будет
карма: 26
0
Ответов: 499
Рейтинг: 1
#19: 2009-02-08 18:39:27 ЛС | профиль | цитата
как продвигается вынос перевода во внешний файл? ужас как не хватает для исправления ошибок, да и просто при составлении языковых пар малюсенькое окно довольно неудобно. а также иногда мешает использование реестра и необходимый перезапуск программы, считывание из конфига и смена на лету, такое возможно?
карма: 0

0
Администрация
Ответов: 15294
Рейтинг: 1515
#20: 2009-02-08 19:24:55 ЛС | профиль | цитата
на лету нет - техническая база не позволяет.
карма: 26
0
Ответов: 1161
Рейтинг: 159
#21: 2009-02-08 19:36:09 ЛС | профиль | цитата
HikeR писал(а):
такое возможно?

ручками все возможно...
карма: 0

0
Ответов: 499
Рейтинг: 1
#22: 2009-02-08 21:10:42 ЛС | профиль | цитата
LainX писал(а):
ручками все возможно...

по трудозатратам быстрее получится сделать вторую копию программы на втором языке.
карма: 0

0
Администрация
Ответов: 15294
Рейтинг: 1515
#23: 2009-02-08 22:23:32 ЛС | профиль | цитата
я вообще никогда не понимал программ со сменой языка на лету. Ввиду того, что нормальный пользователь в здравом уме и трезвой памяти делает эту операцию ровно один раз, то становится очевидно, что программа содержит ворох никому не нужного в повседневной работе кода.
------------ Дoбавленo:

HikeR, еще хотелось бы узнать, какие именно изменения ожидаются от элемента? можно например добавить новое св-во LangPath, в котором указывается путь до папки lng файлов с именами языков (ru.lng, en.lng и т.д.). Соответственно при старте программы в элемент грузятся не статические строки, а содержимое файла выбранного языка. Формат lng файла может быть примерно такой

<исходная фраза>=<переведенная фраза>

Если хочется предложить иную реализацию, то напомню об одном ограничивающем обстоятельстве: элемент не может иметь никаких внешних точек, т.к. он начинает свою работу еще до того, как стартует основная схема.
карма: 26
1
Голосовали:filyaxxxcom
Ответов: 499
Рейтинг: 1
#24: 2009-02-08 23:21:45 ЛС | профиль | цитата
Dilma писал(а):
какие именно изменения ожидаются от элемента?

- выбор места хранения информации о текущем языке, либо в реестре, либо в инишнике (как положение и размеры главной формы).
- если в файле, то читать из инишника главной формы параметр Language с именем (и/или путём) файла. тогда не нужнр дополнительное свойство элемента "транслятор".
- после отметки всех элементов подлежащих переводу по двойному щелчку по транслятору открывается не текущий редактор массива, а просто текстовый редактор с выводом названий переводимых элементов, желательно с возможностью записи для дальнейшего редактирования.
- формат файла "значение=перевод" можно дополнить пониманием коментариев с разделителем "точка с запятой".
- не нужно заводить на каждый язык свой элемент "транслятор", достаточно одного с инфой о том, где лежит указатель на языковой файл. то есть для поддержки нового языка не нужен автор программы, досточно просто добавить новый языковой файл и указать его как стартовый.

------------ Дoбавленo:

смена на лету действительна нужна очень редко, поэтому фиг то с ней ;)
карма: 0

0
Администрация
Ответов: 15294
Рейтинг: 1515
#25: 2009-02-09 10:24:44 ЛС | профиль | цитата
HikeR писал(а):
- после отметки всех элементов подлежащих переводу по двойному щелчку по транслятору открывается не текущий редактор массива, а просто текстовый редактор с выводом названий переводимых элементов, желательно с возможностью записи для дальнейшего редактирования.

т.е. заменить массив текстовым редактором? Это чем-то удобнее?
карма: 26
0
Ответов: 499
Рейтинг: 1
#26: 2009-02-09 19:28:05 ЛС | профиль | цитата
удобнее в плане редактирования без мыши и длинных строк. или сделать окно "редактора массива" изменяемого размера, чтобы хоть по ширине оно менялось.
хотя если будет запись в файл, то редактировать можно и чем-то внешним, а имеющийся редактор оставить для доводки или мелких правок.

карма: 0

0
Администрация
Ответов: 15294
Рейтинг: 1515
#27: 2009-02-10 00:15:44 ЛС | профиль | цитата
убедительно, поменяю.
------------ Дoбавленo:

изменения внесены
карма: 26
0
Ответов: 499
Рейтинг: 1
#28: 2009-02-10 10:58:57 ЛС | профиль | цитата
эээ... а что надо добавить в инишник компонента, чтобы появились новые свойства? я так понял, что не хватает вот этого:
Place=byte
Key=string
Section=string
Value=string
LangsDir=string

карма: 0

0
Администрация
Ответов: 15294
Рейтинг: 1515
#29: 2009-02-10 11:29:02 ЛС | профиль | цитата
забыл про коммит папки base... вот так надо

Place=|4|0|Registry,IniFile
Key=|2|
Section=|2|
Value=|2|
LangsDir=|2|
карма: 26
0
Ответов: 499
Рейтинг: 1
#30: 2009-02-10 12:06:50 ЛС | профиль | цитата
не выходит аленький цветок...
отредактировал Translator.ini, в программе указал такие значения:
Place=IniFile
Key=Language
Section=Main
Value=ru
LangsDir=.

рядом лежит инишник с именем программы, в секции [Main] есть ключ Language со значением ru.
там же лежит экспортированный из редактора массива файл ru.lng.

запускаю - перевода нет.


карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)