Commit graph

22 commits

Author SHA1 Message Date
lsv
f92c101ace New features UI query tools.
1. Добавлена подсветка строки с курсором. В настройках можно выбрать цвет фона.
2. Можно указать ширину курсора для раскладки отличной от 0x409 "En" (только Windows).
3. Исправлена проблема с выделением найденного UNICODE текста.
2024-12-10 09:52:52 +05:00
lsv
72eee5fe28 fix UI autocomplite
Изменён порядок колонок при подстановке alias.* на порядок
 указаный при создании таблицы.
2024-12-10 09:52:12 +05:00
lsv
763f587834 Add new dialog Transformation text.
В окне редактирования запросов можно вызвать диалог транформации текста (Ctrl+M).
Где при помощи PCRE регулярных выражений можно изменить выделенный текст или текст из буфера обмена.
Регулярные выражения имеют подсветку синтаксиса и подсветку найденных групп.
В выражении замены можно ссылаться на найденные группы при помощи \g{номер_группы}
Настройки цветов можно редактировать в pgadmin3opt.json файле.
2024-09-24 11:17:15 +05:00
lsv
9902878806 fix crash app autocomplite
Приложение падало при вызове autocomplite если в тексте sql встречался
оператор is dictinct from.
В определении имён не учитавались вложенные скобки, что приводило
к неполному перечню полей в списке autocomplite.
2024-08-06 15:58:14 +05:00
lsv
282cf08716 Add sql formatter
Добавлено встроенное форматирование Sql запросов.
Доработано автодополнение колонок.
Добавлено раскрытие <alias>.* в список колонок.
2024-06-17 20:31:29 +05:00
lsv
2d3f87edaa Add context help for PG functions.
Добавлен вызов контекстной помощи по именам функций Postgresql.
Для этого требуется:
1. в параметрах указать путь к html файлам документации.
2. выполнить скрипт _extract_func_help.pl для генерации файла _func.txt
3. разместить файл _func.txt в каталоге с документацией.

Для вызова помощи нужно выделить слово или выражение и нажать Ctrl+F1.
Можно просто нажать Ctrl+F1 и тогда для слова слева от курсора будет выведена справка.
Если слову соответсвует несколько функций они будут выведены в виде списка имен.

Для навигации в окне контекстной помощи:
 - закрыть окно или переместиться назад - правая кнопка мыши
 - выделить текст + правая кнопка - копировать выделение в буфер и закрыть окно.
 - нажатие ESC - закрытие окна.

Для отображения помощи используется  wxHtmlWindow https://docs.wxwidgets.org/latest/overview_html.html.
2024-05-06 19:31:52 +05:00
lsv
9f3cfacf96 fix LONG_PTR 2024-02-06 09:05:59 +05:00
lsv
2d7ac600c0 fix deprecated warning 2024-02-06 08:34:42 +05:00
lsv
1b9c403a72 fix autoselect query
Если в многострочном комментарии встрачался символ ";"
то он ошибочно считался окончанием запроса.
2024-02-02 19:13:44 +05:00
lsv
bc5a372de4 fix linux compile 2023-10-03 20:22:37 +05:00
lsv
920d424767 Сorrect TextToHtml
Некоторые символы unicode неправильно обрабатывались.
2023-06-08 21:59:35 +05:00
lsv
c197ea45c1 List alignment algorithm
Добавлен в проект выравниватель списков IN и других упорядоченных данных.
Вызывается комбинацией Ctrl+Shift+A (если внешний выравниватель не задан).
Интегрировать код выравнивателя пришлось из-за бага wxWidgets.
Ошибочное поведение появляется при вызове внешних утилит,
если им передаётся большой объём текста (более 6 кб).
Выравниватель может зациклиться на произвольных наборах данных.
Используйте с осторожностью.
Выравниватель имеет диалог настройки работы:
При выборе первого пункта диалога все переводы строк остаются как есть.
При выборе второго пункта первая строка будет образцом длинны
и под неё будут подгонятся все прочие строки.
Первый вариант используется для выравнивания insert команд.
Второй для списков IN.
Третий параметр используется, если иногда встречаются короткие строки алгоритм пытается найти выше строку которая больше или равна
текущей.
Например эти строки будут смотреться лучше:
int rs = 0;
int ls = 0;
int type = 0;
int up_item = -1;
bool br = false;
private:
int align = LEFT;
int maxlen = 0;
wxString it;
2023-05-22 21:38:14 +05:00
lsv
2fbed7a6a4 Add alignment command
Добавлена возможность запуска внешней команды для выравнивания текста
по разделителям. На java написан скрипт для выравнивания списков
align.jar. Запускать командой @java.exe -jar <PATH>\align.jar
которую нужно поместить в bat файл
2023-05-02 22:17:29 +05:00
lsv
83e372aae5 Add action CopyTableToHtml
Копирование результатов запроса в буфер обмена в виде таблицы html.
2023-02-02 10:46:33 +05:00
lsv
614a7f0adc Double the single quote.
Добавлена команда удвоения одиночной кавычки в выделеном тексте и обратная команда.
2023-01-16 08:22:33 +05:00
lsv
a5123c380c buf fix
Иногда строка t не содержала символов что приводило к ошибке.
2022-12-19 18:54:48 +05:00
lsv
cc7945be5c Reload script file after modification
Если загруженный на вкладку sql файл был изменён вне pgAdmin3,
то при смене закладок или попытке выполнения
будет предложено загрузить файл заново.
2022-07-25 21:23:35 +05:00
lsv
9e9bfef8b8 fix without patch
Приведение в соответствие с github
Патч делать не нужно.
2022-04-27 16:01:13 +05:00
lsv
a5911d053c fix 2022-04-11 09:16:03 +05:00
lsv
2a5d761e9d Correct highlight select text copy
Копировать подсвеченный SQL текст можно везде где он выводиться по нажатию Ctrl+C
2022-03-24 16:20:20 +05:00
lsv
2734a746a9 Migration to wxWidgets 3.1.5
Выполнен переход на новые библтотеки. Устранены проблемы совместимости.
Множество мелких правок.
2021-05-21 11:09:20 +05:00
lsv
9c6f9f3405 init 2020-07-07 22:19:12 +05:00