The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск каталогизатора домашней библиотеки MyLibrary 5.0

06.05.2026 08:03 (MSK)

Состоялся релиз каталогизатора домашней библиотеки MyLibrary 5.0. Код программы написан на языке программирования С++ и доступен (GitHub, GitFlic) под лицензией GPLv3. Графический интерфейс пользователя реализован с помощью библиотеки Qt6. Программа адаптирована для работы в операционных системах семейства Linux и Windows. Для пользователей Arch Linux в AUR доступен сценарий сборки готового пакета. Для пользователей Windows доступен экспериментальный инсталлятор.

MyLibrary каталогизирует файлы книг в формате fb2, epub, pdf, djvu, odt, txt, md, как доступные напрямую, так и упакованные в архивы (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), и создаёт собственную базу данных, не изменяя исходные файлы и не меняя их положения. Для каталогизации также доступен формат fbd (файл книги, упакованный в архив вместе с файлом с расширением fbd, содержащем тег description формата fb2). В формате fbd могут храниться любые файлы, не только книги. Контроль целостности коллекции и её изменений осуществляется за счёт создания базы данных хэш-сумм файлов и архивов.

Реализован поиск книг по различным критериям (фамилия, имя, отчество автора, название книги, серия, жанр) и их чтение через программу, по умолчанию установленную в системе для открытия соответствующих форматов файлов. При выборе книги отображаются аннотация и обложка книги, если таковые доступны. Поддерживается отображение списка файлов, входящих в коллекцию; списка книг, входящих в конкретный файл; списка авторов коллекции; списка книг, для которых пользователь создал заметки.

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

MyLibrary может работать с коллекциями, находящимися на внешнем сервере (соответствующие папки и файлы должны быть доступны по протоколу SMB и смонтированы на локальном компьютере с помощью gvfs, kio-fuse или их аналогов).

Значимые изменения:

  • Проект переведён на использование нового типа базы данных (коллекции, закладки, заметки).
  • Добавлен слой совместимости со старыми базами данных: коллекции, созданные в предыдущих версиях программы, загружаются и работают в режиме ограниченной функциональности (отключены функции редактирования базы данных и некоторые другие), закладки и заметки - без каких либо ограничений (старые базы будут автоматически преобразованы в новые при изменении заметок или закладок).
  • Графический интерфейс переведён на использование Qt6.
  • Изменено поведение функции создания коллекций - теперь в коллекцию можно добавлять произвольный набор папок и поддерживаемых файлов.
  • Добавлена функция создания коллекций из inpx файлов. Содержимое inpx файлов будет загружаться "на лету" при переключении на соответствующую коллекцию. Inpx коллекции работают в режиме ограниченной функциональности (отключены функции редактирования базы данных и некоторые другие).
  • Изменено поведение функции обновления коллекций. При попытке обновления устаревших и inpx коллекций они будут преобразованы в нативные. При обновлении нативных коллекций - в случае быстрого обновления - проверяются наличие и размеры файлов, если размер файла изменился - будет выполнен его повторный разбор. При обычном обновлении вместо размеров проверяются хеш-суммы файлов.
  • Изменено поведение функции добавления книг в существующую коллекцию. Новые книги теперь добавляются в базу данных без перемещения соответствующих файлов.
  • Улучшена работа поисковых алгоритмов.
  • Ускорена работа функции отображения авторов коллекции.
  • Переработан API библиотеки MLBookProc и библиотеки для подключения плагинов.
  • Улучшена работа библиотеки разбора xml файлов, добавлена начальная поддержка формата html.
  • Отключена возможность создания документации внутренних библиотек в формате pdf. Вместо неё добавлена документация в виде man страниц. Документация в формате html - без изменений.
  • Для сборки теперь требуется поддержка компилятором стандарта C++20.
  • В разряд обязательных переведена поддержка компилятором стандарта OpenMP.
  • Изменены сценарии сборки и сборочные опции.
  • Другие небольшие изменения и улучшения.

Дополнительно можно отметить обновление плагина MLFBDPlugin (доступен под лицензией GPLv3 на altlinux.space и GitHub, для пользователей Arch Linux доступен в AUR), предназначенного для создания файлов в формате fbd. В новой версии плагин переведён на использование Qt6.

Также можно отметить первый выпуск плагина MLArchiverPlugin. Плагин предназначен для создания и редактирования архивов и доступен (altlinux.space, GitHub, AUR) под лицензией GPLv3.

Репозитории плагина MLInpxPlugin переведены в архивный режим - функциональность плагина включена в состав основной программы.

  1. Главная ссылка к новости (https://github.com/ProfessorNa...)
  2. OpenNews: Релиз программы для шифрования текста и файлов Stirlitz
  3. OpenNews: Выпуск каталогизатора домашней библиотеки MyLibrary 4.3
  4. OpenNews: Выпуск p2p-мессенджера Communist 2.0 и библиотеки libcommunist 1.0
Автор новости: ProfessorNavigator
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65371-mylibrary
Ключевые слова: mylibrary
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (167) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 08:19, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +17 +/
    Интерфейс конечно всратый. Сейчас, в эпоху ИИ, можно попросить нейронку, она нарисует нормальный интерфейс. А такой, только для любителей 90-х.
     
     
  • 2.4, Sm0ke85 (ok), 08:22, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +8 +/
    >Интерфейс конечно всратый. Сейчас, в эпоху ИИ, можно попросить нейронку, она нарисует нормальный интерфейс. А такой, только для любителей 90-х.

    Ты путаешь, это ж стиль Современный, просто с цветовой палитрой поиграли, погляди на ПО из 90х - там даже в консольных ТУИ-приложениях все ок (в т.ч. с тенями)...

     
  • 2.18, Bob (??), 09:22, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +12 +/
    Тогда получше был)
     
  • 2.24, iPony128052 (?), 09:54, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Да, та же самая мысль.
    Скормить мощной нейронке с запросом "перепиши нормально".
    Хуже уж точно не будет (особо уже некуда).
     
  • 2.25, Жироватт (ok), 09:56, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Аккуратнее, аффтырь как возьмет свою библиотеку разбора ХМЛ, да как придет к тебе домой, да как пересадит тебя на мессенджер "Коммунизм"...
    Он знает, где ты живёшь - и твой дом скоро станет таким же!
     
     
  • 3.30, Аноним (30), 10:31, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Какое хорошее название у мессенджера! Надо брать!
     
  • 2.27, Аноним (27), 10:05, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Вы здесь новенький?
     
     
  • 3.127, Аноним (127), 20:04, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А что, линукс-софт сейчас весь такой?
     
  • 2.31, Аноним (30), 10:34, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо, что молодым теперь есть, у кого попросить.
     
  • 2.38, Аноним (38), 11:18, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    "Если правый глаз твой соблазняет тебя, вырви его и брось от себя" (Матв. 5:29)
     
  • 2.40, ProfessorNavigator (ok), 11:56, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Быть, а не казаться Нейронка вполне может рисовать что угодно, меня же интере... большой текст свёрнут, показать
     
     
  • 3.92, Аноним (92), 15:54, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    А зря не привлекаете Хотя бы для ревью Они бы вам, например, предложил вот это... большой текст свёрнут, показать
     
     
  • 4.120, ProfessorNavigator (ok), 17:51, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    И это уже ошибка Потому что для начала нужно бы заглянуть в CMake файл и посмот... большой текст свёрнут, показать
     
     
  • 5.175, Это любовь (?), 07:35, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Профессор, признавайтесь, вы чем так Анонима обидели, что он за вами как брошенная невеста, весь в слезах, бегает?
     
     
  • 6.187, ProfessorNavigator (ok), 12:57, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Профессор, признавайтесь, вы чем так Анонима обидели, что он за вами как
    > брошенная невеста, весь в слезах, бегает?

    Да кто ж его знает. Меня тут много, кто любит. Ржавые - за то что мы их за ушко и на солнышко. После чего вдруг внезапно выясняется, что среди тутошних Ржавых комментаторов ни одного программиста то и нет. Даже на том же Ржавом, не говоря уж про С/С++, который они любят грязью поливать. Т.е. наблюдается наплыв проплаченных кем-то (не будем тыкать в Google пальцем) комментаторов.

    Другие любят за это: https://samlib.ru/editors/b/bobylew_j_w/communism_economics.shtml.


     
  • 2.64, Аноним (92), 14:19, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > можно попросить нейронку, она нарисует нормальный интерфейс

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

     
  • 2.93, Аноним (93), 15:57, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Сейчас, в эпоху ИИ, можно попросить нейронку, она нарисует нормальный интерфейс.

    сделай доброе дело, попроси!

     

  • 1.2, Sm0ke85 (ok), 08:19, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А будет работать со скачанной "библиотекой флибусты" на 220ГБ из зеленого магазинчика?

    Просто сейчас там под линь скриптом можно доставать книги (это конечно не напрягает, но хочется больше функционала)

     
     
  • 2.8, Аноним (8), 08:40, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем платить? Если можно заплатить только за интернет, а всё остальное с зелёного магазина.
    Пока другие "грамотные потребители" платят подписки и лишаются доступа, другие направляют эти деньги на домашний сервер, где есть библиотека контента, в высоком качестве, с несколькими языковыми дорожками, нативно без лишних приложений, без DRM, без надуманных блокировок и без VPN, запланированного устаревания, оффлайн...
     
     
  • 3.11, Bob (??), 09:04, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Слишком много барыг правообладателей задрали цены, отдавая авторам - копейки. Такое поддерживать не стоит. А на вой "правильных" - можно забить.

    Налоги с покупок идут на чебурнетизацию - так вообще смысл какой чёт покупать? Залочат же. Инет)

    На счёт сервера... Хз... А нужно ли каждому именно его деожать? Внешний hdd с роутером на open-wrt достаточно.

    Устаревание - будет. Потребительский ширпотреб и лень - делают своё дело)

     
  • 3.46, Джон Титор (ok), 12:15, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нынче, к сожалению, не всё можно купить
     
  • 3.62, Аноним (62), 14:06, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Многого не найти, а какие-то хочется настоящие бумажные, например:
    «Узкий коридор» 2019.
    «Почему одни страны богатые, а другие бедные» 2012.
     
  • 2.22, anonymously (?), 09:37, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    пример скрипта в студию?
     
     
  • 3.111, Sm0ke85 (ok), 17:08, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >пример скрипта в студию?

    https://codeberg.org/aku4wb/flbs

     
  • 2.43, Джон Титор (ok), 12:14, 06/05/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 3.88, Sm0ke85 (ok), 15:47, 06/05/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.159, Джон Титор (ok), 00:19, 07/05/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.44, ProfessorNavigator (ok), 12:14, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не уверен, что правильно понял эзопов язык Но всё же рискну ответить - тестиров... большой текст свёрнут, показать
     
     
  • 3.81, Sm0ke85 (ok), 15:28, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    > функционалу (основное всё работает - открытие книг, их копирование в произвольную
    > папку), но при этом быстро, и записи в базе оформлены более
    > аккуратно. Нативные коллекции - долго (зависит от конкретного железа, если книги
    > на HDD, то часов 5-6 на индексирование всей коллекции на 8
    > потоках), записи в базе - берутся напрямую из файлов книг (а
    > там они оформлены порой так, что мата не хватает, и проблемы
    > с кодировками иногда), но при этом книг будет больше (в последних
    > версиях сделано так, что программа будет "доставать" даже совсем сбойные), плюсом
    > доступны все опции, вроде например возможности экспорта/импорта базы данных коллекции
    > или её ручной редактуры.

    Спасибо.

     
  • 2.59, zraz (?), 13:28, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Будет, она в некоторых раздачах идет в комплекте. Но удобнее что-нибудь вроде inpx-web использовать (если раздача только с fb2).
     
     
  • 3.83, Sm0ke85 (ok), 15:29, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Будет, она в некоторых раздачах идет в комплекте. Но удобнее что-нибудь вроде
    > inpx-web использовать (если раздача только с fb2).

    Попробую, спасибо

     
  • 3.121, Аноним (121), 18:15, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > (если раздача только с fb2).

    а что не так c раздачами, в которых включены usr архивы? Все также хорошо работает.

     
  • 2.63, derfenix (ok), 14:09, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я просто opds сервер на гошке написал, который с этим архивом работает, использует приложенный inpx файл в качестве каталогизатора, напрямую из архивов отдаёт книжки по запросу. Просто захожу с читалки, скачиваю книги какие надо и читаю в чём удобно и где удобно. Гуй отдельный для этого не нужен совершенно.
     

  • 1.3, Аноним (3), 08:22, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +14 +/
    Всегда захожу на скрины глянуть. Интерфейс менять не нужно. Это уже фишка.
     
  • 1.5, Аноним (5), 08:25, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Графический интерфейс переведён на использование Qt6
    >требуется поддержка компилятором стандарта C++20

    Пример реального развития софта, а не обновление ради обновления.

     
     
  • 2.14, Bob (??), 09:19, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/
    И зачем оно надо? Это же читалка)

    stdu viewer на винде, alreader на дроиде - вершина, которую не покорили до сих пор)
    А софтины 10+ летних версий и работают отлично.

    Можно с эпохи j2me и xp чёт вспомнить - аналогично)

    А вот гонка за новым компилятором и фреймворком мне непонятна, смысл то в чём?

    Вообще, пора бы базовый софт как PWA версии пилить, тогда все силы чисто в функционал вбрасывать можно.

     
     
  • 3.35, Аноним (30), 10:46, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    На Винде всё допотопное и окаменевшее не от хорошей жизни - сырцов нет.
    А в Линуксе вполне разумно обновиться на С++20, ккоторый теперь у свежего GCC по умолчанию, чтобы меньше кода писать, и на Qt6, чтобы не держать десять почти одинаковых рантаймов в системе (и в памяти).
     
  • 3.47, ProfessorNavigator (ok), 12:30, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > А вот гонка за новым компилятором и фреймворком мне непонятна, смысл то в чём?

    В данном конкретном случае никакой гонки нет. До этого интерфейс был на GTK4 (gtkmm), если же переводить его на Qt - что было проделано - то логично, по-моему, брать актуальную версию фреймворка.

    Со стандартом история немного другая. В С++20 были введены функциональные возможности, которые нужны для работы программы. До этого всё это нужно было реализовывать руками, теперь же - просто вызов функции из стандартной библиотеки ЯП. Иными словами - меньше возни с кодом. При этом актуальные для большинства дистрибутивов версии компиляторов более-менее нормально поддерживают новый стандарт (ему так-то уже 6 лет). Поэтом было принято решение о переходе.

     

  • 1.6, Аноним (8), 08:33, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    MyLibrary + весь архив Флибуста = ❤️
     
  • 1.7, 16yo expert (?), 08:39, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Глядя на этот кошмар на картинках хочется спросить - разве сегодня 1 апреля?
     
     
  • 2.32, Аноним (30), 10:37, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Глядя на парад комических артистов в комментариях, аналогичный вопрос!
     
     
  • 3.164, Аноним (164), 03:31, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чувство юмора незаменимо каждый день.

    Тем более, что здесь есть вполне видимый повод.

     
  • 2.172, Аноним (172), 07:10, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    О, у меня также от релизов и скринов гнома вопрос каждый раз
     

  • 1.9, anonymos (?), 08:59, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    "папки и файлы должны быть доступны по протоколу SMB" - это такой странный юмор?
     
     
  • 2.49, ProfessorNavigator (ok), 12:43, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Уже отвечал в прошлый раз, но повторюсь Никаких специальных возможностей для ра... большой текст свёрнут, показать
     
     
  • 3.129, Аноним (127), 20:10, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Т.е. в стандартные функции С++ (std::fstream) отправляется правильно оформленный путь файла, дальше вызов обрабатывается ОС.

    Если обрабатывает ОС, зачем упоминание какого-то SMB? ОС может хоть sshfs обработать, но об этом же в статье не написано почему-то.

     
     
  • 4.148, ProfessorNavigator (ok), 22:36, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > но тестировалось это всё на SMB

    Я написал только о том, что проверял.

     
  • 2.91, Аноним (91), 15:49, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Автор в прошлый раз обещал сделать на NFS.
     

  • 1.10, Аноним (10), 08:59, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Контроль целостности коллекции и её изменений осуществляется за счёт создания базы данных хэш-сумм файлов и архивов

    А в каком формате хэш? Вот бы это можно было юзать для восстановления побитых файлов через p2p

     
     
  • 2.17, Bob (??), 09:21, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >юзать для восстановления побитых файлов через p2p

    сам торрент перехэшируй, чудак

     
  • 2.50, ProfessorNavigator (ok), 12:47, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > А в каком формате хэш?

    При создании нативной коллекции все найденные поддерживаемые файлы хешируются. Дальше хеши используются при обновлениях коллекции для проверки наличия изменений. Используемый алгоритм - BLAKE2B.

     

  • 1.23, Pascal (??), 09:51, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Блииииин, эта чо за GUI? Рак глаз получить можно.
     
  • 1.26, Жироватт (ok), 09:59, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Аффтар! Почему ты забросил свои остальные программы?
    Мессенджер сейчас как-никак куда более актуальная нонче весчь, чем книгоиндексилка.
     
     
  • 2.51, ProfessorNavigator (ok), 12:54, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Мессенджер сейчас как-никак куда более актуальная нонче весчь, чем книгоиндексилка.

    Вы правы в целом. Но автор - один, и его на всё не хватает. Уже пару раз принимался за приведение в порядок мессенджера. А дальше... Нужна база данных, её нужно на чём-то обкатать. Обкатываем на MyLibrary, но для этого оказалось нужно большую часть библиотеки MlBookProc переписать. Поскольку переписывается библиотека - нужно адаптировать GUI, при этом были планы перевести всё это на Qt (который должен к тому же быть задействован в новой версии мессенджера - т.е. тоже неплохо бы на чём-нибудь обкатать). В результате - 3 месяца возни с MyLibrary.

     
     
  • 3.60, Сыровато (?), 13:41, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Стрёмно это, когда человек любит говорить о себе в третьем лице.
    Да и к человеку на "ты", а он в ответ на "вы".
    Похоже цветовая схема и GUI его катологизатора книг такие не с проста, а шизофренией отдают.
     
     
  • 4.77, Аноним (77), 15:07, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Монархи тоже говорят о себе в третьем лице.) Взгляд на себя со стороны (и не только, учитывая агрессию здесь). Кроме того есть еще автор у проекта. И распределение вклада авторов нам неизвестно.
     
     
  • 5.94, Аноним (93), 16:02, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Монархи тоже говорят о себе в третьем лице.

    Ни одного одаренного монарха не встречал, одни бездари, с чем это связано?

     
     
  • 6.98, Аноним (77), 16:24, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Не всё зависит от одного человека?
     
  • 5.183, Аноним (183), 10:36, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Монархи тоже говорят о себе в третьем лице.)

    Человек перепутал третье лицо с множественным числом. Докладывать о своей работе, говоря "мы", даже если исполнитель в единственном числе, нормально для научной среды.

     
  • 4.171, Паталогизатор (?), 06:58, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Стрёмно, когда кто-то будто куда-то в сторону говорит, сразу вопрос возникает: "А он в своём уме, сам с собой разговаривает?".
    А его мелкие, неуместные придирки и стремление раздавать людям оценки отдают толи психопатией, толи банальной незрелостью и завистью.
    И диагнозы ещё, бывает, ставит, а у самого голос такой мерзкий, будто он во все места обиженный и вот-вот расплачется как девчонка.
     
  • 4.182, Аноним (183), 10:33, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Стрёмно это, когда человек любит говорить о себе в третьем лице.

    Два раза прочитал пост. Где тут в 3-м лице?

     

  • 1.28, Аноним (-), 10:07, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Графический интерфейс переведён на использование Qt6.

    Ух черт, такое и из кутей можно забабахать?! :)

     
     
  • 2.48, Жироватт (ok), 12:38, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если постараться, да еще и этих новых кедовых виджетов налить...
     
     
  • 3.52, ProfessorNavigator (ok), 12:56, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > кедовых виджетов налить...

    Нет ни одного, всё исключительно на "голом" Qt.

     
  • 3.155, Аноним (164), 23:22, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Налей ещё этих новых кедовых виджетов да выпей чаю
     
  • 2.53, ProfessorNavigator (ok), 12:57, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Ух черт, такое и из кутей можно забабахать?! :)

    Как видите))

     

  • 1.29, Аноним (29), 10:10, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот после такого люди и говорят, что UI в Linux уродлив.
     
     
  • 2.161, Аноним (164), 03:17, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Протестую, для Windows автор тоже делает сборки.
     

  • 1.33, Аноним (33), 10:40, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Автору уважение за труд
     
     
  • 2.58, ProfessorNavigator (ok), 13:17, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо.
     

  • 1.34, Аноним (34), 10:42, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Зачем делать половину UI со светлым текстом на темном фоне, а вторую наоборот? Если удалить styles.css, то наверное будет дефолтная палитра от QT.
     
     
  • 2.54, ProfessorNavigator (ok), 12:58, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > наверное будет дефолтная палитра от QT.

    Загляните в настройки ;)

     

  • 1.36, Аноним (36), 10:51, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вот же ж, не успел... А я только собрался попросить упаковку в MLFBDPlugin сделать опциональной (но пусть галочка будет по умолчанию включена, чтобя поведение не менять).
     
     
  • 2.57, ProfessorNavigator (ok), 13:16, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так-то fbd - подразумевает наличие архива. Если я правильно понимаю, вы используете плагин для создания fb2? Или подразумеваются некие другие варианты использования?
     
     
  • 3.65, Аноним (36), 14:23, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, для создания файла FBD подумал приспособить (упаковывать просто рано пока).

    Пока пишу, вспомнил про fb2edit: для создания/редактирования книг, говорят, не очень, но нужен только description, надо посмотреть.

     

  • 1.37, Аноним (36), 10:55, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В сборочных файлах не увидел минимальную версию Qt. Возможно ли обойтись 6.4, как в Ubuntu'образных 24.04 LTS? (6.4.2, если полностью.)

    6.2.4, как в Ubuntu'образных 22.04 LTS, наверное, уже будет не очень удобно...

     
     
  • 2.61, ProfessorNavigator (ok), 13:49, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В теории всё должно работать вплоть до версии 6.0. Тут будет другая проблема скорее всего. Соответствующие версии компиляторов не всегда полностью поддерживают стандарт C++20. И с OpenMP там могут быть нюансы.
     
     
  • 3.66, Аноним (36), 14:26, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Я уже при сборке встрял на CMakeLists.txt:22

    > qt_collect_translation_source_targets(i18n_targets DIRECTORY src)

    доступно только в Qt >= 6.7.
    Пока не смотрел, можно ли обойти.

     
     
  • 4.73, ProfessorNavigator (ok), 14:54, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Пока не смотрел, можно ли обойти.

    Уберите эту строку вообще, и в qt_add_translations уберите SOURCE_TARGETS ${i18n_targets}. По идее всё должно нормально собраться. Забыл просто переделать, 4 отдельных проекта разом в релиз отправлять - многовато, потому и недоглядел (в плагинах аналогично).

     
     
  • 5.104, Аноним (36), 16:47, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо, только уточнение заработало после удаления и TARGETS, т е в таком вид... большой текст свёрнут, показать
     
     
  • 6.112, ProfessorNavigator (ok), 17:11, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Да, в более старых версиях Qt такое может быть Да, обойти можно Но там патчем ... большой текст свёрнут, показать
     
     
  • 7.117, Аноним (117), 17:35, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Это я тоже не доглядел - видимо в новых версиях Qt наконец-то "завезли" для QString конструктор из std::string

    Для того, чтобы не сталкиваться с такими проблемами, изобретена контейнеризациция. Но вы ведь противник данного подхода, не так ли?

     
  • 7.124, Аноним (36), 18:55, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > str += it_b->content.c_str();

    В других местах именно так, "str += it_b->content;" только в одном месте.

    Ещё

    > mlarchiverplugin/src/MainWindow.cpp:43:11: error: 'qApp' was not declared in this scope
    >   43 |           qApp->installTranslator(translator);

    Поискал в исходниках, нашёл эту qApp в MLArchiverPlugin.cpp, там после

    > #include <MainWindow.h>

    ещё

    > #include <QApplication>

    Добавил в MainWindow.cpp - собралось. (В остальных местах, включая ExamplePlugin.cpp, этот  include есть.)

     
     
  • 8.143, ProfessorNavigator (ok), 22:08, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален Да, поправлю Самое забавное, что в 6 других системах в... текст свёрнут, показать
     

  • 1.39, kusb (?), 11:42, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Мне нравится графический интерфейс, хотя кажется немного дисгармоничным. Что со мной не так...
     
     
  • 2.42, Аноним (42), 12:02, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    — Этот интерфейс для аутистов
    — А мне понравился!
     
     
  • 3.70, Аноним (77), 14:50, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Для любителей чтения норм.
    Современные интерфейсы тоже требуют адаптации. Ещё и изменяются по непонятным причинам. Так что в это время был занят чтением и не следил за модной тусовкой, норм. Не нужно сбрасывать фактор непохожести на рынке. Цвета можно позволить менять пользователю.
    PS: Почему такая агрессия и оскорбление для непохожих? Это тоже говорит о Вас.
     
     
  • 4.140, Аноним (42), 21:46, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Почему такая агрессия к чужому мнение? Это как прийти на концерт Шнура и оскорбится на то что он матерится со сцены.
     

  • 1.55, Аноним (117), 13:06, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Произведена косметическая перепланировка, без решения хоть каких-то серьёзных пр... большой текст свёрнут, показать
     
     
  • 2.67, iPony128052 (?), 14:31, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Было бы очень интересно посмотреть на ревью c++ кода, но к сожалению, местные сишники молчат.

    А смысл ковыряться в этом?

    Да и какая разница на всякие мелочи (какой-то там push_back в одной строчке), если в целом код один сплошной ужас.

     
     
  • 3.69, Аноним (77), 14:34, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Код вероятно писался "для себя как могу". Судить строго нельзя.
     
     
  • 4.71, Аноним (117), 14:50, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Судить строго нельзя.

    Некоторое время назад, данный автор негативно высказывался про rust, и в качестве примера того, что c++ ничуть не хуже, скинул ссылку на этот проект.

    Пока что ни один из критиков rust-а не показал свой код хорошего качества.

    Лично я не пишу ни на rust ни на c++, но мне надоели проекты с ошибками.

     
     
  • 5.72, Аноним (77), 14:53, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ну если Вы не нашли уязвимости с памятью, то нежелание нырять в сложность и непривычность rust не стоит осуждать, вроде.
     
     
  • 6.90, Аноним (117), 15:48, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну если Вы не нашли уязвимости с памятью

    Что за попустительское отношение? Обычные баги вас уже не интересуют?
    >то нежелание нырять в сложность и непривычность rust

    В мире существует гораздо больше языков, чем rust и c++. Есть как минимум языки со сборкой мусора.

     
  • 5.74, Аноним (77), 14:55, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Да и как тут воспользоваться уязвимостями? Прислать метаинфу вместе с архивом от друга? Тэги пользователь сам расставляет в оболочке.
     
  • 4.123, iPony128052 (?), 18:21, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Так выше предлагалось профессионалам по плюсами делать ревью.

    Если бы мне на работе такое дали бы, то я либо заявление по собственному написал бы (что я в такой компании бы делал бы), либо заявление на увольнение автора такого кода.

    Естественно я сам было дело сколотил этакий домик из ящиков на даче.
    Но странно бы, чтобы его оценивали профессионалы строители: как там стены не по ГОСТУ, а фундамент?

    Это не имеет смысла. Не тот уровень.

     
  • 3.75, Аноним (77), 14:59, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >А смысл ковыряться в этом?

    Профессионалы так заняты на работе, что у них нет времени для написания кода для людей?

     
     
  • 4.79, ProfessorNavigator (ok), 15:10, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Не обращайте внимания, местные Ржавые меня очень любят)) Я пару раз не удержался - поглумился от души, они никак забыть не могут.
     
  • 4.122, iPony128052 (?), 18:16, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    По разному, вообще бывает. Но не отменяет выше написанного.
     
  • 2.78, ProfessorNavigator (ok), 15:08, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И снова здравствуйте, рад что вы с нами)) Единственно - вы меня пожалуйста в следующий раз предупреждайте, когда будете новости про один не к ночи помянутый ЯП публиковать. Я на другой день публикацию новости перенесу. А то пользы от вас ноль - раньше хоть код тестировали, теперь уже просто набрасываете. А нормальные люди хотят нормально обсудить выпуск, а не вот это читать (ну реально - вы б хоть какой тест запустили что ли, посмотрели как оно всё работает, мне тоже интересно).
     
     
  • 3.95, Аноним (117), 16:04, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >один не к ночи помянутый ЯП публиковать

    Один это какой? Вот вам другой язык, держите, почитаете как правильно парсеры писать https://dev.realworldocaml.org/parsing-with-ocamllex-and-menhir.html Или вот ещё пример https://thedeemon.livejournal.com/1155.html

    И потом, могли бы взять условный golang, там xml парсер идёт прямо в стандартной библиотеке.
    >раньше хоть код тестировали

    Я не тестировал ваш код ни разу. Я прочитал парсер и нашёл в нём ошибки, как и в прошлые разы. Зачем мне его запускать, если я ещё до запуска знаю, где есть проблемы?
    >вы б хоть какой тест запустили что ли

    Я вам привёл конкретные ошибки, с номерами строк. Вам непонятно описание?

     
     
  • 4.138, ProfessorNavigator (ok), 21:41, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да-да-да зевает Спасибо, но на этом вы сами пишите Правда, знаете А если... большой текст свёрнут, показать
     
     
  • 5.157, Аноним (117), 23:42, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Правда, знаете? А если проверю?))

    Во-первых, вы уже часть ошибок, на которые вам я указал, уже поправили. Во-вторых, текущие ошибки вам нужно для начала проверить самим, а лишь потом заявлять, что всё хорошо.
    >Поскольку ошибок там нет, и вы бы это знали, если бы С++ подучили

    Вы даже не поняли в чём ошибка, а уже утверждаете, что её нет.
    >Безумие - это раз за разом повторять одно и то же действие, надеясь получить другой результат

    Безумие учится/тренироваться, если с первого раза не получилось, значит не получится никогда. Вы же не способны к обучению или всё таки нет?

     
     
  • 6.202, ProfessorNavigator (ok), 11:39, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >>Безумие - это раз за разом повторять одно и то же действие, надеясь получить другой результат
    > Безумие учится/тренироваться, если с первого раза не получилось, значит не получится никогда.
    > Вы же не способны к обучению или всё таки нет?

    Обучение предполагает повторяемость действий, которые как раз направлены на получение одного и того же результата. Т.е. вы изначально начинаете действовать, надеясь получить один и тот же результат ;)


     
  • 4.177, iPony128052 (?), 08:30, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > И потом, могли бы взять условный golang, там xml парсер идёт прямо
    > в стандартной библиотеке.

    Как будто на плюсах кто-то мешает подключить тот же крохотный pugixml

    Но если охота писать кривой велоипед, то это тоже незапрещенно конечно.

     
  • 3.110, Аноним (92), 17:05, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > вы б хоть какой тест запустили что ли

    А у вас в репозитории есть тесты, лол? Юнит-тесты, тесты на чтение/запись форматов файлов... Вы о таком даже не слышали.

     
     
  • 4.137, ProfessorNavigator (ok), 21:33, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Вы о таком даже не слышали.

    Да ну действительно... Давайте засунем в репозиторий пару сотен гигабайт fb2 файлов. То-то все будут счастливы...


     
     
  • 5.206, Аноним (117), 14:54, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Давайте засунем в репозиторий пару сотен гигабайт fb2 файлов

    Какой агрессивно безграмотный автор. Юнит тесты проверяют работоспособность функциональности, а не производительность.

     
     
  • 6.207, ProfessorNavigator (ok), 15:18, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Юнит тесты проверяют работоспособность функциональности,
    > а не производительность.

    А при чём тут производительность? Библиотека XMLParserCPP именно так и тестировалась - на множестве fb2 файлов. У меня есть определённый набор, на котором всё это проверяется. Но оно всё - объект авторского права, и в публичный доступ я это выкладывать не буду.

    Ещё умные мысли есть?


     
  • 2.174, Аноним (174), 07:26, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > не смотря на то, что я не пишу на плюсах, я

    ..мнение имею. Ясно-понятно.

    > Автор добавляет лишние выделения памяти на ровном месте. Практически везде, где есть push_back, ...

    Кто-нибудь, расскажите комментатору про capacity/size - стратегию аллокации памяти у std:vector.

    Сразу видно, до коммунизма ещё не дорос.

     
     
  • 3.190, Аноним (190), 14:47, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >коммунизма ещё не дорос.

    Верить в сказки? Нет, не нужно.

     
  • 3.201, Аноним (117), 10:39, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Кто-нибудь, расскажите комментатору про capacity/size - стратегию аллокации памяти у std:vector.

    Кто нибудь, расскажите комментатору про то, что однократное выделение памяти, когда копируется большая строка всё равно лучше, чем многократные, когда копируется по одному символу.

     

  • 1.56, Анонимище (?), 13:09, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Прошу меня простить, я в танке: что такого можно сделать с софтом-катологизатором что будет проблематично сделать через файловую систему? У меня есть куча файлов которые неплохо бы катологизировать
     
     
  • 2.68, Аноним (77), 14:32, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Навскидку, поиск по тэгам, атрибутам; подборки для будущих чтений; единое хранение - множество представлений коллекции.
     
  • 2.76, ProfessorNavigator (ok), 15:01, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Уже отвечал не раз. Представьте, что к вам попал архив тысячи так на 3 книг. И все имена файлов вида 123456.fb2. А если в этом архиве внутри другие архивы?

    В целом же, как опять же не раз писал - я ни на чём не настаиваю. Если вас устраивает использование файловой системы - пользуйтесь.

     
     
  • 3.80, Анонимище (?), 15:12, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    У меня есть файлы книг, но в некоторых случаях к книгам прилагаются дополнительные файлы (вроде образа диска или вспомогательного софта который я сам нашел), Ваш катологизатор может работать с такими кейсами?
     
     
  • 4.86, ProfessorNavigator (ok), 15:43, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если правильно понял, у вас есть условный pdf документ, а рядом с ним лежат неки... большой текст свёрнут, показать
     
     
  • 5.99, Анонимище (?), 16:25, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    1.

    >Если правильно понял, у вас есть условный pdf документ, а рядом с ним лежат некие вспомогательные материалы?

    Да, например iso который при прочтении книги я могу захотеть примонтировать. Поэтому хотелось бы чтобы я мог кликнуть в интерфейсе программы и мне открылась бы папка с дополнительными материалами для этой книги, чтобы не искать где у меня в дербрях файловой системы этот iso зарыт


    И еще вопросы. А можно ли ...

    2.Чтобы книга была распознана как одна, но как бы в нескольких ипостасях? Например, разные издания одной и той же книги, или разные переводы.

    3.Приучить программу добавлять информацию об книге из сторонних текстовых файлов? Например я обычно кладу файл URLs.txt в папку с книгой, там обычно список релевантных для книги веб-ссылок

     
     
  • 6.134, ProfessorNavigator (ok), 21:10, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    В целом такого нет, но можно отрыть контекстное меню на книге, там есть пункт И... большой текст свёрнут, показать
     
     
  • 7.166, Анонимище (?), 05:40, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >Эвристика этого дела будет достаточно сложной, что замедлит выдачу поисковых результатов и усложнит базу данных.

    Ок, а вручную юзер может сделать чтобы у книги было несколько ипостасей?

     
     
  • 8.203, ProfessorNavigator (ok), 11:40, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Можете воспользоваться функцией ручной редактуры базы данных - изменить название... текст свёрнут, показать
     
  • 7.173, Аноним (174), 07:17, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    ИМХО, правильнее хранить ссылку (URI: https/magnet) как поле Источник (Source) в базе данных. Это одновременно и идентифицирующая информация, и систематизирующая, и, в дальнейшем, пригодная для обновления/восстановления (для документации загружаемой из веба, например).
     
     
  • 8.204, ProfessorNavigator (ok), 11:43, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    На всякий случай напомню, что основное предназначение программы - работа с локал... текст свёрнут, показать
     
  • 3.85, Анонимище (?), 15:39, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Уже отвечал не раз. Представьте, что к вам попал архив тысячи так
    > на 3 книг. И все имена файлов вида 123456.fb2. А если
    > в этом архиве внутри другие архивы?

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

     
     
  • 4.87, ProfessorNavigator (ok), 15:45, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Не думаю что это честное сравнение, упорядоченой базы с книгами и беспорядочного
    > набора файлов. Например, книжки можно аккуратно разложить по папочкам, с подпапками
    > и текстовыми файлами для релевантных файлов и информации (вроде образа диска
    > идущему вкупе с книгой, релевантных веб-ссылок, издания книги на другом языке)

    Так я ж говорю - без проблем. Если вам удобней так - делайте так. Я ни на чём не настаиваю. Программа предоставляется по принципу: нужно оно кому-то - хорошо, нет - на нет и суда нет.


     
     
  • 5.96, Анонимище (?), 16:15, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Я сам придерживаюсь принципа "живи и дай жить другим". У меня просто чувство что я не просек "фишку" такого рода софта, вот почему спрашиваю
     
     
  • 6.135, ProfessorNavigator (ok), 21:19, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    История возникновения данного проекта такова. Была одна библиотека - архив популярного сайта. К ней прилагался каталогизатор, под Windows, на паскале. В один "прекрасный" день он перестал нормально работать ("нормально" там и до того было весьма условное - запускалось оно через Wine, работало кривовато и не быстро). Меня попросили как-то решить проблему. Альтернатив под Линукс тогда особо не было, а я уже кое-чего соображал в программировании, поэтому сел и за неделю на коленке сваял замену. Пару лет проектом пользовались только те, кто был со мной знаком, а в 2022 у меня дошли руки привести его в более удобоваримый вид. С тех пор программа "живёт" публично.
     
  • 3.125, Аноним (92), 19:06, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > архив тысячи так на 3 книг. И все имена файлов вида 123456.fb2.

    Трудно представить еще более нереалистичный и притянутый за уши сценарий.

     
     
  • 4.136, ProfessorNavigator (ok), 21:21, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Трудно представить еще более нереалистичный и притянутый за уши сценарий.

    Обладатели архивов некоторых популярных в рунете сайтов смотрят на вас с иронией))

     

  • 1.106, Ахз (?), 16:57, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хотелось бы видеть всю палитру, мало цветов
     
  • 1.107, Аноним (107), 16:57, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А какое отличие данного продукта от calibre?
     
     
  • 2.109, Аноним (36), 17:03, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Файлы не трогает, вообще - ни расположение, ни содержимое (ЕМНИП, закладки хранит отдельно).

    Ну из плюсов ещё: конвертировать не умеет, поэтому в EPUB в contributor с opf:role="bkp" не лезет.

     

  • 1.126, Аноним (127), 20:02, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Графический интерфейс переведён на использование Qt6

    Ого, а почему Qt6 такой страшный? Это же хуже даже мотива прошлого века.

     
  • 1.128, Аноним (128), 20:06, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А мне кажется, или цвета программы стали лучше того, что было несколько месяцев назад?
     
  • 1.130, Аноним (127), 20:22, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    FBReader куда лучше выглядит.
     
     
  • 2.132, Аноним (132), 20:36, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Сравнить каталогизатор с читалкой. Это мощно!
     
     
  • 3.163, Аноним (164), 03:29, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Но ведь каталогизатор может выглядеть лучше!
     

  • 1.133, Аноним (133), 20:53, 06/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ткнул первый попавшийся файлик Пусть это будет AddBooksWindow cpp 1 Про QSt... большой текст свёрнут, показать
     
     
  • 2.142, ProfessorNavigator (ok), 22:05, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А QStringLiteral создаёт их как-то иначе О да, очередной эксперт Не план... большой текст свёрнут, показать
     
     
  • 3.147, Аноним (147), 22:35, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    RTFM Конечно Логику от интерфейса надо отделять Иначе это нечитаемое месево ... большой текст свёрнут, показать
     
     
  • 4.149, ProfessorNavigator (ok), 22:39, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Так уже. Мои замечания учтёт любая нейросетка, и этот код будет лучше.

    Попутной ракеты))

     
     
  • 5.151, Аноним (147), 22:42, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    А где радость?
     
     
  • 6.153, ProfessorNavigator (ok), 22:56, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > А где радость?

    Вы даже не представляете насколько я рад. Причём без всякой иронии. Только радуюсь я не совсем тому, о чём вы подумали.


     
  • 2.145, Аноним (127), 22:19, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > connect-ы с лямбдами без указания объекта-назначения

    Сигналы - это постоянная архитектурная боль Qt.

     
     
  • 3.160, Аноним (92), 02:43, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >> connect-ы с лямбдами без указания объекта-назначения
    > Сигналы - это постоянная архитектурная боль Qt.

    Конкретно эту беду можно отключить начиная с Qt 6.7 при помощи QT_NO_CONTEXTLESS_CONNECT.

     
  • 2.146, Аноним (127), 22:21, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > постоянная пляска с преобразование QString в std::string и наоборот

    А вот писал бы на паскале - таких болячек не было бы.

     
     
  • 3.150, Аноним (147), 22:39, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Да нет. Просто какой смысл юзать std::string и прочее, когда есть Qt, которая во всех функциях использует QString? Ну разве что лишние такты процессора съесть и читаемость кода "повысить".
     
     
  • 4.152, ProfessorNavigator (ok), 22:46, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Да нет. Просто какой смысл юзать std::string и прочее, когда есть Qt,
    > которая во всех функциях использует QString? Ну разве что лишние такты
    > процессора съесть и читаемость кода "повысить".

    Смысл очень простой - под капотом там библиотека MLBookProc, в которой нет Qt (и не будет). Она может быть собрана и работать автономно, без самой программы MyLibrary (буде у кого возникнет желание например свой сервер с помощью неё поднять).


     
     
  • 5.156, Аноним (156), 23:34, 06/05/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я пока смотрел AddBooksWindow cpp, вроде бы это не часть библиотеки Но это то... большой текст свёрнут, показать
     
     
  • 6.158, Аноним (127), 00:05, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > QString -> std::string -> std::u8string -> std::filesystem::path

    В частности именно из-за этого многие не используют плюсы и Qt

     
     
  • 7.194, Аноним (194), 17:25, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    >В частности именно из-за этого многие не используют плюсы и Qt

    Поэтому и не надо. Это разные вещи. Либо на кутях быстро ляпать, либо упарываться на плюсах с рефлексиями и прочим. Впрочем, некоторые алгоритмы плюсов работают на контейнерах кутей.

     
  • 6.186, ProfessorNavigator (ok), 12:40, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > for(const auto &str : list)
    > {
    >   model->addItem(str->toStdString());
    > }

    Короткий ответ - кодировки и Windows (чтоб им там в Майкрософте всем пусто было). Это в Линукс UTF-8 дефакто - стандарт (и то - бывают варианты). А в Windows оно всё куда-а интересней. В стандарте С++17 была функция std::filesystem::u8path, в С++20 её убрали (точнее - объявили deprecated) и вместо этого, чтобы явно указать, что у вас входящий набор байт - это строка в кодировке UTF-8, нужно использовать std::u8string. Со std::string ошибки не будет, вот только библиотека filesystem будет считать, что оно - в системной кодировке. А в Windows это обычно CP1251 (а то и вовсе какой-нибудь KOI8R). При этом даже если вы через тот же Qt вернёте строку в системной кодировке, всё равно могут быть ошибки - я так до конца и не понял, в чём причина. Возможно в MinGW в std::filesystem какие-то особенности (уже наталкивался там на баги).


     
     
  • 7.196, Аноним (194), 17:51, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Какой смысл в этом всём, когда std::filesystem::path имеет перегруженный конструктор, и прекрасно сам преобразует все UTF-* кодировки в кодировку файловой системы? Здесь всё разжёвано https://en.cppreference.com/cpp/filesystem/path/path

    В QString же всегда UTF-16, так что не ясно, к чему все эти пляски с бубном.

    Собственно, проверка,

    if constexpr (sizeof(std::filesystem::path::value_type) == sizeof(char16_t))

    и сделана на случай, если кодировка файловый системы UTF-16, и преобразование не требуется.

     
     
  • 8.205, ProfessorNavigator (ok), 11:52, 08/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Если бы всё было так прекрасно, я бы такие конструкции не изобретал Поэкспериме... текст свёрнут, показать
     
  • 2.178, iPony128052 (?), 08:47, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Проект очень похож на результат вайбкотинга

    Вайбкодинг сильно лучше результаты даёт. Я серьёзно.


     
     
  • 3.180, Аноним (180), 10:22, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Когда будет новость с твоим проектом? С вайбкодингом и без, без разницы.
     
     
  • 4.185, iPony128052 (?), 12:10, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > Когда будет новость с твоим проектом? С вайбкодингом и без, без разницы.

    Уже было. У меня много ников.
    Некоторое тут и не запостят, потому что 18+.

    А так естетсвенно в основном пишу проприетарное по NDA

     
     
  • 5.198, Гарри поттер (?), 22:43, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ссылку то на новость даш?
     

  • 1.181, Аноним (180), 10:24, 07/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Спасибо. Я попробую пожалуй на это раз.
    Если программа шустрая и хорошо выполняет свою задачу - неважно какие там цвета.
    Так даже оригинально выглядит.
     

  • 1.191, Сладкая булочка (?), 14:56, 07/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Графический интерфейс пользователя реализован с помощью библиотеки Qt6

    В предыдущей версии же был gtk. В след мажорной нужен gpu rendering. Потом 3д с хождением по библиотеке.

     
     
  • 2.193, Аноним (193), 17:08, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    3D очки же продают. Для него приложение виртуальной реальности можно запилить. Виртальная реальность внутри библиотеки, с полками книг. Блин - это идея!
     
     
  • 3.195, Сладкая булочка (?), 17:28, 07/05/2026 [^] [^^] [^^^] [ответить]  
  • +/
    > 3D очки же продают. Для него приложение виртуальной реальности можно запилить. Виртальная
    > реальность внутри библиотеки, с полками книг. Блин - это идея!

    Можно AR еще взять, чтобы прямо у себя в комнате книгу брать.

     

  • 1.200, Аноним (200), 04:02, 08/05/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хороший проект ,можно на его базе сделать неплохой проект электронного документооборота
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру