Плагины Thunderbird
Два дня писал плагин к Thunderbird (почтовый клиент на Gecko), получил level up. Документация скудная, разбросана по куче сайтов, часто приходится читать XUL-исходники интерфейса Thunderbird. А я ещё ругал документацию на Python…
Не то, чтобы я сходу сейчас напишу любой плагин, но знаю как всё устроено, умею биндить пункты меню, обращаться к заголовкам (в т.ч. нестандартным), обращаться с панелью письма и умею делать ещё дюжину разных трюков. Не дошли пока руки разобраться с довольно простой вещью — как делать локализацию. Кажется всё достаточно просто, но пока не взлетело.
а чем документация на питон не нравится? :) docs.python.org и всех проблем ;)
Комментарий для playpausenstop.livejournal.com:
Тем, что там ничего не найдёшь толком. Документация — это я не знаю как, а она мне помогает найти как. А эта «документация» старательно от меня всё прячет.
Я думаю тебе стоит потом описать полученный опыт :)
У Mozilla нет отдельной документации к каждому из продуктов, есть общая документация по XUL и XPCOM. В большинстве случаев для поиска информации достаточно двух сайтов: http://www.xulplanet.com/ и http://developer.mozilla.org/. Документации довольно много, но вот, например, самые древние интерфейсы XPCOM, действительно, практически не документированы.
А локализация это действительно просто. Для каждого языка создаётся набор DTD-файлов с описаниями entity. Потом эти entity используются внутри XUL-файлов вместо текста.
Комментарий для drucha.livejournal.com:
Книги не хватит :)
Комментарий для dionys.myopenid.com:
Про entity я знаю. Не заработало.
Комментарий для Евгения Степанищева:
А в chrome.manifest про локали написал? В XUL-файлы DOCTYPE правильный добавил?
Комментарий для dionys.myopenid.com:
В chrome.manifest написал, да. Правильный DOCTYPE в XUL-файле — это какой? Типа такого?
<!DOCTYPE window [
<!ENTITY % someDTD SYSTEM «chrome://messagefaces/locale/some.dtd» >
%someDTD;
]>
Комментарий для Евгения Степанищева:
Всё так. Если не работает, то без изучения поделки ничего больше подсказать не могу.
Комментарий для dionys.myopenid.com:
Ну вот и я не могу, но наружу выложить не могу, разберусь ещё.