• Aptana Zen Coding v0.1 (beta)

    Выпустил первую бета-версию Aptana Zen Coding. Хватайте ее с сайта проекта на Google Code. Там же есть краткая документация по установке и настройке (более полную версию сейчас пишет Вадим).

    Все возможности, а также некоторые новые фичи показаны на скринкасте:

    Видео в хорошем качестве

    Метки: , ,
  • 37 комментариев

    1. 7 апреля 2009

      Лично у меня большая часть времени уходит не на набивку кода, а на подумать что собственно набивать будем 🙂 Но все равно клевая штука, обязательно себе поставлю. Если что-то можно оптимизировать, то я за то, чтобы это оптимизировать 🙂

    2. Сергей Чикуенок
      7 апреля 2009

      Да, тут определенно требуется привыкание. Я сам еще не освоился с таким набором кода, но чувствую, что потенциал в этом определенно есть.

    3. Иван Шорников
      7 апреля 2009

      Круто! Можно будет описывать чуть ли не весь layout сайта одной, двумя строчками 🙂

    4. Сергей Чикуенок
      7 апреля 2009

      Ммм, предлагаю устроить соревнования с ценными призами на то, кто быстрее сверстает страницу с помощью Zen Coding 🙂 Готов даже проспонсировать эти призы.

    5. Иван Шорников
      7 апреля 2009

      И ещё очень удобно хранить какую-нибудь стандартную вёрстку.
      Вот эти три строчки — это шаблон с тремя колонками, а вот эти пять строчек — галерея картинок 🙂

    6. remal
      7 апреля 2009

      Круто! Но очень хотелось бы тоже самое для Notepad++

    7. Сергей Чикуенок
      7 апреля 2009

      Сейчас планируется сделать порт этого скрипта на Python (для TextMate, Coda, etc.). Если кно-нибудь напишет простенький плагин к NP++, который будет отдавать текущую строчку (или выделение) но внешний скрипт, а потом заменять ее на результат работы скрипта, то будет поддержка и Notepad++

    8. Аркатов Дмитрий
      7 апреля 2009

      Жаль, что в начале строки не срабатывает замена.

    9. Сергей Чикуенок
      7 апреля 2009

      А можете пример показать? Если что, там можно выделить нужный фрагмент и вызвать Expand Abbreviation

    10. Аркатов Дмитрий
      7 апреля 2009

      Пример строк:
      style — alt+e не сработает
      [таб или пробел]style — alt+e сработает

    11. Аркатов Дмитрий
      7 апреля 2009

      Но если выделить слово и нажать alt+e, тогда сработает в обеих случаях.

    12. Сергей Чикуенок
      7 апреля 2009

      Исправил баг. Обновите, пожалуйста, скрипт lib/core.js из SVN.

    13. kulikov.dm
      8 апреля 2009

      адрисьпипительная штука! макросы в эклипсе, да и еще так просто и понятно реализованные — это то что нужно.

      может заменить:
      — 366. return zen_settings.html.expandos[tag_name] || str;
      + 366. return zen_settings.html.expandos[Tag.getRealName(tag_name)] || str;

      для того, чтобы работало вот так: bq+, ну или, например tbl+
      мелочь, но приятно 🙂

    14. kulikov.dm
      8 апреля 2009

      пока копался появился еще один вопрос:

      21. if (partition != ‘text/html’ && partition != ‘text/xml’) {
      что прохого в том, чтобы разрешить выполнять скрипт в любом редакторе? не вижу минусов.

    15. kulikov.dm
      8 апреля 2009

      боюсь показаться навязчивым, но все же добавлю

      сейчас разворачиваемые элементы должны замыкать аббревиатуру
      т.е. вот так сработает div>dl+
      а вот так div>dl+>span уже нет. а жаль 😉
      тут в принципе все просто, есть только одно но. не получится использовать символ + для определения разворачиваемых тегов, т.к. + используется для построения «братских» элементов. можно заменить + на что-нибудь другое, например на 2 плюса: div>dl++>span, ну или на какой-нибудь %. мне два плюcа в принципе нравится

      — abbr = abbr.replace(/([a-z][a-z0-9]*)+$/i, function(str, tag_name) {
      + abbr = abbr.replace(/([a-z][a-z0-9]*)+{2}/gi, function(str, tag_name) {

    16. Сергей Чикуенок
      8 апреля 2009

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

      Для остальных редакторов будет свой набор инструкций, пока это не готово.

      А в остальном: ребята, давайте не будем превращать Zen Coding в новый мета-язык для написания страниц одной строчкой кода 🙂 Поверьте, вы гораздо быстрее напишете 3—4 простые аббревиатуры, нежели одну, но сложную. Все эти нововведения вызовут больше вопросов, чем дадут пользы.

      Вот например:
      a.item*5:first — класс добавится только первому элементу или всем?
      a*5:first+span — span добавится после первого элемента или после всех?

      Может, pepelsbey одобрит и опишет такие нововведения, но лично мне они не нравятся. Хотя идея с expandos внутри аббревиатуры, в принципе, ничего.

    17. kulikov.dm
      8 апреля 2009

      вобщем к шести утра я дописал атрибуты a[href=»ya.ru»], фильтры div>a*5:first>strong и все то, о чем писал выше. кому интересно — все в svn: http://code.google.com/p/kulikov-dm/source/browse/trunk/lib/

    18. h1
      8 апреля 2009

      Все просто замечательно, спасибо.
      Хотелось бы иметь возможность возвратиться по иерархии тэгов на предыдущий уровень, примерно так как это делается функцией end() в jquery

      В качестве символа возврата к предыдущему элементу можно использовать ‘;’
      div#wrap>div#left;>div#right

      Как вариант, можно оформить элементы в виде списка:
      div#wrap>{div#left,div#right}

    19. 9 апреля 2009

      Это просто великолепно. Надо будет попробовать Eclipse. А простые бандлы можно в нем создавать?

    20. Сергей Чикуенок
      9 апреля 2009

      Что вы подразумеваете под простыми бандлами?

    21. 9 апреля 2009

      tdn -> text-decoration:none;

    22. Сергей Чикуенок
      9 апреля 2009

      Поддержка CSS будет в следующей версии.

    23. Артур Бурцев
      10 апреля 2009

      Спасибо за проделанную работу, подобного функционала очень не хватало аптане.
      Но у меня лично весь день ушёл на то, чтобы это установить, с другой стороны пересобрал еклипс, что несомненно плюс ( хотябы потому, что aptana стала меньше тупить на больших файлах ).
      Дело в том, что у меня не полный пакет плагинов аптаны к еклипсу, а только редакторы, поэтому eclipse monkey там не наблюдалось.
      Опишу здесь процесс установки — вдруг комунибудь будет полезно.
      Eclipse monkey шёл в комплекте с eclipse 3.3, а вот в 3.4 его упразднили, так же что-то неладное сделали и с dash project, в составе которого существовал eclipse monkey, поэтому найти его у меня не получилось, но я его вытянул из аптаны ( просто все файлы из папок plugins и futures в названии которых встречается monkey + файл com.aptana.ide.scripting_1.2.5.023247.jar ) и подключил в виде плагина, как описано здесь http://izenfire.blogspot.com/2008/09/eclipse.html.
      Таким образом получился пунтк меню Scripts и можно подключать Zen Coding, как описано в википедии, но он ещё не заработает, ругаясь на строчку
      * DOM: http://localhost/com.aptana.ide.scripting
      в файле Expand Abbreviation.js, поэтому её заменил на
      * DOM: window
      и с завтрашнего дня буду наслаждаться жизнью с Zen Coding)

    24. 10 апреля 2009

      Собственно, очень против превращения Zen Coding в своеобразный ассемблер. Суть таких трансформаций была в простоте и интуитивности. Знаешь CSS? Значит сможешь писать и HTML в таком стиле.

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

    25. kulikov.dm
      11 апреля 2009

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

      а на практике самой используемой штукой оказались сниппеты. наделал разных сокращений. причем не только для html-css, но и для популярных smarty-конструкций, а также для некоторых javascript’овых выражений. особенно удобно со смартями получилось.

      ладно, поживем увидим насколько оно приживется.

    26. 11 апреля 2009

      Спасибо, буду использовать

    27. 12 апреля 2009

      Сергей, подскажи пожалуйста, можно ли вместо alt+e использовать F12 к примеру?
      Просмотрел http://aptana.com/docs/index.php/Adding_metadata_to_an_Eclipse_Monkey_script
      Похоже для в качестве хоткеев можно использовать только в сочетании с

      * M1 (Command or Ctrl)
      * M2 (Shift)
      * M3 (Option or Alt)
      * M4 (Ctrl on Mac)

      Или все-таки есть возможность работы скрипта по нажатию F12 (было бы удобнее жать чем alt+e)

    28. kulikov.dm
      12 апреля 2009
    29. Vii
      13 апреля 2009

      а как на счет добавления атрибутов к элементам на подобии

      div#hd>h1.logo>a[href=»»][title=»»]

    30. Сергей Чикуенок
      13 апреля 2009

      Этого не будет. Я и Вадим уже написали почему. Но вы можете создать либо новую аббревиатуру, либо синоним (short_tags) элемента и указать ему атрибуты по умолчанию.

    31. 26 апреля 2009

      Для xslt бы такую штуку.
      Или он для шаблонов уже не модный?

    32. Сергей Чикуенок
      26 апреля 2009

      Для xslt бы такую штуку.

      Изначально так и задумывалось, но у меня возникли проблемы с WTP-редакторами. Если удастся решить их — будет и для XSLT.

    33. knopkin
      10 мая 2009

      А какую из 5 ссылок качать надо?

      ЗЫ. поправьте форума эту, глаза сломать можно шрифт мелкий при наборе

    34. Сергей Чикуенок
      10 мая 2009

      Zen.Coding.любимый_редактор.версия.zip

    35. Charly
      29 июля 2009

      При установке Аптаны на Эклипс подсветка редактора аптаны в HTML — красно-синяя. На Ваших видео совсем другое. Это как-то можно поменять в настройках? Чтобы цвета остались от стандартного редактора Эклипса или Вы просто импортировали либо указали свой набор цветов? 🙂

    36. Сергей Чикуенок
      29 июля 2009

      Я сделал свой набор цветов. Можете им воспользоваться.

    37. Роман
      24 ноября 2009

      Я так и не понял как подключить zencoding к aptana.

      Получается, что без установки eclipse нельзя поставить zen?
      А зачем мне ставить eclipse, если мне нужна только верстка? >___<