суббота, апреля 17

Skype и "плюшка" - редактирование последнего сообщения

Сегодня рассказ пойдёт про "плюшку" в скайпе под названием "редактирование последнего сообщения"

Часто бывает так, что писал-писал что-то, отправил и видишь, что опечатался. И так и "подмывает" исправить ошибку...
обычно для этого пишут новое коротенькое сообщение по образцу "* текст_поправки". А в скайпе можно просто исправить ошибку ;)

Как это делается?


допустим мы написали фразу "ну могет быть" и решили её исправить на "ну может быть"

нажимаем стрелку вверх и видим, что в редакторе сообщения появилось наше последнее сообщения, а фон редактора стал желтым:

правим наше сообщение и отправляем его снова. В результате в логе разговора сообщение исправится и пометиться "карандашиком", что означает "исправленное":


Что нельзя сделать:
1) удалить сообщение (но можно написать точку и тогда в сообщении останется только точка ;) )
2) редактировать предпоследнее и более ранние сообщения

Что делать можно:
1) Редактировать своё последнее сообщение, даже если вам уже ответили :)
2) Прервать редактирование без внесения правок - достаточно нажать ESC в процессе редактирования (в Linux это работает точно. По слухам, в Windows вместо прерывания редактирования происходит закрытие чата)

ЗЫ: все скриншоты доступны в альбоме "Blogspot:003"



Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

четверг, апреля 15

логические ошибки

"Слепо" доверять интеллектуальным подсказчикам IDE - зло!

простой пример появления логической ошибки:


пишем код:
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length; i++) {
     isAuth = isAuth || cookies[i].getName().equalsIgnoreCase(paramCooikeAuth);
     break;
    }
   }
логическая ошибка - наличие break без условия прерывания. IDE (в данном случае, Eclipse) предлагает удалить "i++", как не требующуюся в цикле (всё равно не будет использована). "Слепо" соглашаемся Чуть позже замечаем ошибку про break и добавляем условие:
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length;) {
     isAuth = isAuth || cookies[i].getName().equalsIgnoreCase(paramCooikeAuth);
     if (isAuth) break;
    }
   }
Но следом получаем вечный цикл for, так как отсутствует счетчик, удалённый ранее! Следствие: прежде чем согласиться на то, что предлагает IDE - подумайте, ПОЧЕМУ он это предлагает, ведь может так оказаться, что ошибка-то совсем не в том месте, где её "видит" IDE! UPD: в конечном итоге код всё равно сократился до (см. ниже), но как говориться, "осадок остался" :)
if (cookies.length != 0) {
    for (int i = 0; i < cookies.length; i++) {
     if (isAuth = cookies[i].getName().equalsIgnoreCase(paramCooikeAuth)) break;
    }
   }

Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

понедельник, апреля 12

Cisco VPN Client в windows 7. решение

Попытка с "наскоку" поставить клиента увенчалась ошибкой и нежеланием оного клиента ставиться...
Краткий сёрф в гугле привёл меня к сией статье, часть которой и приведу сюда в переводе:

Для установки Cisco VPN Client требуется произвести следующий ряд манипуляций:
  • Удалить (если у вас таки установился) Cisco VPN Client
  • Перезагрузиться
  • Установить Citrix DNE Update
  • Перезагрузиться
  • Установить Cisco VPN Client
  • Перезагрузиться

Данное решение рабочее, ибо проверено на себе :)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

воскресенье, апреля 11

Gnome. неправильная ассоциация для каталогов. решение

Так получилось, что решил сделать "как в Windows" - отправить каталог с видео через Nautilus в проигрыватель.
Отправить-то отправил, а вот после этого ВСЕ каталоги стали открываться в этом самом медиа-проигрывателе.

решение простое "до ужаса": в файле ~/.local/share/applications/mimeapps.list удалить строку, начинающуюся с inode/directory

описание файла можно найти на сайте "производителя": http://www.freedesktop.org/wiki/Specifications/mime-actions-spec


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!

thunderbird 3 "ошибка при получении пароля". решение

При очередном запуске Thunderbird 3 в момент получения почты появляется сообщение "Ошибка при получении пароля"
Удаление в профиле файлов key3.db, signons.sqlite, signons.txt и signons3.txt не приводили к нужному результату - сбросу паролей.
В итоге, решение нашлось на Bugzilla.mozilla.org в виде переустановки Thunderbird.

Последовательность действий, которую делал я:
1) удалил Thunderbird 3
2) удалил вышеназванные файлы
3) установил заново Thunderbird 3

В итоге, после запуска программы, получаем "девственно чистый" менеджер паролей

ЗЫ: трабла была в Linux, но решение озвучивалось под Windows ;)


Если вам пригодилась статья, то отправьте 5 рублей автору. Спасибо!