Обсуждение развития MSEide + MSEgui

Вопросы программирования и использования MSEide + MSEgui.

Модератор: Модераторы

Сообщение debi12345 » 25.06.2007 20:04:29

Новая фишка - вращаемый текст.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Alexander » 08.07.2007 17:45:51

FPC 2.2 и MSEide+MSEgui trunk готовы к тестированию.

Нужна свн версия FPC:
http://svn.freepascal.org/svn/fpc/branches/fixes_2_2/

И свн версия MSEide+MSEgui:
https://mseide-msegui.svn.sourceforge.n ... gui/trunk/

Проекты MSEgui нужно компилировать с опцией -dmse_FPC_2_2.
Для сборки FPC RTL с отладочной информацией, нужно добавить -O- -gl к опциям компилятора.

Мартин.
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 771
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Сообщение Bonart » 08.07.2007 19:01:47

Если под виндой из MSE соберется нечто страшное - то еще этот вот этот патчик накатить надо.
Код: Выделить всё
Index: K:/Projects/fpc/rtl/inc/wstrings.inc
===================================================================
--- K:/Projects/fpc/rtl/inc/wstrings.inc   (revision 7981)
+++ K:/Projects/fpc/rtl/inc/wstrings.inc   (working copy)
@@ -984,9 +984,10 @@
         end;
       { Force nil termination in case it gets shorter }
       PWord(Pointer(S)+l*sizeof(WideChar))^:=0;
-{$ifndef FPC_WINLIKEWIDESTRING}
+{$ifdef MSWINDOWS}
+      if not winwidestringalloc then
+{$endif MSWINDOWS}
       PWideRec(Pointer(S)-WideFirstOff)^.Len:=l*sizeof(WideChar);
-{$endif FPC_WINLIKEWIDESTRING}
     end
   else
     begin

Сегодня его в фиксах еще нет - пока только в транке.
Bonart
новенький
 
Сообщения: 81
Зарегистрирован: 29.06.2007 11:47:40

Сообщение debi12345 » 09.07.2007 22:26:15

В SVN наконец-то появилась незаменимая фишка редактирования - выделение парных скобок ( утолщенным шрифтом ) !
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Attid » 09.07.2007 23:10:49

очень полезная вещь =)
более человеческое автодополнение еще не прикрутили ?
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Alexander » 10.07.2007 01:01:15

Bonart писал(а):Если под виндой из MSE соберется нечто страшное - то еще этот вот этот патчик накатить надо.


Спасибо !

Bonart писал(а):Сегодня его в фиксах еще нет - пока только в транке.


Стараниями debi12345 и Мартина уже добавлено:

The patch has been merged to fixes_2_2 by yury in rev. 7986.

Martin


debi12345 писал(а):В SVN наконец-то появилась незаменимая фишка редактирования - выделение парных скобок ( утолщенным шрифтом ) !


Теперь станет удобнее работать. Отлично !

Attid писал(а):более человеческое автодополнение еще не прикрутили ?


Нет. Но было бы не плохо открутить от Лазаруса.
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 771
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Сообщение debi12345 » 10.07.2007 08:18:02

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

Это что за зверь ?
Тот, что сидит на Ctrl+[Shift+]Space ? Так он работает. Даже аргументы методов показывает.
Что мне в нем нравится ( в отличие от Делфи/Лазаруса ) :
1) окно не захлопывается, пока ему явно это не прикажешь (Esc);
2) не перезаполнятся при изменении текста, пока повторно не вызовешь Ctrl+[Shift+]Space.

То есть не занимается самодеятельностью. Супер-фишки !

Тут бы другое сделать, чего и лазарусе нет - парсить любые WITH-конструкции.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 » 10.07.2007 13:37:17

SVN-репозитрий чуток изменился.

> At me, "svn update" fails at the moment.
>Works for me. Note that the server url has changed
>to "https://mseide-msegui.svn.sourceforge.net".

Редактируйте "./svn/entries" - usr & repos
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение Attid » 10.07.2007 13:51:09

debi12345 писал(а):
более человеческое автодополнение еще не прикрутили

Это что за зверь ?
Тот, что сидит на Ctrl+[Shift+]Space ? Так он работает. Даже аргументы методов показывает.
Что мне в нем нравится ( в отличие от Делфи/Лазаруса ) :
1) окно не захлопывается, пока ему явно это не прикажешь (Esc);
2) не перезаполнятся при изменении текста, пока повторно не вызовешь Ctrl+[Shift+]Space.

То есть не занимается самодеятельностью. Супер-фишки !

Тут бы другое сделать, чего и лазарусе нет - парсить любые WITH-конструкции.


можно ответить вашим любимым ответом
привыкли пользовотся недоделаной тулсой так теперь и восхволяете еще.
мне мало подсказки по Ctrl+Space мне надо в списке выбрать по стрелочкам и по пробелу\точке дописать то что я выбрал, это реально сокрощает время разработки.
и это не самоедеятельность подсказки, это удобная вещь которую даже notepad++ умеет делать.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение Alexander » 10.07.2007 17:22:20

