FreeBasic
Главная
Вход
Регистрация
Воскресенье, 19.11.2017, 22:25Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 2 из 3«123»
Форум » Вспомогательное программное обеспечение » Вспомогательные утилиты для программистов » IUP_FB_EDITOR (Редактор для Freebasic написанный на Freebasic)
IUP_FB_EDITOR
haavДата: Четверг, 26.10.2017, 18:47 | Сообщение # 16
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Цитата
If IupGetInt(TGlobalVariables->dlg, "RASTERSIZE") >= IupGetInt(NULL, "FULLSIZE") Then IupSetAttribute(TGlobalVariables->dlg, "PLACEMENT", "MAXIMIZED") EndIfИначе, если окно программы было максимизировано до закрытия, при следующем запуске, по крайней мере, у меня, системные кнопки как-то странно немного задвигались за пределы экрана

Благодарю , это я обязательно добавлю.

----------------

WQ! Похоже ты не один, кто столкнулся с проблемой размера диалога настроек.  Раз так, придется сделать правку и обновить архивы. Наверное завтра этим займусь, заодно код с максимизацией окна пристрою, ну и еще добавлю относительные пути для инструментов\файлов справки.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
haavДата: Пятница, 27.10.2017, 07:22 | Сообщение # 17
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
1) Добавлен японский файл локализации
2) Добавлены относительные пути. В windows для компилятора\отладчика\файлов справки\инструментов , в linux для файлов справки\инструментов. $A - путь где установлен редактор.
3) Мелкие исправления

Архивы обновлены


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
DarkDemonДата: Суббота, 28.10.2017, 12:58 | Сообщение # 18
Сержант
Группа: Друзья
Сообщений: 35
Репутация: 1
Статус: Offline
Цитата haav ()
Архивы обновлены

ok Стас, посмотрим, что можно выжать из этого.

Добавлено (28.10.2017, 12:58)
---------------------------------------------
Начал настраивать и тут же столкнулся с багом, редактор цифры печатает другим шрифтом, каким, фиг его знает
но не тем, что установлен. Из-за этого mono шрифт превращается в не mono шрифт и отступы съезжают.
Опция показать пробелы показывает пробелы жирнющей точкой, для этого достаточно пикселя(так как было в PB),
при этом в комментариях эта самая точка становится серой, т.е. цвета комментария ))) жесть.

Так редактор интересный, хочется настроить и потестить его в штатном режиме, на реальных толстых проектах,
заодно сделать собственную сборку с аппетитной BlitzBasic темой и возможно ещё одну тему(тёмную) скомуниздить
из какого-нибудь другого редактора. Короче хочется замутить сочную сборку с голым компилем.

P.S: Смог зайти на форум через гугл, хех, вот и фиг знает что там было.


Сообщение отредактировал DarkDemon - Суббота, 28.10.2017, 12:59
 
haavДата: Суббота, 28.10.2017, 14:18 | Сообщение # 19
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Цитата DarkDemon ()
Начал настраивать и тут же столкнулся с багом, редактор цифры печатает другим шрифтом, каким, фиг его знает
но не тем, что установлен. Из-за этого mono шрифт превращается в не mono шрифт и отступы съезжают.


Какой ты моно шрифт используешь? Я перепробовал около десятка , но везде отступы нормально. А вот не с моно шрифтами да есть косяк, но тут я бессилен.

Цитата
Опция показать пробелы показывает пробелы жирнющей точкой, для этого достаточно пикселя(так как было в PB),


Пробовал я меньше точки делать, нихрена не видно. Ведь смысл точек - это возможность видеть сколько пробелов напечатано. И это Леха, то что в PB IDE сделано так, совсем не означает, что так идеально и всем сразу должно нравится... Я уже писал, есть исходный код, если тебе что-то нужно скорректировать под себя, взял да поправил как тебе нужно. Вон WQ не стесняется , а правит код как считает нужным.
Цитата

при этом в комментариях эта самая точка становится серой, т.е. цвета комментария ))) жесть.


А каким цветом она должна быть? Ты можешь в scintilla сделать по другому? Тогда подскажи как!


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
DarkDemonДата: Суббота, 28.10.2017, 21:05 | Сообщение # 20
Сержант
Группа: Друзья
Сообщений: 35
Репутация: 1
Статус: Offline
Цитата haav ()
Какой ты моно шрифт используешь?

FiraMono-Medium.otf

Я скачал около десятка шрифтов, чтобы подобрать и этот первый был в списке теста. И кстати он вполне ничего так.
Шрифты которые скачал и буду тестить(закрепил в архиве):

aurulent-sans-mono      (свободная лиц.)
bp-mono                        (свободная лиц.)
droid-sans-mono           (свободная лиц.)
fira-mono                       (только для личн. использования)
luxi-mono                       (только для личн. использования)
monofonto                     (свободная лиц.)
monospace-typewriter   (свободная лиц.)
oxygen-mono                 (свободная лиц.)
roboto-mono                  (свободная лиц.)
rubik-mono-one             (свободная лиц.)
share-tech-mono           (свободная лиц.)
verily-serif-mono            (свободная лиц.)

Цитата haav ()
А каким цветом она должна быть? Ты можешь в scintilla сделать по другому? Тогда подскажи как!

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

Цитата haav ()
И это Леха, то что в PB IDE сделано так, совсем не означает, что так идеально и всем сразу должно нравится...

Согласен. На самом деле в PB у меня эта штука была постоянно включена, а точки были мало того что в пиксель,
так ещё я сам поставил цвет не сильно различающийся от фона(немного ярче), чтобы это не мешало кодингу,
но тем не менее, чтобы их было хоть как-то видно. На самом деле эта штука в mono шрифтах не нужна, скорее
в шрифтах где буквы разной длины, вот там она помогает. Точную настройку не помню, это надо поднимать
свои архивы, ставить PB, вживлять настройки и т.п. боюсь у себя даже и не найду его настроенного, это было
давно, ещё на другом компе.

Добавлено (28.10.2017, 20:25)
---------------------------------------------

Ещё из замеченного:

1) $A в путях не работает(сборка 32 бит). Пришлось написать прямо так:

Путь к компилятору:
Compiler\fbc.exe
Путь к справке FreeBasic:
Help\FB-manual-1.05.0.chm

2) При попытке компилировать dll, запускает exe, скомпиленный до этого с тем же именем...

3) При смене шрифта в окне вывода шрифт сменился только раза с 5-го, я пытался сделать шрифт из виндовой консоли,
т.е. "fixedsys, 10", выбирал соотв. диалогом.

4) Ну и уже обозначенное по mono шрифтам т.е. цифры печатает другим шрифтом

5) Комментарии всегда курсивом и тонким шрифтом. Жесть)))

1 и 3 пункт не напрягают, т.к. настроил и забыл.

6) Не нашёл где лежит то, что подсвечивается как группа "операторы". Хотел внести строковые ковычки чтобы их
подсвечивало отдельно как в FBEdit-е.

7) Нету важной фичи CTRL + клик по #include строке для открытия #include файла в отдельной вкладке.

Остальной функционал проверил, вроде работает отлично: поиск\замена, закладки, инструменты.
Прикрепления: Fonts.zip(1405Kb)


Сообщение отредактировал DarkDemon - Суббота, 28.10.2017, 21:06
 
haavДата: Суббота, 28.10.2017, 22:03 | Сообщение # 21
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Цитата DarkDemon ()
7) Нету важной фичи CTRL + клик по #include строке для открытия #include файла в отдельной вкладке.


Я даже не знал о такой фиче, попробую внести это. Удобно , признаю.

Леха, спасибо за тестирование. Я все внимательно проверю в течении ближайших дней и потом отпишусь.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
DarkDemonДата: Суббота, 28.10.2017, 23:40 | Сообщение # 22
Сержант
Группа: Друзья
Сообщений: 35
Репутация: 1
Статус: Offline
Ещё один косяк заметил, совсем мелкий.
При закрытии вкладки и  переброске активной вкладки на другую в статусе окна стирается имя файла.
А при сохранении свежесозданной вкладки статус не переименовывает "new" в имя сохранённого файла.

Также при быстрой сборке всегда создаётся консольное приложение, вместо указанного билда, может
конечно так и задумано, но хотелось бы иметь выбор(возможно в опциях в виде отдельной строки
запуска), хотя на мой взгляд было бы круче быстрый запуск делать текущим выбранным билдом.
Или может быть галочку в опциях "быстрый запуск текущим типом сборки", т.е. вариант и для новичков
и для профи(мне то понятно что новичкам удобнее, чтобы и консоль присутствовала, т.к. большинство
учебных заданий - это консольные расчёты, а в типах сборки они не особо разбираются).


Сообщение отредактировал DarkDemon - Суббота, 28.10.2017, 23:45
 
haavДата: Воскресенье, 29.10.2017, 12:25 | Сообщение # 23
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Леха, перед тем как все проверять, я хочу кое-что уточнить. Опиши пошагово как ты проделывал вот это:

Цитата
При попытке компилировать dll, запускает exe, скомпиленный до этого с тем же именем...


Только прошу полностью (имя сохраняемого файла, какие кнопочки нажимал и т.д.)


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
DarkDemonДата: Понедельник, 30.10.2017, 15:04 | Сообщение # 24
Сержант
Группа: Друзья
Сообщений: 35
Репутация: 1
Статус: Offline
Стас, я лоханулся, пути работают (т.е. пункт 1 убираем, я знак доллара не с той стороны писал, это вообще такой фейл bash ,
все остальные пункты в силе, может быть запишу видео по поводу этого, сейчас просто немного занят).

По поводу dll. Берём абсолютно любой компилируемый код, тип сборки "windows console", зелёная стрелочка "запуск",
тип сборки "Dynamic library", зелёная стрелочка, создаётся *.dll а запускается *.exe, так вот он в данной ситуации
запускаться не должен(он не создавался). Понимаю почему он запускается, но этого быть не должно. Имя файла любое.


Сообщение отредактировал DarkDemon - Понедельник, 30.10.2017, 15:07
 
haavДата: Понедельник, 30.10.2017, 20:43 | Сообщение # 25
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Цитата DarkDemon ()
все остальные пункты в силе, может быть запишу видео по поводу этого, сейчас просто немного занят).


Да не Леха, не надо видео. Мне и так все понятно. Баги что ты описал, я обнаружил. С первым пунктом и так было понятно изначально, ведь тестировалось на 4 системах, так что, если бы не работало, в любом случае баг бы всплыл. Так что я знал, что проблема была только в каких то неправильных действиях с твоей стороны.

Пункт 2 тоже не является по сути багом. Смысл запускать на выполнение библиотеку? Для компиляции есть отдельная кнопка\меню\горячая клавиша . Зачем ты нажимаешь кнопку "компилировать и запустить" ? В общем здесь я тоже ничего делать не буду. На всякий случай я спросил у тебя о тех действиях что ты проделывал, вдруг какой непонятный сбой...

Пункты 3 и 4 являются багами. При чем 3 пункт не по моей вине, баг в библиотеке IUP. Дело в том, что у контролов IUPLIST , IUPLABEL , а может еще и у многих других, получается сменить шрифт только один раз, если шрифт содержит стили (жирный , курсивный , подчеркнутый , зачеркнутый). При следующих изменениях шрифта, сам шрифт с размером меняются , но стили (жирный , курсивный , подчеркнутый , зачеркнутый) остаются, даже если ты их уберешь в диалоге. Так что я решил просто вырезать эти стили при установке шрифта, ведь для окна вывода и statusbar данные стили по сути не нужны. Так что, если будешь ставить шрифт для statusbar и окна вывода, помни что бесполезно указывать жирность и пр. хрень, только шрифт и размер.
4 пункт - это мой баг , в какой-то степени даже осознанный. Когда я прикручивал шрифты, я думал, что никто не будет ставить шрифт со стилями BOLD\Italic и пр. в самом редакторе, просто потому что FB команды сделаны в стиле BOLD (жирными). Мне казалось: "кто станет ставить весь текст жирным, ведь тогда команды будут неотличимы от основного текста?" Похоже я ошибся.

5 пункт:
Цитата
Комментарии всегда курсивом и тонким шрифтом. Жесть)))


По мне, так все нормально, не зря же говорят "на вкус и цвет все фломастеры разные". Если это тебе не нравится, ты можешь банально закомментировать 2 строчки и будут комменты без курсива. Находятся эти строчки в файле multitext.bi:

Код
    IupSetAttribute(multitext, "STYLEITALIC1", "YES")
    
    IupSetAttribute(multitext, "STYLEITALIC19", "YES")    


Цитата
6) Не нашёл где лежит то, что подсвечивается как группа "операторы". Хотел внести строковые ковычки чтобы их
подсвечивало отдельно как в FBEdit-е.


Фича scintilla\lexer , где все операторы (".,(), и пр.) стоят в одной группе и одним цветом. Как это изменить, не влезаю в код scintilla я не знаю.
Цитата

7) Нету важной фичи CTRL + клик по #include строке для открытия #include файла в отдельной вкладке.


это я уже писал, что сделаю, но пользователю придется в настройках ставить путь к каталогу "include".

Цитата
При закрытии вкладки и переброске активной вкладки на другую в статусе окна стирается имя файла.
А при сохранении свежесозданной вкладки статус не переименовывает "new" в имя сохранённого файла.


тут сказать нечего , просто баги smile

Цитата
Также при быстрой сборке всегда создаётся консольное приложение, вместо указанного билда, может
конечно так и задумано, но хотелось бы иметь выбор(возможно в опциях в виде отдельной строки
запуска), хотя на мой взгляд было бы круче быстрый запуск делать текущим выбранным билдом.
Или может быть галочку в опциях "быстрый запуск текущим типом сборки", т.е. вариант и для новичков
и для профи(мне то понятно что новичкам удобнее, чтобы и консоль присутствовала, т.к. большинство
учебных заданий - это консольные расчёты, а в типах сборки они не особо разбираются).


Быстрый запуск без консоли? Не Леха, считаю это неправильным. Консоль нужна не только новичку. Опытному пользователю она нужна даже больше. Ведь консоль не только средство вывода отладочной информации, но еще и спасательный круг при зависании программы (не нужно лазить в диспетчер задач...). Для текущего билда есть та самая зеленая кнопочка "скомпилировать и запустить" , которую ты пристроил для запуска DLL smile Так что извини, оставлю как есть.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
DarkDemonДата: Вторник, 31.10.2017, 01:21 | Сообщение # 26
Сержант
Группа: Друзья
Сообщений: 35
Репутация: 1
Статус: Offline
Цитата haav ()
Быстрый запуск без консоли?

Меня даже не столько беспокоит быстрый запуск, сколько отсутствие запускать по F5 зелёной кнопкой.
Ну или если говорить проще кастомизация хоткеев. Тянутьcя через CTRL адски неудобно, поэтому
данный шорткат не вошёл в обиход.

Кстати Стас не обязательно все настройки делать менюшками, меня не обломает открыть файл настроек
текстовым редактором и править параметры вручную. Т.е. даже если чего-то не будет в менюшке,
но в конфиге оно будет - это будет большой плюс. Потому как сборка обычно пилится и настраивается
1 раз.

Цитата haav ()
4 пункт - это мой баг , в какой-то степени даже осознанный. Когда я прикручивал шрифты, я думал, что никто не будет ставить шрифт со стилями BOLD\Italic и пр. в самом редакторе, просто потому что FB команды сделаны в стиле BOLD (жирными). Мне казалось: "кто станет ставить весь текст жирным, ведь тогда команды будут неотличимы от основного текста?" Похоже я ошибся.

На самом деле мне главное - нормальная работа моно шрифта. Хотя конечно без возможности включать bold
для некоторых особо хлипких шрифтов - тоже сложновато. Про выделение операторов жирным, ну в целом
было бы здорово кастомизировать этот момент. На самом деле мне нравится выделение операторов жирным,
эта фишка была в Pure Basic, но я не люблю шрифт в 1 пиксель толщиной, глаза уже не те. А жирный шрифт
насколько я понял не может быть дополнительно выделенным из-за каких-то там внутренних особенностей.
В такой ситуации меньшее из всех зол - сделать шрифт везде одинаковый, но с возможностью выбрать bold.

Цитата haav ()
Если это тебе не нравится, ты можешь банально закомментировать 2 строчки и будут комменты без курсива. Находятся эти строчки в файле multitext.bi

Посмотрю чуть позже, надо будет сразу поправить всё, что можно.


Сообщение отредактировал DarkDemon - Вторник, 31.10.2017, 01:27
 
haavДата: Вторник, 31.10.2017, 07:57 | Сообщение # 27
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Цитата DarkDemon ()
На самом деле мне главное - нормальная работа моно шрифта.


Я уже сделал правки , в редакторе (scintilla) будет возможность ставить шрифт с жирностью. Ограничения установки стилей шрифта коснутся только statusbar и listbox (окна вывода).

Баги тоже вроде как поправил, теперь надо будет заняться реализацией CTRL + CLICK MOUSE.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
haavДата: Четверг, 02.11.2017, 10:18 | Сообщение # 28
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Обновление:

1) Добавлены стили шрифта в настройках для некоторых групп во вкладке "COLOR"
2) Добавлена опция открытия включаемых файлов с помощью сочетания (CTRL+ LEFT CLICK MOUSE) в настройках должен быть указан путь для каталога "\inc"
3) Исправлены мелкие ошибки

Буду рад тестам с вашей стороны.


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
DarkDemonДата: Пятница, 03.11.2017, 10:40 | Сообщение # 29
Сержант
Группа: Друзья
Сообщений: 35
Репутация: 1
Статус: Offline
Немного потестировал версию x32, есть пара косяков:

1) Оператор #include "" пишется вообще каким-то непонятным шрифтом, который ничем не контролируется.
И соотв. съезжает.
В связи с этим я поменял его на '$include: '' и увидел что CTRL+клик не переходит. Справедливости ради
у FBEdit-а тоже не сделан клик по альтернативному синтаксису INCLUDE.
2) Если что-то не распознано подсвечивалкой синтаксиса, оно пишется каким-то левым шрифтом и
соотв. строка съезжает. На моно шрифте Courier New установленного по дефолту этого эффекта не наблюдается.
На других шрифтах почему-то есть.

В опциях COLORS поставил всё на BOLD. Т.к. если ставлю BOLD в параметрах шрифта, то шрифт просто увеличивается
на единицу(не приобретая при этом свойство BOLD ).

1 раз редактор крешнулся, когда поменял настройки и нажал применение настроек. Но больше такого не видел.

В принципе уже почти супер редактор. Стас скажи где у тебя в коде находятся хоткеи на быстрый запуск и просто запуск?


Сообщение отредактировал DarkDemon - Пятница, 03.11.2017, 10:41
 
haavДата: Пятница, 03.11.2017, 14:34 | Сообщение # 30
Генерал-лейтенант
Группа: Администраторы
Сообщений: 793
Репутация: 34
Статус: Offline
Цитата DarkDemon ()
Оператор #include "" пишется вообще каким-то непонятным шрифтом, который ничем не контролируется.
И соотв. съезжает.


Это проблемы лексера. В общем в файле настроек есть строка, где можно поменять лексер. Есть два лексера vb и freebasic . У лексера vb не подсвечиваются некоторые ключевые слова , но лучше работает свертывание кода. У лексера freebasic все подсвечивается нормально, но свертывание кода отстойное. Я писал в хелпе, что у каждого лексера свои заморочки... Какой выбрать лексер, решай сам. На мой взгляд оба отстой, но альтернативы нет.

Цитата DarkDemon ()
В связи с этим я поменял его на '$include: '' и увидел что CTRL+клик не переходит. Справедливости ради
у FBEdit-а тоже не сделан клик по альтернативному синтаксису INCLUDE.


Я про этот синтаксис даже и не вспомнил smile

Цитата
2) Если что-то не распознано подсвечивалкой синтаксиса, оно пишется каким-то левым шрифтом и
соотв. строка съезжает. На моно шрифте Courier New установленного по дефолту этого эффекта не наблюдается.
На других шрифтах почему-то есть.


Да блин, я уже не знаю как себя ругать angry Ведь исправлял этот баг, но почему то данные исправления куда то "улетучились". То ли отвлекли меня и я не сохранил, то ли исправлял в Linux, но забыл перенести в основной код... Я исправлю это Леха.

Цитата
В опциях COLORS поставил всё на BOLD. Т.к. если ставлю BOLD в параметрах шрифта, то шрифт просто увеличивается
на единицу(не приобретая при этом свойство BOLD ).


Тут Леха такая байда с этими лексерами... По идее ставя основной стиль шрифта BOLD\ITALIC, не подсвечиваемый текст должен весь стать жирный\курсивный. Но блин с какого-то лешего данный стиль действует только на текст с #include ......., ну и на номера строк. Весь остальной не подсвечиваемый текст признается как "идентификаторы".

Цитата DarkDemon ()
1 раз редактор крешнулся, когда поменял настройки и нажал применение настроек. Но больше такого не видел.


Вот это плохо sad Такие баги отловить очень непросто. Я погоняю под Linux(ом) , там такие баги как вылеты гораздо быстрее обнаруживаются чем на винде. Это винда до последнего пытается "удержать" программу, а на Linux сразу в терминале список ошибок и вылет программы. Правда в этом списке ошибок обычно хрень что поймешь, но хотя бы пойму, что ошибка есть. Если уж на Linux ошибок не поймаю, то буду считать это временным сбоем на твоей винде.

Цитата DarkDemon ()
Стас скажи где у тебя в коде находятся хоткеи на быстрый запуск и просто запуск?


В файле hotkeys.bi


Вы сохраняете власть над людьми покуда оставляете им что-то…Отберите у человека все, и этот человек уже будет неподвластен вам…
 
Форум » Вспомогательное программное обеспечение » Вспомогательные утилиты для программистов » IUP_FB_EDITOR (Редактор для Freebasic написанный на Freebasic)
Страница 2 из 3«123»
Поиск: