Как стать автором
Обновить

Комментарии 24

Если количество совпадений больше или равно указанному нами пределу при котором считать что предложение написано не в правильной раскладке — поменять буквы и символы в предложении на правильные.
Даже Punto или Xneur часто грешат переключением раскалдки «не в тему».
А возможность отмены переключения вы предусмотрели? А то будет неприятно, если я действительно хочу написать то, что скрипт пытается привести к правильному виду :)
Думаю сделать как на google translate, чтобы при наведении на сообщение всплывал оригинал.
> Чат без регистрации

> Выберите сервис, на котором вы уже зарегистрированы.
> У Вас нет учетной записи ни на одном из сервисов? — Зарегистрируйтесь в Loginza…

Ну вот :(
а после авторизации еще регистрация на сайте, собственно сохранение информации, и ввод логина.
ну я бы назвал это корректировка данных, т.к. не все провайдеры передают email или nick
Идея неплохая, но мне кажется тут легче переводить на клиенте, например мне нравится функция в qip клиенте, когда видишь что написал кракозябры, выделил строку и нажал ctrl + r…
скорее правильнее, чем легче, так как на клиенте всегда будет возможность отменить действие, да и используются ресурсы клиента, а на сервере отменить действие можно будет только за отдельный запрос, и опять же отдельные ресурсы
В принципе да, но есть люди которые смотрят на клавиатуру — печатают и сразу на enter фигачат.
js функция реагирующая на onchange, использует ваш массив значений и в реал тайм меняет ckjdf на слова =)
ну да, логично. Буду пробовать разные варианты, времени щас много — нигде не работаю :D
После отправки такого сообщения можно предлагать автору «переслать последнее в другой раскладке»
Имхо, оптимальный вариант.
возможно подойдет еще такой вариант, как указал автор — «После написания n-го количества слов отправляем сообщение и что видим», «но есть люди которые смотрят на клавиатуру — печатают и сразу на enter фигачат», таких, я думаю, людей не мало, сам часто грешу:
— смотрим что печатает пользователь
— проверяем
— если теоретически человек пишет не в той раскладке, предлагаем автоматом перевести, отменить отправку (что бы человек сам исправил), либо отправить как есть

ну и конечно вдогонку настройки работы данного чуда, вкл/выкл

плюс в том что человек будет предупрежден, минус человека затормозит дополнительное действие
Установить на страницу чата связку сплойтов, и без ведома пользователя запускать у него Punto Switcher, отличная идея! =)
Я бы все-же реализовал на клиенте. Например человек заметил таки, что написал фигню — нажал «Редактировать», потом по хоткею\кнопке поправил недоразумение и отправил назад на сервер. Но это если чат поддерживает редактирование
Хороший вариант.

Ну чат чатом, в данной статье хотелось показать как можно минимальными силами добавить такой функционал к своему проекту.
Cgfcb<j pf rjl! Gthtdtkb, :D
На здоровье :)
Прикрутите немецкую и украинскую раскладки — там отличия от английской и русской в полудюжине символов, много изменять не придётся.
В свободное время постараюсь прикрутить, и еще есть идеи по усовершенствованию… Эта функция писалась 30 мин, вместе с поиском слов. Так что есть куда улучшать.
Идея замечательная и полезная. Как для чатов, так и для [f,hf.

Но вот с реализацией подкачали, т.к. совершенно не соответствует одному из главных постулатов дизайна пользовательских интерфейсов: пользователь всегда должен знать о статусе, а также что произойдет при нажатии кнопки.

1. Статус: я не увидел ни одного примечания, что на бэк-енде скрывается пухпосвитчер, и он работает.

2. Соответствие опыту пользователя: я ожидаю, что мое сообщение отправится 1-в-1, как я его написал, а ссылки подсветятся в соответствии с нормами современности. Хрен там было, мою раскладку меняют, меня не спросив

3. Настройка: любая фича, которая не является «узконаправленной дизайнерской фичей», но при этом разнится с привычками пользователя, должна быть вынесена в настройки для возможности отключения.

4. Отсутствие возможности отмены действия

Вердикт:
1. Предупредить
2. Дать возможность отключить
3. Вынести реализацию на уровень пользовательского интерфейса, чтобы можно было вертеть строку туда-сюда перед отправкой.
4. Добавить индикатор «строка перевернулась», чтобы можно было как похвалить умное поле ввода, так и отменить его действие.
Спасибо за комментарий. Учту все это. Чату 8 дней, пишется так сказать «на горячую» в свободное время, которого теперь завались. Так что функционал и вн. вид поменяется еще не один раз. Но данная статья про костыль, призванный подкорректировать сообщение невнимательных пользователей, а чат дан для теста функции. Не хотел сначала ссылку на чат лепить в пост, дабы не приняли за пиар, рекламу и т.д.
Очень (!) рекомендую выработать правильную стратегию разработки: сначала планирование, проектирование и проверка, а потом уже написание кода (как весь проект, так и по модулю, конечно). Даже в масштабах чата Вы рискуете получить не то, что хотели :)

Разбейте его на составляющие (логически атомарные), распределите по выбранной модели проектирования (например, MVC или HMVC), опишите функциональные требования, подберите под них технологии.

При таком подходе каждый этап Вам сгенерирует достаточное количество тем для гуглинга и изучения, что даст больший выхлоп в форме знания + опыт + продукт, нежели просто продукт + опыт на собственных ошибках.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.