Переименоватор !
Вложений: 1
Маленькая консольная программка, которая находит и заменяет слова в файле на слова из файла словаря. Получает на входе 3 файла:
1) исходный файл 2) выходной файл 3) файл словаря вопрос: "Зачем?" первое применение: Помню кто-то говорил, что прикольно былобы посмотреть как бы выглядел язык программирования, если б в нем использовались русские слова. Вот вам и шанс посмотреть на ваши программы по новому :-D В архиве лежит файл Blitz_to_rus.ini в котором прописаны слева от знака равно (для тех кто в танке это "=") искомые слова, и справа слово, то на которое поменять. Я, к сожалению, не силен в Blitz3D, но вы можете добавлять в файл свои строчки сравнения. второе применение: допустим есть у вас исходный код программы, которая вам позарез нужна, тока вот на другом ЯП, тогда просто пишите в файл соответствия функций того языка на котором исходник, к вашему любимому ЯП. В знакомом коде будет разобраться намного проще. третий случай: вытекающий из второго. Вам надо перевести программу с BLitz3D на Xors3D. Пишите в файле соответствия функций, и вуаля, у вас Xors3D-код. Использовать так: ReNamer.exe входной_файл выходной_файл файл_словаря к сожалению программа консольная, но писать bat-ники (они же cmd-шники) никто пока не запрещал. Надеюсь, кому-нить, да пригодится. |
Ответ: Переименоватор !
как раз думал сделать прогу, которая бы менял код б3д на код ксорса - вот оно.. )
|
Ответ: Переименоватор !
Одним переименовыванием прогу на ксорс не переведёшь. И где-то я уже видел прогу типа Blitz-to-Xors которая везде вначале x'ы расставляла...
|
Ответ: Переименоватор !
вот. это и хотел сделать.
ну не спорю... но все ж самое противное дело, типо расставления везде х будет сделано |
Ответ: Переименоватор !
Да, нет же, прога не меняет функции B3D на функции Xors-а, и не ставит никаких "х" вначале. Это лишь одно из ее применений, которое я привел в пример. Это именно множественный replace по тексту программы и не только программы.
|
Ответ: Переименоватор !
это понятно, но главное , допустим, для меня - ставить эти х.
|
Re: Переименоватор !
да ктомуже таких прог пруд пруди - но конечно приятно когда сам сделал ))
|
Ответ: Переименоватор !
Ей можно кустарный перевод делать. Только удобнее, еслиб в одном файле исходные слова словаря, в другом слова для замены.
|
Ответ: Переименоватор !
Цитата:
Вы же хотите так вот, топором, замутить перевод? Цитата:
|
Ответ: Переименоватор !
кстати. чего тема не в "проектах"?
|
Ответ: Переименоватор !
Если программа использует один проход по исходному тексту на одну пару заменяемого слова и замещающего, то есть не сразу очевидная проблема замены заменяемых частей.
Подробнее: всегда возможна ситуация когда результат одной замены является входным параметров следующей замены. например: мы хотим заменить знаки комментария Blitz3D " ; " на знак комментария BlitzMAX " ' ". А так же хотим заменить одинарную кавычку " ' " на двойную " " ". имеем текст исходный: Код:
;устанавливаем заголовок окна Код:
' устанавливаем заголовок окна Код:
"устанавливаем заголовок окна Поверил тока что, так и есть ;) |
Ответ: Переименоватор !
Цитата:
Цитата:
Цитата:
По делу: всё именно так, проход там один. И все замечания принимаются как обоснованные. Но, извините, заменять символ комментария (`) на текстовые кавычки ("), после первой замены мнеб в голову не пришло. Можно сначала заменить " ' " -> " " " а потом уже " ; " -> " ' ". |
Ответ: Переименоватор !
Цитата:
|
Ответ: Переименоватор !
Цитата:
EntityName -> xEntityName Name -> xName То получим: EntityName -> xEntityname -> xEntityxName. Хотя очевидно мы хотели заменить имя функции Name но не часть слова. Другим словами переводчик не должен пытаться переводить уже переведённое им же... Особенно тяжело будут даваться так называемые свапы лексемм... Например имеем список каких то там координат в текстовом виде с бровной частью. Нам нужно заменить запятую на точку а точку на запятую.. переименоватор выдаст неправильно изменённый текст сделав исключающие замены. Например текст "1,256,125.995" при применении словаря: , = . . = , Сделает не как мы желали: "1.256.125,995", а "1,256,125,995" Сделав двойную замену: "1,256,125.995"->"1.256.125.995"->"1,256,125,995" так что имеем вывод что если в тексте хоть где-то уже встречаются слова из словаря на которые надо заменять, мы потеряем их отличие от исходных. |
Ответ: Переименоватор !
Цитата:
Непонимаю, как такую фразу можно было всерьез воспринять. |
Часовой пояс GMT +4, время: 06:11. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot