"Сообщество открытых источников"
Dec. 3rd, 2005 02:51 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
А еще вчера утром мы с Чукчей ездили на борландовский семинар, посвященный релизу Delphi 2006 (точнее, Borland Developer Studio, включающей Delphi, C++ Builder и C# Builder). Пожалуй, по сравнению с Delphi 3, который /me успел еще погонять, эта версия (10, соответственно) производит куда более серьезное впечатление. Особенно радуют всякие мелочи вроде встроенного контроля версий участков кода (если я правильно понял эту идею), системы отслеживания memory-leak'ов в Builder'е и скриптуемых design-time шаблонов (LiveTemplates), которые, судя по всему, достаточно мощны. Почему-то ничего не было сказано про генерацию документации (что, неужто так и нету??), а сборка приложений все еще осуществляется через bat-файлы (полноценный build-configuration David I пообещал в следующей версии)
Что-то в последнее время я все чаще убеждаюсь, что при всех удобствах vim'a таких возможностей у него нет, да и прикрутить их не так уж и просто. А ведь есть и такие, которые помогли бы при программировании под невинду.
И еще. Страна остро нуждается в грамотных переводчиках. Товарищ, который переводил доклад вице-президента Borland, был, мягко говоря, не в теме. На самом деле он не только не знал терминологии ("А делимитатор по умолчанию - значок доллара" и "Сообщество открытых источников"), но и не был знаком с ситуацией в индустрии (перевести "InterBase" как "Какая-нибудь база данных", а потом заявить, что "По специальному соглашению Borland предоставляет код VCL для разработчиков CLX"). Финишем была игра в "испорченный телефон" во время вопросов. Сидишь и смотришь, как человек задает один вопрос, а отвечают ему на другой, потому что переводчик такой ас. Низачот, в общем. "One ball away" (c), как высказался Чукча.
Что-то в последнее время я все чаще убеждаюсь, что при всех удобствах vim'a таких возможностей у него нет, да и прикрутить их не так уж и просто. А ведь есть и такие, которые помогли бы при программировании под невинду.
И еще. Страна остро нуждается в грамотных переводчиках. Товарищ, который переводил доклад вице-президента Borland, был, мягко говоря, не в теме. На самом деле он не только не знал терминологии ("А делимитатор по умолчанию - значок доллара" и "Сообщество открытых источников"), но и не был знаком с ситуацией в индустрии (перевести "InterBase" как "Какая-нибудь база данных", а потом заявить, что "По специальному соглашению Borland предоставляет код VCL для разработчиков CLX"). Финишем была игра в "испорченный телефон" во время вопросов. Сидишь и смотришь, как человек задает один вопрос, а отвечают ему на другой, потому что переводчик такой ас. Низачот, в общем. "One ball away" (c), как высказался Чукча.
no subject
Date: 2005-12-03 12:30 am (UTC)no subject
Date: 2005-12-04 09:02 am (UTC)no subject
Date: 2005-12-03 12:36 am (UTC)“Не советую, молодой человек, съедят”
Так что ты потише с такими просветлениями
no subject
Date: 2005-12-03 01:12 am (UTC)no subject
Date: 2005-12-03 04:25 pm (UTC)no subject
Date: 2005-12-04 11:20 am (UTC)no subject
Date: 2005-12-03 08:41 am (UTC)А грамотные переводчики - это да. Терминологию знать надо.
no subject
Date: 2005-12-04 11:17 am (UTC)no subject
Date: 2005-12-04 12:05 pm (UTC)ВЫПЛЮНЬ БЯКУ!
Date: 2005-12-03 02:53 pm (UTC)Назови, пожалуйста.
no subject
Date: 2005-12-03 02:54 pm (UTC)Re: ВЫПЛЮНЬ БЯКУ!
Date: 2005-12-04 10:43 am (UTC)no subject
Date: 2005-12-04 02:19 pm (UTC)Re: ВЫПЛЮНЬ БЯКУ!
Date: 2005-12-04 11:11 am (UTC)Есть еще интеграция с дебаггером, хотя это скорее свойство среды, чем редактора.
Индикатор изменения блоков кода, показывающий, какие блоки ты редактировал после сохранения (ИМХО страшно удобно. И даже прикручиваемо, пожалуй)
Дерево версий этих самых блоков кода. (Объективно это не так уж и здорово, ИМХО. Контролировать версии целого файла лучше).
Список файлов проекта и зависимостей между ними.
ctags. Точнее, что-то, что работало бы по-человечески, пускай оно и не называлось бы ctags. А еще возможность получения информации об объекте под курсором (функции, структуре etc) в виде какой-нить подсказки. И дерево свойств объектов, по которому можно было бы прыгать.
LiveTemplates. David I показывал их на примерах.
1. case (который switch): ты пишешь "case", чего-то нажимаешь и получаепь форму "case e of ... endcase". После редактирования выражения e оно определяет его тип, и если это оказывается enum, то подставляет в case все возможные значения.
2. for: пишешь for, снова чего-то жмешь и получаешь форму "for I := .. to .. do begin ... end". После того, как все значения подставлены, редактор проверяет, объявлена ли переменная цикла, и добавляет ее при необходимости.
Познаваемость этого всего. Окей, пускай вим это умеет *. Но делает * он неочеидными способами.
По поводу сложности прокручивания - IMNSHO сложность не в том, чтобы это запрограммировать, а в том, чтобы от такого количества наворотов консольное окошко не затрещало и не развалилось. Все-таки неудобно писать в окне, обвешанном со всех углов дополнительными наворотами. А делать их в отдельных окнах, боюсь, не позволят возможности вима связываться со внешними программами.
no subject
Date: 2005-12-04 02:17 pm (UTC)Интеграция с дебаггером есть, разумеется. Просто я этим не пользовался. (Если нету в чистом виде, есть в виде плугина, я не помню точно, но натыкался однозначно, и не раз)
Индикатор изменения кусков кода. Думаю, diffsplit можно заставить делать именно это (кажется, у него даже есть один специальный usecase для того, чтобы диффить с собой).
. Если бы я вообще понимал, что под этим подразумевается, может и ответил бы. Но скорее я всё равно не знаю. 1. :help. 2. гугель, а точнее, поиск на vim.org.
. Снова не понимаю, что это такое.
Я не верю, что этого не сделали. Кажется, даже где-то на такие плугины натыкался. Но снова, не знаю.
. Ну, материться не надо, да? Ты в курсе, что в VI (не в VIM, а ещё в VI) есть макросы, да? И языковые макросы. А в VIM ещё autocompletion есть. То есть если ты не найдёшь плугина, который будет делать именно то, именно в таком виде, то добиться того же результата минимумом усилий можно несколькими разными путями.
. Такого почти наверняка нету.
. Каждая среда имеет свою парадигму. Если бы ты потрудился познакомиться с парадигмой поиска решений vim, эти способы были бы для тебя далеко не так неочевидны.
Вообще, я сам говорил, что мне vim не нравится именно своей непознаваемостью.
Но дело в том, что половину из этих идей тебе навязали маркетоиды и тебе кажется, что иначе нельзя. Например, тебе кажется, что нельзя в vim сделать дерево файлов, поскольку это будет неудобно из-за того, что всё в одном окне – а ты видел, как выглядит файловый броузер в vim? По-моему, вполне читаемо. Может его и можно было бы сделать покрасивее, но это мелочи всё-таки на мой вкус. Процессу он не мешает – вот, что главное.
Соответственно, из фич, которые ты перечислил, те, которые действительно полезны и при этом всё-таки обобщимы на редактирование любых текстов, в vim уж точно есть, хотя может совсем в непривычном для тебя виде. А тех вещей, которые порождены самой гуёвой средой, нету. (Я говорю не о тех пунктах, которые ты перечислил, а об их свойствах, на которые все говорят, что "оно же не так выглядит" приблизительно).
no subject
Date: 2005-12-04 02:49 pm (UTC)По поводу навязанных идей - я уже давненько не пользуюсь никакими IDE, так что уж и не знаю, что мне там могли навязать маркетоиды. Так что мне важно не то, что "иначе нельзя", а то, что "можно и так". Эти идеи все-таки как минимум не усложняют процесс разработки.
no subject
Date: 2005-12-04 02:56 pm (UTC)Re: ВЫПЛЮНЬ БЯКУ!
Date: 2005-12-04 02:42 pm (UTC)