Избранное

Позднее Ctrl + ↑

Красный курсор для русского языка

Когда-то Артём изобрёл отличный способ индикации текущей раскладки: красить текстовый курсор в тот или иной цвет.

Я пытался реализовать такую штуку под Виндоусом, но, насколько я понял, там текстовый курсор на уровне системы вообще не имеет цвета, то есть, чтобы это реализовать, пришлось бы, натурально, рисовать поверх настоящего курсора своё «окно» размером с палку курсора, и мигать этим окном, подстраиваясь под выбранную в системе частоту мигания курсором. Проще застрелиться, чем даже пытаться написать такое заведомо кривое и глючное приложение.

С тех пор, как я переехал на Мак, я не без удовольствия ковыряюсь в местных средствах разработки. Постепенно я научился: отслеживать момент смены раскладки клавиатуры; изменять цвет курсора в текстовом поле моей программы, определять текущее «ключевое» (т. е. отвечающее за обработку клавиатурных событий) окно приложения, определять текущую раскладку клавиатуры.

Оставалось только научиться встраиваться в чужие приложения и находить там текущий активный контрол. Я начитался документации и понял, что моей программе нужно стать инпутменеджером, то есть приложением, посредством которого производится текстовый ввод (это АПИ, видимо, сделано для организации всяких альтернативных способов ввода). Поскольку инпутменеджер — это, по сути, совершенно любой твой код, который выполняется от имени любого другого приложения (и, соответственно, с его правами), то это как бы опасная штука. Вроде как в Тигре даже был какой-то вирус, использовавший этот механизм, поэтому в Леопарде к инпутменеджерам стали предъявляться сверхстрогие требования.

С помощью интернета и Славы Карпенко я разобрался с тем, как сделать и установить инпутменеджером собственный бандл (connecting the dots!) и сделал пруф-оф-концептовый инпутменеджер, реализующий идею Артёма. Он далёк от совершенства:

  1. Работает только в Какао-приложениях (Мейл, Адрес-бук; Адиум, Скайп; системное меню Спотлайта...), но не работает в Карбон-приложениях (Айтюнс, Файндер, весь Адоби). С одной стороны, в Снежном барсе все родные приложения должны будут перейти на Какао. С другой, нельзя исключать, что поддержку инпутменеджеров прибьют.
  2. Работает только в стандартных текстовых полях. Например, в поле комментариев в браузере работать не станет. В поле написания письма в мейле тоже не заработает, так как там тоже используется какой-то контрол на базе WebView (потому что там можно писать ХТМЛ-письма и вставлять туда атачи).
  3. Использует таймер, чтобы не пропустить момент, когда человек переходит из одного текстового поля в другое (ловить activeConversationChanged:toNewConversation: у меня пока не получается).
  4. Не исключено, что он где-нибудь «течёт» (берёт память и не освобождает потом) — я не очень силён в таком хардкорном программировании, поэтому мог упустить что-то. Учитывая, что он выполняется в чужих приложениях, а не сам по себе, масштаб бедствия (если оно есть) существенно увеличивается. Ну, а если он течёт в том коде, который выполняется по таймеру, то всё вообще очень плохо.
  5. Он тупо красит курсор в красный цвет, если среди поддерживаемых текущей раскладкой языков не встречается английский, то есть никакой настройки раскладок/цветов нет.

Он называется Lipstick (LIP — это как бы Language Insertion Point, ну, или, Layout, или Locale). Чтобы установить его, нужно:

  1. Скачать архив.
  2. Создать в /Library/InputManagers (именно в корне!) папку Lipstick
  3. Кинуть туда оба файла (инфо и бандл) из архива.
  4. Сказать терминалу (ввести пароль при необходимости):
    sudo chown -R root:admin /Library/InputManagers
    sudo chmod -R 555 /Library/InputManagers

В каждом Какао-приложении он заработает после его перезапуска (перезапускать систему, по крайней мере, Леопард, не нужно). Спотлайт в правом верхнем углу можно перезапустить так:

killall Spotlight

Картинка:

Липстик в почте

Если какое-нибудь приложение начнёт тормозить или падать в неположенном месте, вполне может быть, что это из-за Липстика. Чтобы его выключить, просто уберите Lipstick из папки /Library/InputManagers и перезапустите соответствующее приложение.

Всё, что вы делаете, вы делаете на свой страх и риск, за возможный взрыв вашего компьютера я не несу ответственности. Но — с интересом послушаю ваш рассказ об этом.

Работы ограждения

ТСЖ навтыкало под дворники машинам, стоящим вдоль забора, объявлений:

Уважаемые автовладельцы! 7 мая 2009 года с 8.00 до 17.00 будут проводиться сварочные работы металлического ограждения. Просим переставить автомобиль на другое место.

