Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.24;
Скачать: CL | DM;

Вниз

Переключение раскладки   Найти похожие ветки 

 
Alex_Sudakov ©   (2002-10-10 11:07) [0]

Господа, подскажите алгоритм, по которому работают програмки типа KeyboardNinja или PuntoSitcher. Которые раскладку автоматически переключают...


 
AL2002 ©   (2002-10-10 11:35) [1]

>Alex_Sudakov © (10.10.02 11:07)
А что, долго её переключать, что ли?
Сам изюм в том, чтобы когда надо переключать.


 
REA ©   (2002-10-10 11:38) [2]

алгоритм то как раз и есть ноу-хау


 
Alex_Sudakov ©   (2002-10-10 11:55) [3]

Но ведь реализаций данного алгоритма уже множество, так не ужели он все еще остается ноу-хау? :)


 
cosinus ©   (2002-10-10 12:12) [4]

Как написано в описании PuntoSitcher: "Программа работает, используя принцип невозможности сочетаний некоторых букв для русского и английского языков ". По-моему попробовать можно, начав с того, что написать утилиту, которая тупо считает все слоги в тексте и заносит их в какую либо базу, после чего пропустить через это сито тексты по разной тематике и на разных языках( rus eng, сесенно :). Потом уже начинать писать собственно программу переключения раскладки, которая, правда, на первых порах будет переключать только заведомо бред( типа йцущш) , но начинать то с чего то надо :), а дальше ставить уже другие условия, создавать словарик слов-"исключений" и т.д. и т.п. Возникает лишь один вопрос, стоит ли это таких усилий? Ж:)


 
AL2002 ©   (2002-10-10 12:18) [5]

>стоит ли это таких усилий? Ж:)
Не стоит. Такое уже есть.


 
Alex_Sudakov ©   (2002-10-10 17:20) [6]

Ну и как реализовать то что уже есть?! :))) Блин, вы еще посоветуйте реализовать это через нейронные сети...:(


 
Fog ©   (2002-10-10 17:44) [7]

Я окончу твои страдания:

procedure TForm1.Button1Click(Sender: TObject);
{
Переключение на русский язык
}
var
Layout: array [0.. KL_NAMELENGTH] of Char;
begin
LoadKeyboardLayout( StrCopy(Layout,"00000419"),KLF_ACTIVATE);
end;

procedure TForm1.Button2Click(Sender: TObject);
{
Переключение на английский язык
}
var
Layout: array [0.. KL_NAMELENGTH] of char;
begin
LoadKeyboardLayout(StrCopy(Layout,"00000409"),KLF_ACTIVATE);
end;


 
Alex_Sudakov ©   (2002-10-11 11:14) [8]

Блин. Спасибо конечно, но ты не пробовал вопрос читать. перед тем как на него отвечать? Там же сказано,автоматически!!! :(


 
Fog ©   (2002-10-11 11:25) [9]


> Alex_Sudakov

Ну как делать автоматически уж сам решай, попробуй какиенибудь сообщения ловить... А то что делает PuntoSwitcher меня, честно говоря, иногда раздрожает. Например он незнает таких сочетаний как FPS и RPG, и еще моного каких, а все записовать в словарь лень... Так что я его не использую больше. А чтобы не ошибаться в раскладке лучше просто разные звуки для рус и англ делать...


 
Alex_Sudakov ©   (2002-10-11 18:06) [10]

И все же, господа, не ужели ни кто не может подсказать такой алгоритм?
Не верю! (с) Станиславский :)


 
AL2002 ©   (2002-10-11 18:52) [11]

>Alex_Sudakov © (11.10.02 18:06)
Да чего ты от людей то хочешь? Ставишь хук на клаву. И подбиваешь словарик.
С отсылкой сообщений окнам придётся помучаться. Да и с остальным тоже.


 
Alex_Sudakov ©   (2002-10-15 12:18) [12]

Мне нужно переключать раскладку только в моей программе.
ЗЫ Каким образом формирутся такой словарик?


 
Dr_Mike ©   (2002-10-15 12:43) [13]

> cosinus © (10.10.02 12:12) По-моему попробовать можно, начав с того, что написать утилиту, которая тупо считает все слоги в тексте и заносит их в какую либо базу, после чего пропустить через это сито тексты по разной тематике и на разных языках( rus eng, сесенно :)

Плюс не забыть про соответствия раскладок. Потом просто делаешь обратный частотный анализ и что еще тебе нужно ?


 
Alex_Sudakov ©   (2002-10-15 18:18) [14]

Вау. К сожалению, мне явно не хватает образования. :) Реализация обратного частотного анализа на бале словаря слогов - вещь для меня не доступная. Если не сложно, пример кода бы увидеть...:)


 
AL2002 ©   (2002-10-15 18:29) [15]

>Alex_Sudakov © (15.10.02 18:18)
Считывай в массив вводимые символы до пробела. После пробела сравнивай со словарём. При абракадабре выкусывай из контрола весь текст и заменяй в нём абракадабру на нужное и вставляй назад.
Это я так это себе представляю.


 
AlexKniga ©   (2002-10-15 19:20) [16]

Це знаешь?
http://lib.ru/CYRILLIC/recode.txt

"cyrillic recode"
Яндекс рулез!



Страницы: 1 вся ветка

Текущий архив: 2002.10.24;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.02 c
1-78420
saxon
2002-10-15 17:24
2002.10.24
Memory leak


7-78686
Riper
2002-08-14 18:33
2002.10.24
рАБОТА С ПОРТАМИ! НЕ РАБОТАЕТ WAITCOMMEVENT. ПОЧЕМУ?


6-78560
Andre V.
2002-08-15 09:57
2002.10.24
Wake-On-LAN?


3-78206
Termik
2002-10-03 11:15
2002.10.24
Shared memory realm does not exists


14-78589
Cobalt
2002-10-02 16:04
2002.10.24
Может кто знает, чья это фраза?