From 7d0b40d651e19fd7affe7add4a9872a476e68684 Mon Sep 17 00:00:00 2001 From: svk Date: Fri, 6 Feb 2026 14:07:53 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D1=83=20rpm.=20=D0=98=D1=81?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=20changelog-=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/build.yml | 13 ++- debian/changelog | 7 +- projman.tcl | 2 +- redhat/projman.spec | 214 +++++++++++++++++++++++++++++++++---- 4 files changed, 201 insertions(+), 35 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 95acb18..80953ac 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -67,7 +67,10 @@ jobs: echo "=== Сборка OpenBSD пакета ===" cd ../openbsd && ./build-package-bsd.sh - + + echo "=== Сборка RPM пакета ===" + cd ../redhat && ./build-rpm.sh + echo "=== Собранные файлы ===" find . -maxdepth 1 -name "projman*" -type f | xargs ls -la 2>/dev/null || echo "Файлы не найдены" @@ -187,7 +190,7 @@ jobs: echo "ID релиза для загрузки: $REL_ID" # Находим все файлы projman - FILES=$(find ../ -maxdepth 1 \( -name "*projman*deb" -o -name "*projman*tgz" \) -type f) + FILES=$(find ../ -maxdepth 1 \( -name "*projman*deb" -o -name "*projman*tgz" -o -name "*projman*rpm" \) -type f) if [ -z "$FILES" ]; then echo "Нет файлов projman для загрузки" exit 0 @@ -227,9 +230,9 @@ jobs: echo "Ответ API: $API_RESPONSE" if [ "$HTTP_STATUS" = "201" ] || [ "$HTTP_STATUS" = "200" ]; then - echo "✅ Файл загружен: $FILENAME" + echo "Файл загружен: $FILENAME" else - echo "❌ ОШИБКА загрузки: $FILENAME" + echo "ОШИБКА загрузки: $FILENAME" echo "Детали: $API_RESPONSE" fi @@ -266,4 +269,4 @@ jobs: fi echo "Собранные файлы:" - find ../ -maxdepth 1 \( -name "*projman*deb" -o -name "*projman*tgz" \) -type f | xargs ls -la 2>/dev/null || echo "Файлы не найдены" + find ../ -maxdepth 1 \( -name "*projman*deb" -o -name "*projman*tgz" -o -name "*projman*rpm"\) -type f | xargs ls -la 2>/dev/null || echo "Файлы не найдены" diff --git a/debian/changelog b/debian/changelog index fd921cb..c1cb5ad 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,7 @@ projman (2.0.0-beta3) stable; urgency=medium + * changelog-gen: сделал вывод изменения в формате rpm.spec * Исправил смену регистра в заголовках вкладок - - -- svk Thu, 5 Feb 2026 18:49:28 +0300 - -projman (2.0.0-beta3) stable; urgency=medium - * Добавил диалог вменю "Сохранить как" * Добавил проверки в диалог FileOper::SaveFile * Вынес код связанный с обработкой подсказок при вводе переменных и процедур в отдельный модуль. @@ -501,4 +497,3 @@ projman (2.0.0-alfa0) stable; urgency=medium - diff --git a/projman.tcl b/projman.tcl index e708b6b..7823531 100755 --- a/projman.tcl +++ b/projman.tcl @@ -10,7 +10,7 @@ exec wish8.6 "$0" -- "$@" ###################################################### # Version: 2.0.0 # Release: beta3 -# Build: 30012026140811 +# Build: 06022026135717 ###################################################### # определим текущую версию, релиз и т.д. diff --git a/redhat/projman.spec b/redhat/projman.spec index 66a878a..c700d7f 100644 --- a/redhat/projman.spec +++ b/redhat/projman.spec @@ -6,7 +6,7 @@ License: GPL Group: Development/Tcl Url: https://nuk-svk.ru BuildArch: noarch -Source: %name-%version-%release.tar.gz +Source: %{name}-%{version}-%{release}.tar.gz Requires: tcl, tk, tklib, tcllib %description @@ -16,40 +16,208 @@ This a editor for programming in TCL/Tk (and other language). It includes a file Интегрированная среда для программирования на Tcl/Tk. Включает в себя - менеджер проектов, полнофункциональный редактор, систему навигации по файлам и структуре файлов и многое другое. %prep -%setup -n %name +%setup -n %{name} %build +# Пустая секция, если сборка не требуется %install -mkdir -p $RPM_BUILD_ROOT%_bindir -mkdir -p $RPM_BUILD_ROOT%_datadir/%name/lib/msgs -mkdir -p $RPM_BUILD_ROOT%_datadir/%name/theme -mkdir -p $RPM_BUILD_ROOT%{_datarootdir}/applications +# Создаем директории +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_datadir}/%{name}/lib/msgs +mkdir -p %{buildroot}%{_datadir}/%{name}/theme +mkdir -p %{buildroot}%{_datadir}/applications +mkdir -p %{buildroot}%{_iconsdir}/hicolor/48x48/apps -install -p -m755 projman $RPM_BUILD_ROOT%_bindir/%name -install -p -m755 tkregexp.tcl $RPM_BUILD_ROOT%_bindir/tkregexp +# Копируем исполняемые файлы +install -p -m755 projman %{buildroot}%{_bindir}/%{name} +install -p -m755 tkregexp.tcl %{buildroot}%{_bindir}/tkregexp +install -p -m755 changelog-gen.tcl %{buildroot}%{_bindir}/changeloggen -# install -p -m644 *.tcl $RPM_BUILD_ROOT%_datadir/%name/ -install -p -m644 lib/*.tcl $RPM_BUILD_ROOT%_datadir/%name/lib/ -install -p -m644 lib/msgs/*.* $RPM_BUILD_ROOT%_datadir/%name/lib/msgs/ -install -p -m644 theme/*.tcl $RPM_BUILD_ROOT%_datadir/%name/theme -install -p -m644 projman.desktop $RPM_BUILD_ROOT%{_datarootdir}/applications +# Копируем библиотеки и ресурсы +install -p -m644 lib/*.tcl %{buildroot}%{_datadir}/%{name}/lib/ +install -p -m644 lib/msgs/*.* %{buildroot}%{_datadir}/%{name}/lib/msgs/ +install -p -m644 theme/*.tcl %{buildroot}%{_datadir}/%{name}/theme +# Копируем .desktop файл +install -p -m644 projman.desktop %{buildroot}%{_datadir}/applications/ + +# Копируем иконку в правильное место +install -p -m644 projman.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/projman.png + +# Обновляем кэш иконок (опционально для Debian) %post -%update_menus +if [ $1 -eq 1 ] ; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache -q %{_iconsdir}/hicolor || : + fi +fi %postun -%clean_menus +if [ $1 -eq 0 ] ; then + if [ -x /usr/bin/gtk-update-icon-cache ]; then + /usr/bin/gtk-update-icon-cache -q %{_iconsdir}/hicolor || : + fi +fi %files -%doc INSTALL CHANGELOG TODO LICENSE README.md -%_bindir/%name -%_bindir/tkregexp -%_datarootdir/applications/%name.desktop -%_datadir/%name - +%doc CHANGELOG TODO LICENSE README.md +%{_bindir}/%{name} +%{_bindir}/tkregexp +%{_bindir}/changeloggen +%{_datadir}/applications/projman.desktop +%{_datadir}/%{name} +%{_iconsdir}/hicolor/48x48/apps/projman.png %changelog -* Mon Nov 28 2022 Sergey Kalinin 2.0.0 - - Initial release +* Fri Feb 6 2026 svk 2.0.0-beta3 + - changelog-gen: сделал вывод изменения в формате rpm.spec + - Исправил смену регистра в заголовках вкладок + - Добавил проверки в диалог FileOper::SaveFile + - Добавил диалог 'Сохранить как' + - Добавил проверку на наличие символа переменной. + - Исправил работу со списком переменных из всплывающего окна. Теперь там можно выбрать из списка стрелками и вставить по Enter. + - Вынес код связанный с обработкой подсказок при вводе переменных и процедур в отдельный модуль. Исправил недоработку при выборе варианта из списка и вставке его в текст. Исправил обработку клавиш Ввер Вниз Ввод Отмена в окне со списком вариантов. + +* Tue Jan 27 2026 svk 2.0.0-beta2 + - Добавлено подключение (bind) сочетания клавишь указанных в настройках инструментов. + - Добавлена динамическая генерация меню 'Инструменты'. Теперь новые внешние инструменты доступны сразу после сохранения файла настроек tools.ini в редакторе. + - 2-я бета + - Исправлена ошибка с некорректным определением виджета в процедуре получения выделенного текста. + - Добавлено редактирование настроек внешних инструментов. И пункт в меню 'Инструменты'->'Настройки' + - Исправление ошибки с запуском внешних программ. + - Добавлено определение путей до внешних программ при подключении к редактору. + - Сделана обработка шаблонов командной строки и запуск внешних инструментов. + - Добавлен tkregexp для установки в /usr/bin + - Добавлена сборка пакетов для openbsd + +* Wed Jan 21 2026 svk 2.0.0-beta1 + - Сделан вывод отладочной информации по запросу. Переделка кода. + - Добавлены процедуры проверки наличия параметров конфигурации + - Добавил фокус ввода на 'терминал' если он открыт во вкладке (при переключении вкладок). + - Исправил вставку кавычек при выделении текста + - Исправил ошибку при отправке сигналов несуществующему процессу. + - Уменьшил всплывающее меню: вынес менюшки Файл и Вид в подменю. + - Изменил команду загрузки пакета в репу + - Исправлено поведение при сочетании клавиш Control-y (повторение последнего действия) + - Исправлен флаг модификации при открытии файла + - Исправил закрытие вкладок редактора и сохранение файла при разделении экрана. + - Добавлены настройки путей к программам для выполнения редактируемых файлов для каждого поддержимаего типа. И использование этих настроек при выполнении файла. + - Добавил вывод информации о версиях tcl и tk + - Добавил вывод номера версии tcl/tl в О Программе + - Исправил сохранение и закрытие нового файла. Теперь при сохранении файл будет переоткрыт под новым именем. + - Добавил проверку пакета Img. И поправил проверку типов изображений + - Переделал сигналы и сочетния + - Добавлен перевод фокуса ввода на прежнее окно после закрытия диалога выполнения. + - Добавлена передача сигналов для закрытия запущенного процесса + - Добавлен диалог настроек + - Добавил псевдо-терминал + - Добавлен диалог при открытии файлов отличных от текстовых + - Поправил тему оформления + - Исправлена работа в windows + - Уменьшил колдичество выводимой отладочной информации + - Добавлено определение пути до git в зависимости от платформы. + - Исправлено создание файла конфигурации + - Исправлено создание файла конфигурации. Добавлены номера версий в вызов tclsh8.6 и wish8.6. Убрана зависимостить на Threads. + - Исправлено чтение структуры проекта при открытии из меню 'Открыть недавнее' + - Bugfix release + - Bug fix with varhelper + - Added the "Open Recent" menu. The "recentlyEditedFolders" option in the configuration file contains a list of recently opened directories. The procedures for working with this list have also been added. + - Косметические изменения. + - Исправлены ошибки при вставке кавычек + - changelog-gen.tcl: Добавлена генерация текстового журнала изменений + - build-deb-projman.sh: добавлена генерация changelog из git log + - changelog-gen.tcl: Вывод в файл вынесен в отдельную процедуру + - changelog-gen.tcl: Добавлено создание резервной копии выходного файла. Исправлен вывод в файл. + - changelog-gen.tcl: Добавлены опции командной строки + - Добавлен запуск changelog-gen при сборке пакета + - Добавлено чстение журнала начиная с определенной даты + - Генерация списка изменений для debian приведена к корректному виду + - Исправлен фокус при создании нового файла. #3 + - Исправлена неправильная замена выражение при поиске + - Реализовал базовые функции генератора журнала изменений + - Добавлена иконка для jinja template + - Исправил остатки слияния веток + - Исправлено некорректное определение типа файла при открытии. + - Исправил открытие файлов с разными путями (~/ ./ ../) + - Добавил изображений программы + - Исправлена ошибка при создании нового файла. + - Добавил пиктограммы файлов + - Исправил процедуру Files::CloseAll ('Закрыть всё') + - Добавлена поддержка Lua + - Исправлена процедура (рас)комментирования + - Исправил ошибку при выходе в процедуре (Congig::Write) + - Добавил раскраски в ruby + - Добавлена возможность многострочных комментариев + - В Ruby lexer добавлен поиск переменных коде. + - Немного почистил. Добавлен поиск переменных по питоньим исходникам (lexer) + - Изменения в подсветке для INI + - Добавил подсветку для Desktop и Spec файлов + - Добавил вывод отладочной инфы в процедуру + - Исправил подсветку комментариев в TCL + - Оптимизация процедур + - Добавлена подсветка и навигация по HTML. Исправлена подсветка XML + - Добавил иконку для изображений + - Добавил иконки для perl + - Исправлена подсветка и навигация по коду для Ruby + - Исправлено сохранение сессии в редакторе (открытие папки и файлов при следующем запуске) + - Добавлена новая секция UserSession + - Исправление ошибки при открытии файла + - Добавлена поддержка INI-файлов (подсветка + - Добавлена поддержка perl + - Добавил икогнку для файлов git + - Добавлены иконки для ключей и сертификатов. Изменен поиск иконки (вощзвращает теерь с размером) + - Реализован двухпанельный режим работы (вертиикальное разделение) + - Исправлена ошибка при открытии ansible.cfg + - Добавил деактивацию кнопки 'Создать репу' если не выбран активный проект (не открыто ни одного каталога/папки) + - Добавлены команды git init и git config (зачаток). Изменен диалог клонирования репозитория (добавлена кнопка Создать репозиторий) + - Исправил ошибку git при открытии файла или каталога если репозиторий не инициализирован (нет .git каталога внутри проекта) + - Добавил скриты сборки rpm + - Добавлено обрамление выделенного текста прии нажатии '_' в markdown + - Исправление подсветки + - Добавлена поддержка markdown (подсветка + - Исправлена ошибка с закрытием файлов в редакторе при закрытии папки + - Переделана процедура определения активного проекта. Исправлено определение ветки git. Теперь можно нормально работать в двух и более открытых проектах (каталогах/папках) + - Доделан вид диалога поиска по файлам + - Исправлен поиск имени функции + - Добавлен диалог клонирования репозитория + - Добавил разделитель + - Исправлено переключение вкладок при закрытии + - Исправлено закрытиие вкладки Git по нажатию соотв. кнопки в панели инструментов + - Добавлен пункт 'Закрыть всё' + - Исправлено соответствие открытого файла в редакторе и выделение этого файла в дереве + - Исправлено переключение отображения панели (лево/право) в без перезапуска программы. + - Украшательства интерфейса - Реакция на нажатие кнопки в панели инструментов теперь зависит от контекста + - Добавлено включение отключение отображения Меню + - Добавлено копирование текущей строки в буфер по Atl+Y + - Исправлена ошибка с отображением файловой панели + - Добавлены и исправлены функции отображения меню + - Добавлен параметр statusBarShow - показ строки статуса + - Добавлены переводы + - Добавлена проверка параметров вызова файл или просто строка + - Добавлен вывод сообщений об ошибке в диалоге + - Добавлено обновления списка файлов в дереве + - Добавлена процедура вывода информационного сообщения + - Добавлена команда Git::Reset (git reset _file_) на кнопке в диалоге. Для отмены 'git add' + - Добавлена кнопка Обновление в диалог работы с Git + - Исправление процедуры поиска наименования функции + - Фиксы диалога работы с Git (работа с выделенными файлами в списках) + - Фиксы и тесты работы с git + - Исправление выборанескольких файлов в диалоге Git + - Исправление рег. выражения чтения файлов командой git status + - Исправлено рег. выпражение определения mime типа файла + - Добавил очистку текстовых полей при добавлении файлов в коммит + - Исправрелдение Git::Commit (индексация всех файлов в проекте) + - Исправления глюков + - Украшательства строки статуса + - Добавлен просмотрщик изображений + - Добавил рамку кону ввода номера + - Добавлен диалог перехода по номеру строки Ctrl-G + - Добавлено определение типа файла + - Добавил удаление артефактов сборки пакета + - Новая сборка + - Добавлена подсветка имен файлов в выводе git show + - Небольшие правки в подсказках по переменным + - Исправлена подсветка SHELL переменных а YAML файлах (ansible +