Хочется плакать. Сварочные работы металлического ограждения! Я не понимаю, как люди могут до такой степени не уметь говорить на родном языке. Мозги же должны совсем засохнуть, чтобы стали получаться такие фразы. И я ещё удивляюсь, что никто деепричастными оборотами пользоваться не умеет. Ёлки, да тут взрослые люди простое предложение составить не могут!

А по двору дети гуляют, читают эти бумажки.

Склоняю числительные

Так вышло, что мне нужно сделать небольшой тест по русскому языку и отправить его по почте на соответствующую кафедру в универе. Склоняю числительные. Чтобы не было сильно скучно, придумываю всякие предложения.

8. Просклоняйте количественное числительное 1245 (книг).

  1. Тысяча двести сорок пять книг стоят на полке.
  2. Тысячи двухсот сорока пяти книг недосчитался библиотекарь.
  3. И тысяче двумстам сорока пяти книгам не рассказать всех несмешных анекдотов!
  4. Уж тысячу двести сорок пять книг прочёл, а всё бестолку.
  5. Тысячью двумястами сорока пятью книгами можно натопить небольшую баню.
  6. О тысяче двухстах сорока пяти книгах мне надоело придумывать дурацкие предложения.

9. Просклоняйте порядковое числительное 3892 (преподавателя).

Если числительное порядковое, то почему «преподавателя»? Видимо, ошибка в тесте. Пришлось склонять сразу и так, и эдак.

  1. Три тысячи восемьсот девяносто два преподавателя пинают плохого студента три тысячи восемьсот девяносто второй раз.
  2. Трёх тысяч восьмисот девяноста двух преподавателей достаточно, чтобы вкрутить лампочку с три тысячи восемьсот девяносто второго раза.
  3. Трём тысячам восьмистам девяноста двум преподавателям пришлось ещё раз дать по башке три тысячи восемьсот девяносто второму (в рейтинге успеваемости) студенту.
  4. Три тысячи восемьсот девяносто двух преподавателей наказали за избиение три тысячи восемьсот девяносто второго (в рейтинге успеваемости) студента.
  5. Тремя тысячами восьмьюстами девяноста двумя преподавателями (в смысле, таким большим составом) можно доехать на работу три тысячи восемьсот девяносто вторым троллейбусом (ПКиО — Юпитер)
  6. О трёх тысячах восьмистах девяноста двух преподавателях можно составить в три тысячи восемьсот девяносто два раза больше бессмысленных предложений, чем о три тысячи восемьсот девяносто втором кабинете главного корпуса (тем более, что такого нет).

Реклама по средам

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

Среди объявлений, оставленных к первомайскому посту, я нашёл несколько интересных, и начну серию с них. Кстати, комментарии там открыты до 14 числа (комментарии ко всем моим заметкам открыты по две недели), поэтому вы по-прежнему можете рассказать о себе. Чем интереснее вы напишете, тем больше у вас шансов попасть в очередную рекламную паузу.

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

А скучные жмоты с Блогуна пускай рекламируют своё никому не нужное говно в блогах неудачников.

Безопасное извлечение устройства

Реймонд Чен затронул тему безопасного извлечения устройства в Виндоусе. Он пишет про то, что продвинутые пользователи жалуются, что в Виндоусе слишком сложно извлекать устройства — надо нажать правой кнопкой на иконку в трее, выбрать «Безопасное извлечение устройства», потом выбрать что-то в сложном древовидном списке и нажать кнопку, и хотят, чтобы в этом меню просто сразу показывали список устройств, которые можно извлечь. Тем временем, продолжает Реймонд, такое меню уже есть, и оно живёт по левой кнопке.

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

Я, будучи продвинутым пользователем Виндоуса, всю жизнь нажимал именно левую кнопку на этой иконке, и потом выбирал устройство прямо в меню (то есть прекрасно знал то, о чём поведал Реймонд). Огромное же количество чайников идут в страшное диалоговое окно и, в общем, делают много лишних действий, и их приходится учить, что нужно нажимать левую кнопку. То есть в жизни всё обстоит на 180 градусов иначе, чем представляет Чен.

Проблема с этой иконкой в том, что помимо левого и правого клика у неё есть ещё и даблклик. Поэтому на левый клик она реагирует долго (нужно время, чтобы убедиться, что это был не даблклик). Этого времени, пока она тупит, вполне достаточно чайнику, чтобы решить, что левый клик не сработал, и попробовать правый или двойной — которые приведут его в идиотское диалоговое окно.

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

Тем временем, на Маке прямо в Файндере в около устройства, которое можно извлечь, отображается соответствующая кнопочка:

Безопасное извлечение устройства на Маке

А если тыкнуть правой кнопкой по иконке, допустим, на рабочем столе, то пункт Eject будет в меню:

Безопасное извлечение устройства на Маке

Кстати, на Винде по правой кнопке к дискам тоже есть вариант «Извлечь», только по загадочным причинам он просто не работает.

