Что нового

Simple Text Switcher - Конвертирование набранного текста в неверной раскладке

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,665
Репутация
2,463
AutoIt: 3.2.8.1+
Версия: 1.1

Категория: Автоматизация

Описание: Конвертирует набранный текст в неверной раскладке клавиатуры - Вызов по горячей клавише (по умолчанию Ctrl+`).
Пример: "Ghbdtn vbh" будет конвертировано в "Привет мир" (и наоборот).

Горячую клавишу можно указать в файле конфигурации (Simple_Txt_Switcher.ini) у ключа Convert HotKey=, перезапуск программы не требуется, только вызов конвертирования (предыдущая г.клавиша). Также и клавиша закрытия (по умолчанию Ctrl+Shift+`) программы настраивается с конфиг. файла (ключ Exit HotKey=).

Ключ Limit Window= устанавливает заголовок (или класс окна) в приделах которого будет работать программа.

Файл: Simple_Text_Switcher.zip (297 kb)

История версий:
v1.1
Исправлена функция конвретирования, на быстрых системах проверка буфера обмена происходила раньше чем он заполняться текстом (если был выделен таков).

v1.0
Первый публичный выход программы.

Источник: Simple Text Switcher
Автор(ы): G.Sandler a.k.a CreatoR
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Да, полезная программа. Я так понимаю, что она работает только с EN и RU?



Добавлено:
Сообщение автоматически объединено:

Я бы еще добавил иконку в трей (опционально), а там пункт меню для выхода из программы.
 
Автор
CreatoR

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,665
Репутация
2,463
Yashied [?]
Я так понимаю, что она работает только с EN и RU?
В таблице (Chars_Table.txt) можно указать в принципе любую раскладку. Вот только что прошёл успешно тест с ивритской раскладкой (EN <-> HE), вот таблица:

Код:
`=`
q=/
w='
e=ק
r=ר
t=א
y=ט
u=ו
i=ן
o=ם
p=פ
[=]
]=[
a=ש
s=ד
d=ג
f=כ
g=ע
h=י
j=ח
k=ל
l=ך
;=ף
'=,
z=ז
x=ס
c=ב
v=ה
b=נ
n=מ
m=צ
,=ת
.=ץ
/=.
&=&


Добавлено:
Сообщение автоматически объединено:

Yashied [?]
Я бы еще добавил иконку в трей (опционально), а там пункт меню для выхода из программы
А ещё пункт для выбора горячей клавиши, чтобы не лезть в конфиг. файл...
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
CreatoR [?]
А ещё пункт для выбора горячей клавиши, чтобы не лезть в конфиг. файл...

Ye lf? b bcgjkmpjdfnm РщеЛунюфг3... <= Это я так ввел текст (сикось накось).

Ye lf& b bcgjkmpjdfnm HotKey.au3/// <= Это получилось после конвертирования.

Ну да, и использовать HotKey.au3... <= Должно быть так.

Программа не работает со смешенным текстом?
 

AZJIO

Меценат
Меценат
Сообщения
2,757
Репутация
1,151
Yashied
смотря какой режим... в Arum Switcher две горячие клавиши для перевода последнего слова и последней строки. Возможно здесь режим исправления последнего слова. Или режим перевода в противоположную раскладку (без инвертирования) по "последней" букве.

CreatoR
Иконку обязательно надо, она не мешает, а то пока тестил раз 20 снимал задачу, горячие клавиши у меня не работают. Тестил по умолчанию и менял в ini, не помогает.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
CreatoR
1. Вот такой текст "ghbdtn vbh как твои дела" при полном выделении и нажатие на Ctrl +` переводится на EN и только. Неважно, в какой раскладке стоит индикатор в трее.
2. Мне кажется, что выделить текст, и потом нажимать, горячи клавиши для конвертации немного неудобно.
IMHO:
Конвертация должна происходить по словарю знакомых слов, которые можно добавлять, если программа их не знает. Допустим, по первым 3-4 символам программа определяет, что слово не в той раскладке переводит его и переключает саму раскладку, сигнализируя об этом сигналом (к примеру .wav)



Добавлено:
Сообщение автоматически объединено:

Yashied [?]
Программа не работает со смешенным текстом?
Пока писал, опередили ;D
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Garrett, для этого есть Punto Switcher (О! Уже Яндекс купил!).
 

AZJIO

Меценат
Меценат
Сообщения
2,757
Репутация
1,151
Garrett
Если добавлять словарь будет слишком большой размер программы, да и кто будет писать этот словарь. Если использовать готовый то наверно придётся SQL подключать.

Проще иметь несколько режимов:
1. Исправление строки (слева от курсора) инвертированием.
2. Исправление слова (слева от курсора) без инвертирования в противоположную раскладку определяя по последней букве. Запроityysq > Запрошенный, а не Pfghjшенный. Чаще одно слово не сочетает несколько языков.
3. Исправление выделенного текста инвертированием. Кстати, этот режим может исправить слово со смешенным языком инвертированием.
4. Перевод выделенного или последнего слова в верхний регистр.
5. Перевод выделенного или последнего слова в нижний регистр.
6. Перевод первой буквы в верхний регистр в выделенном или последнем слове.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
Yashied сказал(а):
Garrett, для этого есть Punto Switcher (О! Уже Яндекс купил!).

Да, я в курсе ;D
Вот и говорю, в чём тогда смыл Simple Text Switcher если по удобству и функционалу она уступает?!

P.S. Ничего личного CreatoR!



Добавлено:
Сообщение автоматически объединено:

AZJIO [?]
1. Исправление строки (слева от курсора) инвертированием.
2. Исправление слова (слева от курсора) без инвертирования в противоположную раскладку определяя по последней букве. Запроityysq > Запрошенный, а не Pfghjшенный. Чаще одно слово не сочетает несколько языков.
3. Исправление выделенного текста инвертированием. Кстати, этот режим может исправить слово со смешенным языком инвертированием.
4. Перевод выделенного или последнего слова в верхний регистр.
5. Перевод выделенного или последнего слова в нижний регистр.
6. Перевод первой буквы в верхний регистр в выделенном или последнем слове.
Неплохо!
А как насчёт авто. режима?!
Вот, например, пункт шесть у Word автоматом выполняется, если с новой строки писать строчную букву.
Хотелось бы и авто режим видеть (может, кроме пунктов 4 и 5).
 

AZJIO

Меценат
Меценат
Сообщения
2,757
Репутация
1,151
Garrett
Качнул последнюю версию, не вижу там возможности исправления текста. Прогу качал ещё с непомню какого года, и не использую по причине того, что там нет нужного функционала. Он доставал своим переключением когда этого ненужно, пока не выкинешь его из процесса, не даст напечатать.


Добавлено:
Сообщение автоматически объединено:

Garrett
А как насчёт авто. режима?!
Я не любитель авто, это же надо будет выгружать/загружать прогу или клавишу на временное отключение...
Кстати арум свичер это поддерживает всё, и я всеми этими штуками пользуюсь.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
964
AZJIO [?]
не вижу там возможности исправления текста
Там, если программе слово не известно, то исправлять она его не будет. Если слово незнакомо его нужно ввести в словарь.
Я все переключения привык делать руками, много текстов я на PC не набираю, поэтому и нет особо в ней надобности.
Punto Switcher я своим домочадцам поставил. :smile:
 

AZJIO

Меценат
Меценат
Сообщения
2,757
Репутация
1,151
Garrett
Пример из практики: я всегда знаю, какая у меня раскладка, так как по умолчанию русский, то в открываемых приложениях русский, либо я переключаю и знаю, что раскладка английская. С пунтосвичер я не знаю никогда какая у меня раскладка, он её меняет с заведомой ему регулярностью, а смотреть в трей при наборе каждого слова не айс. Когда мне нужно ввести аббревиатуры, то его приходится выгружать. Составлять списки на все аббревиатуры и сокращения нет желания, и проверять напечатанный текст, когда он пять раз меняет раскладку тоже желания нет. Сигнализатор звуком смены раскладки использовать не могу, ночью. В общем он у меня ассоциируется с рандомом, сколько исправляет столько же и портит.

С арум свичер подругому. Если начал печатать неправильно то весть текст неправильный, и одним кликом исправление, без проверки отдельных слов, ведь русские становятся английскими, английские - русскими. Исправляет капслок.
 
Автор
CreatoR

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,665
Репутация
2,463
Народ, если вы не заметили, в названии утилиты есть Simple (что означает в переводе с английского «Простой»), в этом и была вся задумка, поэтому такой же «Simple» эта утилита и останется.
Я нигде не писал что утилита притендует на что либо, е функционал минимален, и никакие режимы в неё добавлять смысла нет, для этого уже есть куча аналогов.


Добавлено:
Сообщение автоматически объединено:

Yashied [?]
Программа не работает со смешенным текстом?
Там ошибка в проверке StringIsASCII($sText), проверяет весь текст, а нужно текущий символ (StringIsASCII($aSplitTextArr[$i])).
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
622
Немного оффтопа на тему Punto Switcher:

Там кажись есть функция, отключения автопереключения на нужных приложениях, либо выставления функции автопереключения по горячим клавишам. Аля qip.
Я к тому, что это не дело осуждать что-либо попробовав пару мгновений и решив что неудобно. Ведь, как правило, даже в самых простых приложения есть такое понятие как опции, которые можно менять и выставлять так, как удобно
 

AZJIO

Меценат
Меценат
Сообщения
2,757
Репутация
1,151
CreatoR [?]
Цитата
твою утилиту запустить не удалось
В чём проблема? (утилита кстати работает в тихом режиме).
Разгадал в чём проблема, у меня раскладка по умолчанию русская и нужно указывать горячие клавиши в русских буквах. Теперь увидел, как работает.

В базе отсутствуют символы которые на цифрах 2-7 в верхнем регистре.
 
Верх