Свой тип файла для проектов: *.nlve больше не текст

Внутри проект — обычный JSON, и система считала его просто текстом:
открывала редактором и рисовала значок текстового файла.

Теперь у него свой тип application/x-nlve-project, свой значок (лист с
загнутым углом и знаком программы) и открытие двойным щелчком. Тип
объявлен наследником application/json, но не простого текста — иначе
редактор снова оказался бы программой по умолчанию.

Всё, что нужно для встраивания в рабочий стол, лежит в packaging и
ставится скриптом tools/install-desktop.sh в домашний каталог, без прав
администратора. Раньше пункт меню и значки существовали только на одной
машине и нигде не были записаны.
This commit is contained in:
4aiman 2026-08-31 00:13:50 +03:00
commit fb6b60bc3f
7 changed files with 200 additions and 0 deletions

View file

@ -46,6 +46,30 @@ Lazarus другой версии, и собранные им модули LCL
`./nlve remux <файл>...` — в коде этого нет и не было: слово `remux` не
является именем файла и молча пропускалось.
### Встраивание в рабочий стол
```
tools/install-desktop.sh # берёт ./nlve рядом с репозиторием
tools/install-desktop.sh /путь/к/nlve
```
Скрипт кладёт пункт меню, значки и описание типа файла — всё в домашний
каталог, без прав администратора. После этого `*.nlve` перестают быть
просто текстом: у них своё имя типа (`application/x-nlve-project`), свой
значок и открытие двойным щелчком. Проверяется так:
```
xdg-mime query filetype проект.nlve # application/x-nlve-project
xdg-mime query default application/x-nlve-project
```
Внутри проект — обычный JSON, и тип объявлен наследником
`application/json`. Наследником простого текста делать не стали: тогда
файл снова открывался бы редактором по умолчанию.
Файловый менеджер может показать новый значок не сразу — ему нужно
перечитать базу.
## Управление
| Действие | Клавиши |