Муз-ТВ:2К

В рекламных паузах, помимо счётчика, было ещё много разных крутых крутилок. Но самой угрожающей была крутилка «Муз-ТВ:2К»:

Я бы с удовольствием посмотрел на неё минут 15 подряд, но даже в самых счастливых случаях она крутилась не больше минуты. Эта заставка — одна из тех, которые создавали впечатление, что ты смотришь на что-то очень важное и существенное, а не просто на музыкальный канал с клипами сомнительных звёзд.

Слева там крутятся фрагменты других заставок (включая те, что я уже показал — «Наше», «Шейкер», «Зажигай», «Жизнь прекрасна»).

Музыка здоровская тоже.

Добавлено 23 октября 2020: Ещё вариант с другой музыкой

Муз-ТВ: «Жизнь прекрасна» и «Русские пряники»

Заставки Муз-ТВ, которые я уже показал (раз, два), были чисто компьютерными, без живых людей. Но и роликов с хитрыми наложениями съёмок и компьютерной графики на Муз-ТВ тоже было навалом.

Одной из самых крутых была открывающая заставка программы «Жизнь прекрасна» — та, где, по наблюдению одного моего друга, «Широков стены рвёт»:

Эта заставка — не циклическая. Но 13-минутные блоки эфира никто не отменял, а ведущие ведь не могут закончить фразу секунда в секунду в конце блока, поэтому парой к этой заставке была специальная отдельная крутилка перед рекламой:

А вот — «Русские пряники»:

Где-то они даже показывали сюжет, как это снималось, и Пряников с серьёзным видом доставал из-за спины кусок стекла. Заставка тоже не цикличная, поэтому к ней тоже парой шла предрекламная крутилка:

Кстати, обратите внимание, насколько крутой у Муз-ТВ был логотип в углу!

В следующих выпусках мы посмотрим на несколько универсальных крутилок, не относящихся к конкретной передаче.

Про псевдо-ЧПУ

В западном интернете постепенно тоже начинают понимать, что пользоватям не интересен .aspx и прочий?мусор=в&урлах, и переходить на более короткие и чистые урлы. Однако уже в нескольких местах я заметил кретинистические псевдочеловекопонятные урлы, которые нужно истребить. ПЧПУ — это урлы, в которые наряду с бессмысленной технической шелухой запихивается ещё и человеческая часть. Например, такие урлы сейчас делают на Дискогсе:

Кроме того, что в урле по-прежнему содержится шелуха (1193791), даже человеческая его часть — это обман:

По этому адресу оскорбительно (по отношению к Битлам) лежат «Руки вверх». А если часть, начинающуюся со слова release, стереть, то получим 404. Зачем вводить людей в заблуждение, имитируя нормальные урлы, когда система всё равно кривая и калечная?

Человекопонятный урл — это не просто такой урл, в котором понятно, что написано; должен быть понятен принцип, система формирования урлов, чтобы я мог написать адрес и попасть на нужную страницу, как я это с лёгкостью делаю на Википедии. Если слабо сделать как на Википедии (когда и урлы человеческие, и возможные наложения разрешаются дисамбигуационными страницами), то лучше не заниматься ерундой, а сделать урл хотя бы коротким и оставить просто /1193791.

Муз-ТВ: «Шейкер» и «Зажигай»

Программа «Наше» была одним из музыкальных блоков на Муз-ТВ, наряду с «Шейкером» и «Зажигаем». В «Нашем», как нетрудно догадаться, крутили русские песни.

В «Шейкере» крутилось всё подряд:

Я уже отмечал, что Муз-ТВ очень внимательно эксплуатировало смешение алфавитов, не допуская нечитаемых вариантов.

«Зажигай» шёл по утрам, и, вроде как, способствовал зажиганию:

(Прошу прощения за логотип тупых уродов из «Восточного экспресса», которые считали своим долгом засирать замечательные пиксели Муз-ТВ. Большинство заставок у меня в коллекции снабжены их клеймом.)

Обратите внимание, что все заставки цикличны, то есть они могут длиться сколько угодно времени. Это связано с особым роботизированным подходом Муз-ТВ, где всё эфирное время было поделено на 15-минутные куски, 13 минут из которых шёл «контент», а потом 2 — реклама. Поскольку подобрать 4-5 клипов общей длительностью ровно 13 минут практически невозможно, то заставки передач использовались в качестве заполнителя. Естественно, рекламы ровно на 2 минуты тоже не подберёшь, поэтому в конце рекламных пауз был обратный отсчёт:

Вообще, такой подход к эфиру очень клёво сочетался с общим электронно-вычислительным стилем канала. Особым счастьем для меня было нарваться на момент, когда какая-нибудь заставка крутится аж целую минуту. Это случалось крайне редко.

Ранее Ctrl + ↓