![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| unit0 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 29.7.2004 Репутация: нет Всего: нет |
http://www.treeredactor.narod.ru/ - здесь вы можете скачать первую версию утилиты, предназначенной для редактирования с-файлов.
Особенность этого редактора - это представление всей программы в виде дерева, где узлами являются операторы if, else, for, while, switch, функции, классы - любые языковые конструкции использующие "{}". По идее, это более удобно для редактирования сложных функций с большим числом вложенных операторов if, for, чем работа с текстовым файлом. Мне интересно узнать: что вы думаете, об этой программе и нужно ли сделать аналог для других языков, например Pascal. |
|||
|
||||
| Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 10 Всего: 93 |
Вообще прикольно!
Только ты опоздал чуть-чуть, т.к. в Visual Studio .Net уже такой принцип реализован. Что касается твоей проги, то лучше убрать символы папок и горизонтальные линии, т.к. они загромождают экран. Также немного непривычно выглядит отсутствие символов { и }. Можно ещё добавить возможность сворачивать комментарии между /* и */ На некоторых файлах оно у меня глючило -- выдавало acess-violation при загрузке файла. Редактировать и сохранять я не пробовал. ЗЫ: Тему, наверно, стоит перенести в готовые и разрабатываемые проекты. -------------------- Да. Именно так. |
|||
|
||||
| chipset |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
Там вроде не так чуть-чуть, не древовидная а просто блоки сворачиваются, если что то не правильно понял пардон Хотя я все равно Visual Studio + Visual Assist X ни за какие шиши не променяю.. --------------------
|
||||
|
|||||
| Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 10 Всего: 93 |
chipset
Строго говоря, ты прав, там не древовидная, хотя особой разницы я не вижу -------------------- Да. Именно так. |
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
Дрон
Особой разницы то и нету.. Но вот если хотя бы AutoComplete в unit0'ской проге? Может в версии 2.0 и будет но пока мы будем юзать VS --------------------
|
|||
|
||||
| unit0 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 29.7.2004 Репутация: нет Всего: нет |
В VS можно все блоки сворачивать, или как например в новом Bilder, только функции, классы и т. п, но не if, for ? |
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
![]() Все блоки ({}) можно сворачивать.. Это сообщение отредактировал(а) chipset - 30.7.2004, 18:07 --------------------
|
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 27 Всего: 165 |
В шарпе есть ещё такая штука как #region
![]() ![]() А вообще то неплохая ведь прога! Попробуй выложи на downloads.com... Только сделай для начала путь к компилятору, и поддержку шарпа.. ИМХО для тех кто не смогут купить, и не захотят брать пиратский ( --------------------
|
|||
|
||||
| unit0 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 29.7.2004 Репутация: нет Всего: нет |
Сейчас делаю EDIT для TreeRedactor.
Внес изменения в вид дерева - напротив отдельных операторов появился значок. См. рис. ![]() Кроме обычного выделения текста, можно будет выделять операторы, щелкая на этот значок - если это простой оператор, или на значок папки. Теперь, например, чтобы передвинуть один оператор вверх можно будет просто схватить с помощью LMouse, предварительно не выделяя, и переместить. В общем, все как в Explorer-е. В том числе можно будет выбрать несколько операторов сразу, используя Ctrl+LMouse. Но возникает вопрос - можно ли разрешить пользователю выбирать любые операторы, из любых частей программы? И если да, то как их потом объединять и вставлять? Сам я думаю пока сделать доступным выделение нескольких операторов сразу, только если они принадлежат одному блоку. Ваше мнение? Также хочу сделать окно для EDIT с несколькими ячейками, куда можно будет бросать и извлекать части программы. to Chipset: не расскажешь, как в VS копируются блоки операторов - что бы быстро его скопировать целиком его надо свернуть? Добавлено @ 22:20 Если рисунок не видно. Смотрите на http://www.treeredactor.narod.ru/2.gif Это сообщение отредактировал(а) unit0 - 2.8.2004, 22:20 |
|||
|
||||
| C/L |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 107 Регистрация: 31.7.2004 Где: Самара Репутация: 1 Всего: 1 |
Больше всего я ненавижу VC++(6-ая версия) за "Complete World" и "List members" - есть много случаев когда они не действуют. Если ты, unit0, исправишь это в своей проге я с удовольствием ее куплю. Хотя и так прога очень даже неплохая, тем более для бесплатной. Это сообщение отредактировал(а) C/L - 2.8.2004, 23:17 |
|||
|
||||
| Fantasist |
|
||||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: 4 Всего: 41 |
Ненавижу narod.ru. 412 kb качаются 12 минут. После того, как я привык, что 1.5 Мб закачиваются за 20 сек, весьма неприятно.
Ну во-первых, пока глюков многовато. Парситься не везде корректно, при попытке редакирования совршает какие-то не очень понятные действия. Во вторых, я бы предпочел, чтобы на каждую строчку не было бы горизонтальной линии, а была бы она только по завершении блока. То есть типа этого:
Так блоки лучше воспринимаются. Конечно надо добавить подсветку и возможность работы с выделенным текстом. И после этого может получиться весьма достойный продукт. Неплохо бы, конечно, добавить интеграцию с внешними компилерами, чтобы компилить прямо не отходя от кассы можно было бы, но это уже вторым планом. -------------------- Волны гасят ветер... |
||||
|
|||||
| unit0 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 29.7.2004 Репутация: нет Всего: нет |
Хочу сделать поддержку #region для С#, но вот любопытный вопрос:
такая языковая конструкция допустима в С# и если да, то как она изображается в VS и как сворачивается? #region something void fn1(void) { #endregion }; У кого есть VS гляньте, пожалуйста. |
|||
|
||||
| Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 10 Всего: 93 |
unit0
Проверил. Сворачивает функцию fn1 целиком, как если бы #endregion было после закрывающей фигурной скобки. -------------------- Да. Именно так. |
|||
|
||||
| unit0 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 29.7.2004 Репутация: нет Всего: нет |
А если изменить код так:
#region something1 void fn1(void) { #region something2 } //otheroperators1 #endregion //otheroperators2 #endregion где будут границы регионов? Это сообщение отредактировал(а) unit0 - 4.8.2004, 16:22 |
|||
|
||||
| Дрон |
|
|||
![]() Java-ненавистник :) ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3179 Регистрация: 29.12.2002 Где: Санкт-Петербург Репутация: 10 Всего: 93 |
something2 свернёт часть fn1 (всё, что после #region) и otheroperators1.
something1 свернёт естественно всё до второго #endregion. -------------------- Да. Именно так. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |