Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
почему должно, так и получится. я на пхп делал транслитерацию так же (только там использовалось 2 массива). В НБ можно и без массива, потом каждый символ заменять на нужный
Добавлено (24 Июль 2009, 22:41) --------------------------------------------- было бы неплохо, чтоб он автоматом заменял, но увы, это муторное дело
Сообщение отредактировано sp3d - Пт, 24 Июля 2009, 22:39
Можно, только больших изменений ты не увидишь. Прикрепления: Translator.rar(3Kb)
Добавлено (25 Июль 2009, 11:37) --------------------------------------------- Дело в занках припенания "." и ",". Если в тексте они присутствуют, то выдает ошибку
номер символа в строке, которую содержит переменная алфавита, будет совпадать не с клавишей, а именно с соответствующей буквой.
Ну это само собой. Проблема в том, что некоторые русские буквы в английском варианте состоят из двух символов, например "я" - "ya". Здесь видимо получится только с массивами.
залил сегодня новую версию посмотри, там можно и без массивов, я сделал чтоб каждый символ языка был равен одному символу другого. В самой функции транслита я нечиго не изменил только в переменой "SetVar [eng]". тоесть можно в место "StrParse" использовать тот метотод который ты использовал в трансляторе.
Quote (Bodi)
sp3d, послушай, а может на двоих сделаем этот проект? Раз уж ты начал делать транслит, то делать надо до конца
а чья идея этой затеи?
Сообщение отредактировано sp3d - Сб, 25 Июля 2009, 14:46
слово русское превратись в буржуйское. slovo russkoe prevratis' v burzhuyskoe.
все нормально и привычно, НО теперь это слово переведем обратно результат транслита 2:
Quote
slovo russkoe prevratis' v burzhuyskoe. слово русское превратись в бурзхуйское.
видишь косяк, надо вот этот камушек обойти
Добавлено (25 Июль 2009, 15:25) --------------------------------------------- я думаю, что придется делать дополнительный сет-вар - именно на двойные символы
Сообщение отредактировано sp3d - Сб, 25 Июля 2009, 15:19
Попробуйте составить ДВА комплекта переменных для транслита: один - с русского на английский, а второй - с английского на русский. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
И вообще, чего-то вы тут увлеклись... Русификатор для NB 5.6.2 заказывали? Он практически готов. Нужна пара добровольцев для тестирования. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Пока переведен только исполняемый файл. Отладчик доделаю и прицеплю уже на чистовой вариант после исправления ошибок, если таковые найдутся. А вот экзешник просьба погонять по-полной. На этом ресурсе русик к версии 5.6 выкладывать не планирую! См ЛС. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Вот тока надо ж сначала где-то 5.6.2 рабочую найти...
Робяты-танкисты, вы меня удивляете, право! Все есть на ЭТОМ ресурсе!
Добавлено (25 Июль 2009, 15:49) ---------------------------------------------
Quote (Bodi)
Наряд на вино-водочный завод, желающие выйти из строя
На ликеро-водочный! Но, ни фига - на стройку пойдете!
Добавлено (25 Июль 2009, 15:51) --------------------------------------------- Bodi, см. ЛС тоже.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Попробуйте составить ДВА комплекта переменных для транслита
засада вот в чем:
Code
сходить за пивом shodit za pivom
обратное
Code
shodit za pivom чодить за пивом
потому что "sh" соответствует "ч" но "сходть" соответсвует "shodit"
Добавлено (25 Июль 2009, 19:45) --------------------------------------------- это только одно попалось, а сколько их может быть, если даже я и заменю "sh" на "сh" но это не гарантирует, что другие парные не совпадут
да я не это имел ввиду, какой транслит сделать для кирилы не проблема проблема в обратном транслит на кирилу в транслит
Quote
сходить за штопором shodit za shtoporom
в кирилицу
Quote
shodit za shtoporom шодить за схтопором
вот, как НБ сможет распознать, кто есть кто?! либо делать свой алфавит типа "ш --> $h"(либо другими спец-символами), но тогда она будет транслитить в кирилу только то, что сама и странслитит и плюс, надо будет запоминать новые значение отличные от принятых, а это ни есть гуд. И это я написал только лишь одну пару (sh), а есть ещё и другие, которые будут также выеживатся Добавлено (25 Июль 2009, 00:53) --------------------------------------------- незнаю, как обойти, тут ничего не спасает, ни массивы, ни раздельный транслит Отложу это дело до лучшего мозговарения
Сообщение отредактировано sp3d - Вс, 26 Июля 2009, 00:09
Дата: Пт, 04 Сентября 2009, 01:15 | Сообщение # 87
Наш дизайнер
Администраторы
Сообщений: 5959
Offline
Quote (mishem)
Мож у Вас что получится?
сделать то можно наверное, но вот я чето смысла не увидел в этом, т.к.:
Code
Да и вообще, в Windows разве есть установка раскладки для системы в целом? только для отдельных окон Точнее даже - только для отдельных потоков.
вот еслиб глобально как-то переключало, тогда да...
Code
Функция ActivateKeyboardLayout активизирует другую раскладку символов на клавиатуре и устанавливает активную раскладку символов в целом для системы. В другом месте прочёл частное мнение некоего форумчанина, что "ActivateKeyBoardLayout переключает раскладку только для ТЕКУЩЕЙ нити/приложения."Чему верить, не знаю.
Но дело не в этом. Дело в том, что я думаю, что действительно в Windows присутствует такая штука, как "установка раскладки для системы в целом". Я делаю ctrl+shift и во всех окнах у меня устанавливается один и тот же шрифт если он русский, то он русский. Если он английский, то он английский. Один для всех окон.
Теперь по LoadKeyboardLayout. Эта штука не переключает раскладку и в текущем потоке, насколько я могу судить. Я просто компилирую код и остаюсь наверное в этом же потоке, а воз и ныне там. Никакого переключения не происходит. Смысл функции LoadKeyboardLayout в таком случает? Наверное, вернуть HKL. Ну, что ж, попробуем так.
#include <windows.h> int main () { HKL russian; russian = LoadKeyboardLayout("00000419", 0); ActivateKeyboardLayout(russian, KLF_REORDER); }
Бесполезно. Друзья! Так можно всё-таки переключить программно раскладку языков хотя бы в одном окне?
вот мой vbs-скрипт тоже непойми че делает - отрабатывает, а раскладка не переключается хоть ты тресни. тут какие-то закавыки в винде непонятные.
Дата: Пт, 04 Сентября 2009, 01:31 | Сообщение # 88
Эксперт форума
Модераторы
Сообщений: 5942
Offline
У меня смысл просто такой, когда вводяться символы в строку, происходит поиск по базе. Если раскладка не русская, соответственно ни чего найдено не будет. Вот и хотелось бы, что бы при вводе с клавиатуры происходила проверка, на каком языке находится раскладка и автоматом переводила в другую.Конечно это не столь принципиально, но все ж для удобства... Вот и задумался над этим. ( Жена просто достает порой таким вопросом " А почему у меня на английском?" ) Сколько не показывай " Я не запоминаю" и обижается )