Касаемо текущего состояния автодополнения.
Когда нажимаешь CTRL+Space, появляется список методов.
Но фокус ввода остаётся в редакторе. Это жутко неудобно.
Если я уже вызвал помощь, то не просто так. Значит должна
быть сразу возможность стрелками перемещаться (ну и PgUp,
PgDown, Home, End). Сейчас для этого нужно щёлкать список мышкой
(при этом список почему то прыгает в конец), затем перемещаться по
нему стрелками вправо-влево, хотя сам список вверх-вниз.
Второй момент. приятно было бы видеть в списке по CTRL+Space
то, что видно по CTRL+Shift+Space (имена параметров,
не только типы). А при нажатии Enter вставлялась бы
строчка, например такая (и по CTRL+Shift+Space тоже (или вообще
их объединить)):

Код: Выделить всё
unidrawstring({const acanvas: tcanvas;} ,{const atext: msestring;} ,{const apos: pointty;} ,{const afont: tfont = nil;} ,{const grayed: boolean = false});
(Вероятно здесь может быть полезна возможность
форматирования ползователем - кому то будут удобны только типы,
кому то только имена, кому то только запятые(или их отсутствие) итд.)

Второй раз за такой подсказкой лезть не придётся. Очень удобно
для редких функций или для зрительной памяти изучаемых частых.

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

Касаемо отсутствия "автоматики" - это правильно.

Но это про текущее состояние, а если я правильно понимаю,
сейчас нельзя сделать так
uses ..., sysutils; procedure xxx; sysutls. end;
И нажать CTRL+Space. Без толку. Видимо берёт только то, что
вкомпилированно в среду. Ну и WITH-конструкции тоже не умеет.
А лазарусовский вариант исходники парсит. Другой способ.
Вроде как более грандиозный.

В общем вопрос тяжёлый. И пока итоговая гениальная мысль нас не посетит Мартина лучше не беспокоить.
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 771
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Сообщение Attid » 10.07.2007 19:16:17

В общем вопрос тяжёлый. И пока итоговая гениальная мысль нас не посетит Мартина лучше не беспокоить.


ну вот есть целых 3 варианта желания, настроечкой их сделать не сложно, реализация тоже не сложная если знать где и что прикручивать,
по поводу того что не все он знает это уже сложнее.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Сообщение debi12345 » 10.07.2007 22:53:33

uses ..., sysutils; procedure xxx; sysutls. end;
И нажать CTRL+Space. Без толку. Видимо берёт только то, что
вкомпилированно в среду.

MSEide в RTTI смотрит, а не в исходники., то есть ему нужны скомпилированные PPU-файлы. Как только идентификатор попадает в такой файл, его методы становятся доступны в IDE.

Ну и WITH-конструкции тоже не умеет.
А лазарусовский вариант исходники парсит. Другой способ.
Вроде как более грандиозный.

"WITH" ни одна IDE парсить не умеет. Потому что там очень много неопределенности - при иерархиях и длинных цепочках через запятые. Но у RTTI-варианта есть хоть какой-то шанс ( потому что он идет по следам КОМПИЛЯТОРА ). У парсера же исходников (Lazarus) - практически никаких шансов, если только он ПОЛНОСТЬЮ не продублирует логику компилятора.

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

По ходу и в конце проверяя опять-таки через Ctrl+Space.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение haword » 11.07.2007 14:39:45

debi12345 писал(а): Но у RTTI-варианта есть хоть какой-то шанс ( потому что он идет по следам КОМПИЛЯТОРА ). У парсера же исходников (Lazarus) - практически никаких шансов, если только он ПОЛНОСТЬЮ не продублирует логику компилятора.

Зачем дублировать логику компилятора когда надо только показать классы и переменные и процедуры? Все пользуются этим и не паряться в delphi/lazarus! А еще есть такая приблуда к делфям опенсурсная как cnPack Wizard так вот она еще и по первым двум-трем введенным сиволам предлагает варианты донабора. Очень удобно. Ввел LoadF а она уже предлагает LoadFromFile LoadFromStream. Очень ускоряет набор программы! Такую бы в лазарь и mseide приблуду добавили бы, было бы круто!
haword
постоялец
 
Сообщения: 301
Зарегистрирован: 02.03.2006 11:34:40

Сообщение Bonart » 11.07.2007 15:06:53

Еще бы Complete class at cursor заработало...
Bonart
новенький
 
Сообщения: 81
Зарегистрирован: 29.06.2007 11:47:40

Сообщение debi12345 » 11.07.2007 18:06:06

Зачем дублировать логику компилятора когда надо только показать классы и переменные и процедуры? Все пользуются этим и не паряться в delphi/lazarus!

Речь идет об WITH-конструкциях. Решение этой проблемы - в 1000 раз ценнее всей обсуждаемой косметики вместе взятой.
Лично мне авто-донабор даже мешает запоминать имена переменных - то есть отучает думать, сбивает с ритма.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Пред.След.

Вернуться в MSEide + MSEgui

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru