purebasic.info

PureBasic forum
Текущее время: Сб июн 23, 2018 3:38 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Чт июн 07, 2018 6:12 pm 
Не в сети
док

Зарегистрирован: Чт фев 09, 2017 10:37 am
Сообщений: 158
Благодарил (а): 16 раз.
Поблагодарили: 29 раз.
Пункты репутации: 0
Пётр писал(а):
Это весь функционал отладчика или еще что-то поддерживается?.

Я не пользовался их отладчиками, там есть отладчик в виде функций, отправляя во внешнее окно (консоль отладчика), для меня ничего интересного там не показалось, как впрочем и в вашей справке.
Во первых в AutoIt3 отладчик встроен в интерпретатор, то есть я могу запустить без отладчика и если скрипт запнётся он выдаст строку и позицию, то есть стрелкой покажет к примеру на имя переменной, что с ней проблема, или текстовые сообщения что индекс массива превышен или не найдет закрывающий тег какой то конструкции.
Если скрипт не получает данных но не выдаёт сообщение об ошибке,то переменные узнаёшь через мессагу, ду, у них там вывод в консоль, но меня это напрягало пол-окна консоли, а мессагу я получаю тоже самое, единственное я написал скрипт (скриншот), которым выделил переменную, нажал хоткей, он мне сформировал мессагу или выдал окно с предложением как оформить вывод. А также написал свой типа дебагер, передавая которому переменную он узнаёт его тип и от типа делает результат вывода соответствующий, например если массив, то показывает его содержимое, а также параметром задавал способ вывода, в мессагу, в консоль, в буфер, в лог-файл. Но всё это было ненужные навороты, мне пользоваться этим было излишне.
Также делал несколько инструментов, например "переименование переменных", или вывод имён переменных, или выделял код функции (процедуру), нажимал получить переменные с целью объявления локальными, то есть выдавал мне готовую строку переменных использующихся внутри функции, удалял из них переданные в вызове функции, давал подсказки какие переменные следует проверить на глобальность. Ну чтобы было понятней выдавал строку "Protected hwnd, text$, i, id". Также в родном IDE как и во всех, автозавершение было только для имени функции, в NPP до версии 6.5.3 я мог указать всю строку с параметрами, у меня вставлялось типа MessageRequester("Сообщение", "Текст"), делал двойной клик и слове и заполнял своими данными, то есть я не мог запутаться в параметрах, не требовалось открывать справку. Теперь же это поломано, сам движок режет строку по пробелам, но появились плюшки: в конструкции можно использовать символы переноса \r\n и вставляется готовая конструкция, как снипсет, только работает в 100 раз интерактивней, а с пробелом есть выход, используем неразрывный пробел 160, вешаем на горячую клавишу скрипт, который заменит в исходнике пробел 160 нормальным 32, это можно сделать к примеру команду перед компилированием.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Чт июн 07, 2018 8:03 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11188
Благодарил (а): 4 раз.
Поблагодарили: 415 раз.
В простых программах редко требуется отладчик, но по мере усложнения программы, он может сильно упростить и ускорить разработку. Не нужно много раз пересматривать код думая почему он работает не так как должен. Достаточно посмотреть как он выполняется и обычно это все ставит на свои места.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Вт июн 12, 2018 9:05 am 
Не в сети
док

Зарегистрирован: Чт фев 09, 2017 10:37 am
Сообщений: 158
Благодарил (а): 16 раз.
Поблагодарили: 29 раз.
Пункты репутации: 0
bizdon писал(а):
AZJIO, залил настроенный npp.

Русифицировал LanguageHelp, несколько лет назад я перевёл плаги, которыми пользуюсь, и давно не обновлял. Но проверил этот плаг и у него проблема как я уже писал ранее, если в справку встроен значок запуска скриптов, то при запуске из этого плага это не работает. То есть справка работает, но она является дочерним окном к NPP и видимо не может из себя запустить дочерний скрипт, который должен открыться в родительском окне, родитель должен стать дочерним дочернего. В общем буду делать скриптом, как раньше.

Сделал аналог LanguageHelp, но без вышеуказанного отрицательного эффекта


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Ср июн 13, 2018 9:12 am 
Не в сети
док

Зарегистрирован: Сб окт 31, 2009 7:44 am
Сообщений: 155
Благодарил (а): 85 раз.
Поблагодарили: 3 раз.
Пункты репутации: 0
[quote="AZJIO"[/quote]
Русифицировал..
не вижу необходимости русифицировать интерфейс чего-либо, все слова стандарнтные. Справки (например, PB) согласен, хорошо бы иметь на русском - ускоряет восприятие.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Пт июн 22, 2018 10:33 am 
Не в сети
док

Зарегистрирован: Чт фев 09, 2017 10:37 am
Сообщений: 158
Благодарил (а): 16 раз.
Поблагодарили: 29 раз.
Пункты репутации: 0
Начал делать автозавершение, вот. Я конечно мог написать скрипт, который вытащит из справки все имена функций и констант, сгенерирует для функций параметры, чтобы выводить подсказку, но у меня другой подход, чтобы не было много телодвижений при выборе из кучи мусора, я добавляю потихоньку часто используемые и стараюсь чтобы они не утопали в редко используемых, то есть при вводе они были практически сразу в видимых пунктах. Для начала ключевые слова, строковые функции и мессага.
Так как я в качестве пробела использую неразрывный пробел то добавил скрипт для замены их нажатием Alt+Z.

В присоединённом файле всё что нужно.


Вложения:
Notepad++ autocomplete PureBasic.zip [459.93 KiB]
Скачиваний: 3
Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Пт июн 22, 2018 11:46 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11188
Благодарил (а): 4 раз.
Поблагодарили: 415 раз.
AZJIO писал(а):
Я конечно мог написать скрипт, который вытащит из справки все имена функций и констант, сгенерирует для функций параметры, чтобы выводить подсказку
Компилятор может предоставить эту информацию. Константы.
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Compiler = RunProgram(#PB_Compiler_Home+"\Compilers\pbcompiler.exe", "/STANDBY", "", 
                      #PB_Program_Open | #PB_Program_Read | #PB_Program_Write | #PB_Program_Hide)
 
If Compiler
  WriteProgramStringN(Compiler, "CONSTANTLIST")
 
  While ProgramRunning(Compiler)
    If AvailableProgramOutput(Compiler)
      Debug ReadProgramString(Compiler)
    EndIf
  Wend
 
  CloseProgram(Compiler) ; Close the connection to the program
EndIf

viewtopic.php?p=69473#p69473

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Пт июн 22, 2018 11:48 am 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6313
Благодарил (а): 19 раз.
Поблагодарили: 189 раз.
Пункты репутации: 48
AZJIO писал(а):
В присоединённом файле всё что нужно.

А почему Instrument_azjio x64, думаете у всех такая система?
Да и вообще, ради 3-х десятков строк кода Replace160.exe на >800 кб это тут моветон :D
Переписали бы на PB, раз уж на этом форуме тусуетесь.

_________________
read-only


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Пт июн 22, 2018 1:16 pm 
Не в сети
док

Зарегистрирован: Чт фев 09, 2017 10:37 am
Сообщений: 158
Благодарил (а): 16 раз.
Поблагодарили: 29 раз.
Пункты репутации: 0
kvitaliy писал(а):
А почему Instrument_azjio x64, думаете у всех такая система?
там не обязаловка, можно в другую папку класть и другой путь в shortcuts.xml указать. Я кладу туда, потому что не плагин это, а инструментов у меня с десяток.
kvitaliy писал(а):
Да и вообще, ради 3-х десятков строк кода Replace160.exe на >800 кб это тут моветон :D
Пока на AutoIt3 я как думаю так и пишу, а на PureBasic я могу только подумать.
kvitaliy писал(а):
Переписали бы на PB, раз уж на этом форуме тусуетесь.
по позже, я пока больше заинтересован в добавлении новых строк автозавершения, а скрипт я с недовольством сделал, чтобы было полноценное решение. Пока я пишу код PureBasic для меня это острая необходимость, которая тормозит мою эффективность.
Там я уже сделал, что вставляется многострочный текст. Отступы я подвину выделением строк и табом, это всё равно быстрее, чем вводить всё руками.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Пт июн 22, 2018 2:29 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11188
Благодарил (а): 4 раз.
Поблагодарили: 415 раз.
В плагине есть функция beNotified в которой многое можно сделать, в т. ч. формировать и отображать список автозавершения. Это позволит отображать только необходимые ключевые слова, сортировать их как нужно (например часто используемые отображать первыми).
Можно сделать как в PB IDE добавив недостающие возможности.

Изображение

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Пт июн 22, 2018 2:50 pm 
Не в сети
док

Зарегистрирован: Сб окт 31, 2009 7:44 am
Сообщений: 155
Благодарил (а): 85 раз.
Поблагодарили: 3 раз.
Пункты репутации: 0
AZJIO
зачем в вашем плагине-инструменте exe'шник? NPP можно и без него настроить, чтобы в файлах с расширением *.pb было нужное автодополнение.
п.с. мне хочется API'шки c параметрами прикрутить (пригодится для любых языков программирования), но надо переводить в формат npp, готовых xml нет. Новерное, займусь на досуге..


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Notepad++ в качестве IDE?
СообщениеДобавлено: Сб июн 23, 2018 12:08 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11188
Благодарил (а): 4 раз.
Поблагодарили: 415 раз.
AZJIO писал(а):
какие преимущества я бы получил:
1. Привычный хоткей комментировать/закомментировать - одна клавиша против двух в IDE_PB
2. Привычное авто-завершение строки. В IDE_PB у меня не всегда по Enter вставляется, иногда надо мышкой кликать, а при ложной не вставке ещё и отменять и вводить снова последнюю букву.
3. Привычный поиск и подсветка меток, закладки и прочий функционал с кучей плагинов.
1. В настройках (Основные --> Горячие клавиши) можно изменить клавиши и их число.
2. Опять же в настройках горячих клавиш можно изменить. По умолчанию используется Tab. Можно заменить на Enter или другую кнопку.

На мой взгляд отказ от стандартной IDE и переход на Notepad++ не самая хорошая идея и можно потерять много преимуществ, которые есть в PB IDE, но нет в Notepad++. К примеру, встроенный отладчик, автозавершение элементов исходного кода (в т. ч. не загруженных в редактор, которые подключаются в исходниках). Автозавершение согласно пространству имен и т. д.
Упомянутые закладки можно сделать через заметки или маркеры в исходниках PB IDE или комментарии типа.
Код:
1
;- Это закладка отображаемая в списке процедур


Нужно лучше изучить PB IDE и возможно не будет необходимости использовать Notepad++ в качестве IDE.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB