Если открыть ярлык с кучей полей и сохранить в другое место - останутся только поля из гуя
Да, и об этом я предупредил в описании (хотя явная причина порчи не описана, допишу) и вроде там мессага выпадает при перезаписи существующего (но тоже надо указать о потери более явно). Проблема, что движок работающий с данными ini-файла сохраняет в UTF-8 с BOM (и вроде с ANSI), но при отсутствии метки BOM, он его не понимает как UTF-8 и работает с ним как с ANSI, соответственно русские буквы будут иметь проблемы. Либо надо делать свой движок, либо как я пока пошёл на уловку сохраняя в UTF-8 с BOM, а потом читаю этот файл заново (бинарно в память) с позиции 3 (после BOM) и сохраняю как файл в формате UTF-8 (точнее бинарно сохраняю не зная что, там, не распознавая формат, просто без первых 3-х символов, оно и получается что ожидалось), грубо говоря эта штука (функции по работе с ini) не даёт мне напрямую сохранять в файл *.desktop. Если я буду выводить в GUI все поля то у Geany там для всех языков, даже на экран не влезет, а в 99% если чел создаёт для себя, зачем ему все поля. Кроме того, если я чего то не понял и какое то поле является критически важным, то его можно добавить самому, то есть прога позволяет расширить количество полей хоть на весь экран. А чтобы сохранить в существующий файл без потери это надо чтобы либо движок поддерживал сохранение, либо если я буду в некий массив кэшировать все данные, а пользователь не будет о них догадываться и потом сохранять, опять же порядок будет перемешан, в общем не стал я с этим заморачиваться, так как то что ты хочешь прога делает, а то что это не копия предыдущего ярлыка это не критично. По крайней мере то что я вижу, т.е. видимые поля сохраняются. Как вариант можно добавить кнопку типа дублировать ярлык с новым именем, как задачу поместить его в другую папку, или как задачу последующей ручной правки, но опять для меняя это не критично, так как я просто кидаю его в Geany, подправляю с новыми данными и нажимаю "Сохранить как..."
Было много косяков : права везде кривые
Точно, я же привык открыть его как архив и накидать файлы (да ещё с NTFS диска иногда). А вообще, какой программой собирать ".xz", чтобы исключить проблемы и всё было правильно? Получается у меня все архивы ".xz" для всех программ глючные. Может в IceArch их собрать, где права root.
Если открыть имеющийся ярлык - как его сохранить в исходном месте? Логично было бы "Сохранить в папке каталоге" сделать кнопкой, сохраняющей по выбранному пути, а вместо "Создать" сделать "Сохранить" (при открытии с параметром, без - не показывать эту кнопку)
Логично, хотя здесь начинается проблема поиска пути, ведь даже если я задам папку рабочего стола, то как пользователь выберет папку автозагрузки, он даже знать о ней не будет, а если в Local создавать, там надо выискивать папки, но как вариант можно при сохранении использовать путь в раскрывающемся списке как начальную папку отсчёта, тогда пользователь сразу нажмёт "Сохранить", либо будет искать свой путь. Но лучше сделать отдельную кнопку "Сохранить как", чтобы простота кнопки "Создать" осталась. Думаю в 99% люди будут создавать ярлыки на рабочем столе.
Надо добавить кнопку "Открыть в редакторе".