From Novosibirsk, Russia? Our tiny company is looking for current or future rock-star developers.

Showing posts with label eclipse. Show all posts
Showing posts with label eclipse. Show all posts

February 15, 2009

ProjectSync 1.2

Мы опубликовали ProjectSync — Eclipse-плагин, который синхронизирует папки на диске с Working Set'ами в Eclipse'е. Он автоматически импортирует недостающие проекты, а также автоматически перемещает вновь созданные проекты в нужную директорию (согласно их Working Set'у).

Особенно это удобно, когда ваши проекты лежат в нескольких репозиториях: без ProjectSync при создании нового проекта приходится руками указывать, куда его положить, а при появлении нового проекта в репозитории — руками его импортировать. (Не говоря о том, что новый пустой workspace теперь заполнять в разы быстрее.)

ProjectSync ничего не делает за вашей спиной и не тормозит Eclipse; синхронизация активируется пунктом в меню Project.

Последнюю версию 1.2.1 можно взять со странички www.yoursway.com/free/ProjectSync/. Проверен на Eclipse 3.4 и Eclipse 3.5 M5. На Eclipse 3.3, скорее всего, тоже работает.

Там же есть ссылки на сорцы, баг-трекер, лицензию (EPL) и способы получения техподдержки.

July 26, 2007

HTML completion

Задача: вычислить HTML-теги, которые могут быть вложены в данный.

Решение.

1. Описываем все теги в виде набора Java-классов, по одному классу на тег.

2. Учим эти Java-классы генерировать куски DTD, описыающие соответствующие теги.

Пусть теперь известна иерархия родительских тегов в документе, и нужно выяснить, какие дети в них могут встречаться.

3. Для всех возможных HTML-тегов повторять шаги 4-6:

4. Сгенерировать куски DTD для всех родительских тегов и кусок, описывающий вложенность текущего тега в родительские. (Какая именно строчка для этого генерится, я не разбирался. Судя по всему, дублирующееся описание родительского тега.)

5. Скормить полученный набор кусков (в виде массива строк) кастомному DTD-валидатору, специально предназначенному для данной задачи.

6. Если валидатор не выдал ошибку, то добавить текущий тег в список возможных детей.

Да здравствует Eclipse Web Tools Project! Индусы — вот implementation detail компании IBM.