[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 9 months
  • Posts: 773
  • REPUTATION:100

    [+] [-]
Grub2-generator
Скачать: yandex upload.ee
Будущая программа, от которой хотелось бы упростить создание нового конфига или добавление пунктов меню в существующий конфиг.
Текущий exe захватывает рядом лежащий grub.cfg и выводит список пунктов в нём. При клике на пункт показывает его содержимое.

Пока только идеи

Как известно создание плана и отчёта как бы толкает на его выполнение, поэтому вот идеи:
1. Добавить вкладку ISO. Использовать готовые конфиги с выбором только мест поиска, то есть путь от корня: поле ввода имени, открытия файла ISO, выбором добавления явного пути или поиска
2. Добавить вкладку HDD. Добавление файла MBR, сторонних загрузчиков (суслик, ntldr, Grub4Dos)
3. Вывод информации: разрешение экрана, диски
4. Анализатор fstab или чтение вывода "sudo blkid", чтобы получить UUID
5. Добавление темы оформления
6. Добавление строк Echo перед загрузчиками ядер
7. Сделать анализатор конфига grub.cfg с выводом списка пунктов menuentry в структуру, имеющую классы, горячие клавиши, код загрузки. Изменение всего этого.
8. Анализатор конфига для вывода таймера, темы, шрифта
9. Учесть сохранение переменных таймера и т.д. в конфигурационных файлах Linux и "Grub Customizer" в папке /etc/grub.d, чтобы пересоздание конфига при обновлении Grub2 не теряло пункты загрузки.
10. Анализировать субменю и принадлежащих ему пунктов, создавая дерево иерархии. Возможность перетаскивать пункты в нужную позицию. Анализатор иерархии для перемещения пунктов можно сделать отдельно, чтобы искючить порчу данных.
11. Сделать бэкапирование grub.cfg при сохранении с датой и временем сохранения.
Другие вкладки могут сохранять пункты загрузки в основной конфиг.
12. Сделать сохранение конфига для флешки. Для этого делаем шаблон конфигов флешки, hdd, реальной ос и т.д. и в каждый шаблон импортируются пункты.
13. Сделать папку шаблонов для выбора и наполнения готовыми пунктами загрузки.
14. Добавить анализатор темы, точнее для некоторого заранее выбранного шаблона темы, чтобы задать его параметры и встроить в конфиг.
15. Встроенный GUI для генерации шрифтов используя сторонние утилиты, то есть указать поля: имя и размер шрифта, диапазон захватываемых символов (используя реальные буквы с вычислением их минимальных и максимальных границ диапазона)
Если у кого нет grub.cfg для теста то можно сохранить этот и положить рядом с программой.
В Linux события копировать/вставить хоткеями (Ctrl+C/V) не работают в Scintilla при русской раскладке клавиатуры.
Обновление
01.10.2021
Добавлено подсветка кода при вставке и редактировании (в Scintilla)
Добавлено "Переименовать"


Last edited by AZJIO on 2021-11-01 01:50; edited 20 times in total

[Quote]

    vovan1982
  • 214
  • Longevity: 6 years 10 months
  • Posts: 1063
  • REPUTATION:69

    [+] [-]
  • Location: Ростов-на-Дону
AZJIO, круто. bb

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 9 months
  • Posts: 773
  • REPUTATION:100

    [+] [-]
временная версия
Добавлена подсветка кода
Добавлена кнопка поиск
скрин на Windows

[Quote]

    vovan1982
  • 214
  • Longevity: 6 years 10 months
  • Posts: 1063
  • REPUTATION:69

    [+] [-]
  • Location: Ростов-на-Дону
AZJIO, поюзал. С подсветкой намного лучше.

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 9 months
  • Posts: 773
  • REPUTATION:100

    [+] [-]
vovan1982
Опять же тут можно на подсветку 18 пунктов настрочить. Ранее использовал тип индикаторы в плаге Notepad++ у них было свойство подсвеченный текст не подсвечивается повторно как бы поверх, но этот режим не работает методом выделения слова цветом, а только разными видами подчёркивания цветными полосками (пример индикатора работает при поиске, выделяет цветным прямоугольником). Я использовал родной способ установки стиля, этот способ перекрашивает поверх, а значит изменился порядок что подсвечивать первым, что последним. была идея сделать массив начала и конца подсвеченных элементов, тогда рег.выр. если оказывается внутри одного из диапазонов то двигается дальше, не пытаясь подсвечивать уже подсвеченное. Сама задача интересна, но отнимет уйму времени. Также не плохо внести цвета в ini-файл, чтобы можно было использовать собственное оформление.
Я скомпилировал 32 битное со Scintilla (в хубунту 18), тестировал на убунте 14, тупо не запускается (другие проги работают), а без Scintilla работает. Хотел скомпилировать на этой системе, PureBasic не ставится. Используя файловый менеджер Nemo добавил сначала в прогу в меню рабочего стола, потом думаю юзер поломает загрузку, и сделал только в контекстное меню файла grub.cfg
Для запроса root прав надо использовать pkexec, но там старая ОС, поэтому использовал gksu.
Вот конфиг "/usr/share/nemo/grub2-generator.nemo_action" для nemo:
[Nemo Action]
Name=grub2-generator
Comment=Правка конфига загрузки ОС
Exec=gksu grub2-generator
Icon-Name=grub2-generator
Selection=s
Extensions=grub.cfg;
Separator=" "
То есть я думал встраивать ли изначально запрос root прав, как я делал для проги gui_qemu, но понял что кому надо сделают это через ком-строку.
Ещё сомневался правильно ли я сделал вставляя тело пункта отдельно, классы отдельно, имя отдельно, я бы мог вместе с именем и классами и скобками вставить как тело пункта. В этом случае при сохранении у меня бы сохранился оригинал с изначальным форматированием, ну и читабельность бы осталась на прежнем уровне.

[Quote]

    vovan1982
  • 214
  • Longevity: 6 years 10 months
  • Posts: 1063
  • REPUTATION:69

    [+] [-]
  • Location: Ростов-на-Дону
AZJIO, я бы добавил еще возможность редактирования имени пункта меню в левой колонке.

[Quote]

    AZJIO
  • 17953
  • Longevity: 3 years 9 months
  • Posts: 773
  • REPUTATION:100

    [+] [-]

проблема

Столкнулся с проблемой, что не все пункты в шаблонах добавляются как пункты, некоторые как код, анализатор не распознаёт пункт, хотя с виду всё нормально. Посмотрел, разница в кодировках 1251 и UTF8, хотя если во фрагменте только англ текст, то вполне может восприниматься как ANSI в AkelPad. Ранее я пытался привести к одному виду переноса строк (CRLF или LF) и везде UTF8.
Обновления:
Добавил подсветку кода при вставке и редактировании (пересобрал пакеты deb и арча).
Добавил "Переименовать пункт"
План: добавить "перетащить и бросить" файл-фрагмент в окно программы (спросить: открыть как конфиг или добавить как фрагмент).

[Quote]

    dimo70
  • 17296
  • Longevity: 4 years
  • Posts: 2881
  • REPUTATION:37

    [+] [-]
  • Location: BG
AZJIO, приветствую,
я не совсем в курсе с загрузчиком grub2, так что если напишу что то смешное не злитесь. ab
Откуда можно забрать самый свежий Grub2 Canonical, который сможет наверняка обходить секюр бут-а, чтоб загружать винду PE?
Буду пользоваться как основной UEFI загрузчик в MLF.

Warning from vovan1982


Зачем флудите в этой теме. Тема посвящена конкретной программе правки конфигов GRUB2. При чем тут Grub2 Canonical??? Есть тема по GRUB2, там куча веток, где можно задать этот вопрос.

[Quote]

    xnik
  • 19473
  • Longevity: 3 years 1 month
  • Posts: 245
  • REPUTATION:1

    [+] [-]
  • Location: СССР
свежий Grub2 Canonical
свежий Grub2 Canonical работает хуже или не работает вообще, на этом форуме это уже обсуждалось
Winpe прекрасно загружается родным загрузчиком от майкрософт в секюр бут

Comment from vovan1982


Зачем поддерживаете флуд???

[Quote]

    dimo70
  • 17296
  • Longevity: 4 years
  • Posts: 2881
  • REPUTATION:37

    [+] [-]
  • Location: BG
xnik, grub2 Canonical от 2018 г., который находиться сейчас в MLF от Ander_73 работает как часы по сравнению с остальными загрузчиками (Kasperski и др.)
Майковский понятно.


Display posts:    

Current time is: 09-Dec 04:36

All times are UTC + 3


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum