Bug 7943 - Ошибки в работе скрипта freedesktop2menu.pl
: Ошибки в работе скрипта freedesktop2menu.pl
Status: CLOSED WONTFIX
: Sisyphus
(All bugs in Sisyphus/menu)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2005-09-13 09:40 by
Modified: 2006-05-18 18:49 (History)


Attachments
Патч для скрипта freedesktop2menu.pl (3.97 KB, patch)
2005-09-13 09:41, Slava Semushin
no flags Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-09-13 09:40:07
Помогаю migor@ пилить KMyMoney2 и в процессе этого прочитал на
http://www.freesource.info/wiki/AltLinux/Razrabotchiku/OsobennostiSborkiPaketov
про возможность генерировать menu-файлы из desktop-файлов. Решил попробовать.
Вылетело несколько ошибок

Argument "text" isn't numeric in numeric eq (==) at
/usr/bin/freedesktop2menu.pl
line 128.
Argument "x11" isn't numeric in numeric eq (==) at /usr/bin/freedesktop2menu.pl
line 128.
Use of uninitialized value in concatenation (.) or string at
/usr/bin/freedesktop2menu.pl line 173.

Пришлось залезть в исходник и поправит. Попутно также переименовал переменную
из
MDKVERSION в ALTVERSION. Также у меня в desktop файле была такая строка:
"ServiceTypes=" Она же попадала и в результирующий menu-файл. Это тоже поправил
(там лишь изменил спецификатор в регулярном выражении). Ну и последнее это
сделал более удобочитаемым вывод скрипта, добавил переводы строк и табуляцию.
Патч сейчас приаттачу...

P.S. Демонстрация:

[c0der@mycomp ~]$ cat /usr/share/applications/kde/kmymoney2.desktop
[Desktop Entry]
Encoding=UTF-8
Name=KMyMoney
Exec=kmymoney2
Comment=Personal Finance Manager
Comment[de]=Persönlicher Finanzassistent
Comment[fr]=
MimeType=application/x-kmymoney;application/vnd.intu.qfx;application/x-ofx
Type=Application
DocPath=kmymoney2/index.html
Icon=kmymoney2
MiniIcon=kmymoney2
ServiceTypes=
Categories=Office;Finance

[c0der@mycomp ~]$ freedesktop2menu.pl kmymoney2 "Office"
/usr/share/applications/kde/kmymoney2.desktop kmymoney.orig
I: found name: KMyMoney
I: found command: kmymoney2
I: found comment: Personal Finance Manager
I: found mimetype:
application/x-kmymoney;application/vnd.intu.qfx;application/x-ofx
I: found icon: kmymoney2
I: found hint: Office;Finance
Argument "text" isn't numeric in numeric eq (==) at
/usr/bin/freedesktop2menu.pl
line 128.
Argument "x11" isn't numeric in numeric eq (==) at /usr/bin/freedesktop2menu.pl
line 128.
Use of uninitialized value in concatenation (.) or string at
/usr/bin/freedesktop2menu.pl line 173.

[c0der@mycomp ~]$ cat kmymoney.orig
?package(kmymoney2): needs="x11" extra_filename="kmymoney2" section="Office"
title="KMyMoney" icon="kmymoney2.png" command="kmymoney2" genericname=""
longtitle="Personal Finance Manager"
mimetypes="application/x-kmymoney,application/vnd.intu.qfx,application/x-ofx"
hints="Office,Finance"
extra_opt="\\nDocPath=kmymoney2/index.html\\nMiniIcon=kmymoney2\\nServiceTypes="

[c0der@mycomp ~]$ ./freedesktop2menu.pl kmymoney2 "Office"
/usr/share/applications/kde/kmymoney2.desktop kmymoney.new
I: found name: KMyMoney
I: found command: kmymoney2
I: found comment: Personal Finance Manager
W: This should never happen: Ignoring Comment[fr]=
I: found mimetype:
application/x-kmymoney;application/vnd.intu.qfx;application/x-ofx
I: found icon: kmymoney2
W: This should never happen: Ignoring ServiceTypes=
I: found hint: Office;Finance

[c0der@mycomp ~]$ cat kmymoney.new
?package(kmymoney2):\
        needs="x11" \
        extra_filename="kmymoney2" \
        section="Office" \
        title="KMyMoney" \
        icon="kmymoney2.png" \
        command="kmymoney2" \
        longtitle="Personal Finance Manager" \

mimetypes="application/x-kmymoney,application/vnd.intu.qfx,application/x-ofx" \
        hints="Office,Finance" \

extra_mimetype="application/x-kmymoney,application/vnd.intu.qfx,application/x-ofx"
\
        extra_opt="\\nDocPath=kmymoney2/index.html\\nMiniIcon=kmymoney2" 

P.S. Еще я думаю, что неплохо было бы изменить имя макроса, вызывающего скрипт
freedesktop2menu.pl, потому что %Md2m как-то не очень понятен и не говорит сам
за себя :)
------- Comment #1 From 2005-09-13 09:41:57 -------
Created an attachment (id=1109) [details]
Патч для скрипта freedesktop2menu.pl

А ничего так перловочка, есть можно :)
------- Comment #2 From 2006-05-18 18:49:10 -------
код freedesktop2menu.pl почищен полностью :-)