Новый год начался с третьей попытки пересесть с Chrome на Safari (в 2 часа ночи 1 января). Естественным образом пошел за расширениями и, с печалью посмотрев на имеющиеся сокращалки урлов, решил повеселиться и написать свое.
Акт 1. Подготовка
Читал доки, смотрел видео с WWDC 2010 и 2011. Все осложнялось моими никудышными знаниями html + css + js, но от это только подогревало интерес.
Акт 2. Основа
Примерно за день накидал саму сокращалку - жмешь на кнопку, получаешь ссылку. Дел там на час максимум, но не все шло гладко. Да и за всякими примитивностями по части js лазил на Stackoverflow.
Когда внешний вид под Mac меня удовлетворил, я пошел посмотреть как все смотрится на винде и очень порадовался увиденному:
![]() |
| Занес верстку под винду в список багов и поехал дальше |
Акт 3. Горячие клавиши
Быстро нашел способ имплементации (через встраиваемый в просматриваемые страницы код), но тут началось странное - никак не хотела работать пересылка сообщений из встраиваемого кода в general page. Час долбаний ни к чему не привел, я решил заняться этим потом, как вдруг на одной из страниц вылез дебажный алерт, говорящий, что сообщение дошло-таки.
Для надежности стал удалять/ставить расширение (простая перезагрузка не спасала), чтобы не было странностей с сообщениями. Помогло :)
Акт 4. История
Использовал html5 local storage для хранения. Поставил лимит на количество хранимых ссылок. Ничего интересного, но:
1. Теперь не надо ждать при повторных сокращениях ссылок
2. Готова почва для history UI
Финальная сцена. ToDo list.
– Просмотр истории
– Настройка комбинации клавиш
– Очистка истории в настройках
– Баг с версткой в винде
– Баг с пиканьем комбинации клавиш
– Улучшить внешний вид
Эпилог
Основная работа сделана. Живет все на Github. Результатом уже пользуюсь (большей частью на работе) - вот и обильное тестирование. Дальнейшие улучшения оставил для холодных одиноких зимних вечеров.

