chiku / mjwm Goto Github PK
View Code? Open in Web Editor NEWmjwm creates JWM application menu from (freedesktop) desktop files
License: GNU General Public License v2.0
mjwm creates JWM application menu from (freedesktop) desktop files
License: GNU General Public License v2.0
Backup the older output file with timestamp. The program summary should include the name of the backup file.
Hi, this was reported on the Puppy Linux forum:
One other thing I noticed was that if the category name was not followed by a ";", it was not found. Many of puppy's desktop files are missing that semicolon, if only a single category is there.
Provide an option to print a summary. The summary should say how many files it scanned and how many entries it created.
Don't repeat ./configure tests. Ensure that all lines in configure.ac are needed.
These five characters should be escaped in file name
Another issue reported on the Puppy Linux forum.
What the title says, e.g.:
rxvt -font 7x14 -bg "#c0c0c0" -fg
becomes:
rxvt -font 7x14 -bg "#c0c0c0" -fg
Don't add two file extensions. Common file extensions are png and xpm
FreeDesktop guidelines say that spaces may be present around equals sign. These spaces should be ignored
The output file should contain an XML comment that says it was autogenerated.
It should also state when the file was generated.
I think icon name is aplications-other instead of applications-others
static Subcategory Others() { return Subcategory("Others", "applications-others", "Others" ); }
In the current brunch, the tag name does not match the release. I think this is a typo.
This affects the following
--help
http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s06.html states that Exec key should accept field codes (like %f, %F, etc.). JWM doesn't handle these and breaks when trying to execute a command with a field code.
A menu generator for JWM should strip these field codes.
e.g. a distro might use both /usr/share/applications and /usr/local/share/applications
And sometimes a desktop environment environment like KDE keeps its .desktop files in its own folder.
In my case I have "applications" folders in all of these locations; I guess it should read these environment variables:
XDG_DATA_DIRS=/usr/local/share/:/usr/share/
XDG_DATA_HOME=/root/.local/share
It would also be nice if the -s option worked if you omit the trailing / (or at least gave an error message which indicated this as a possible problem):
# mjwm -s /usr/local/share/applications
Doesn't have any valid .desktop files: /usr/local/share/applications
The user should be able to override the list of categories.
Categories could be implemented as a colon terminated file.
Use FreeDesktop specifications for icons from http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
Build should be the standard three steps
configure
make
make install
autoreconf -i
and touch
es should not be necessary
Read LC_NAME and/or LANG environment variables
The FreeDesktop .desktop files include the name and description of the program in multiple languages.
Entries with same executable (name, icon & categories may be different) should be suppressed.
This will allow the command to accept long options in addition to short options.
mjwm -i /usr/share/applications:/usr/share/applications
should not generate duplicate entries
make install
should install the package
Pulled from #22
If you want to follow the spec (if I'm reading it correctly) it should recursively scan any subdirectories as well, e.g. /usr/share/applications/kde or /usr/share/applications/inputmethods
http://standards.freedesktop.org/menu-spec/menu-spec-1.0.html
These would be superseded by --iconize
Entries look like
Entries should look likeJWM doesn't fail on this missing tag.
Release the program under GPL
Backed ..SNIP../test-dir/ to ..SNIP../test-dir/.20141110075941.bak Couldn't open output file: ..SNIP../test-dir/
The directory ~/test-dir/.20141110075941.bak doesn't exist
Don't (try to) backup a directory.
libreoffice-writer.desktop looks like
[Desktop Entry]
# snip snip
Name=LibreOffice Writer
# snip snip
[Desktop Action NewDocument]
Name=New Document
# snip snip
mjwm v2.2.0 identifies it is New Document
The correct name should be LibreOffice Writer
Files that couldn't be opened should be reported as unparsed. Currently desktop files that aren't opened are ignored.
A file may be a broken symlink. This is one of the reasons a file couldn't be opened.
This options will kick in icon file search
This would reduce spurious as well as unclassified entries in the generated menu.
(Pulled out of #22)
It would also be nice if the -s option worked if you omit the trailing / (or at least gave an error message which indicated this as a possible problem):
# mjwm -s /usr/local/share/applications
Doesn't have any valid .desktop files: /usr/local/share/applications
The user should have an option to suppress the creation of backup files.
reference: #39
mjwm -o /boot/result
run as a normal user doesn't create /boot/result file. It passes silently.
mjwm should report a failure if it couldn't write to the output file.
Is there is a way to add separator(i.e. )?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.