Themis Action Editor

Various KDE 1.-4. Improvements

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net

0
Score 50.0%
Description:

Themis is a small application for the KDE Desktop which allows you to edit context menu entries in a simple way.

For running Themis the following libraries and programs are needed:
Ruby Interpreter, tested with version 1.8
Korundum KDE/Ruby bindings.

After unpacking, run themis_config to configure the program. For further information please take a look at: http://themis.contwise.com/php/documentation,14235,9267.html
Last changelog:

12 years ago

Release Candidate 1:
- Fixed bad display of pixmaps when dark themes are used.
- Dependent actions in same file are now updated in the UI when general properties are changed (submenu, etc.).
- Fixed crash when deleting an action
- Fixed problem with threads reported by users.

Beta 4:
- Fixed search bug introduced in beta 2.
- Fixed naming collision of class Config with ruby gems package.

Beta 3:
Fixed two crashes:
- If no global writeable servicemenu directory can be found during initial configuration
- If .desktop file can`t be deleted because of insufficient permissions.

Beta 2:
- Added the possibility to select the mime type whose actions should be displayed.
- Download has now a correct versioning name
- Small bugfixes.

plmegalo

12 years ago

well, as others, I've been late in writing the same tool ;) . I gave up, seeing yours seems pretty cool yet.

However, in my dev plan, I also intend to add the feature of a service menu that allow to add actions by right-clicking on applications or any executable component.
This would be a cool feature.

Is this possible to add to your project ?

Report

C

alterego

12 years ago

hi,

i'm not sure that i fully understand your request.

it should be possible with themis to right click any file, and to add new actions just for this mime type (should be automatically detected).

is this what you are looking for?

Report

usrshare

12 years ago

In the section [Desktop Entry]
There is no possibility to
1.) sort the actions
2.) add a separator via _SEPARATOR_
3.) add a icon for the Submenu

Report

C

alterego

12 years ago

hi,

nice ideas, i'll try to add them in the next release. sorting looks a bit tricky, because actions for one mime type are coming out of muliple files.
maybe sorting actions in one file is sufficient?

thanks for your input.

Report

usrshare

12 years ago

This is a cool extension. I also made a half attempt on a servicemenus editor.
But here is a annotation:
Isn't there a way to exclude the Bak-files ".desktop~" may by use regexp .*desktop$.

jk

Report

C

alterego

12 years ago

hi,

you are right, currently i'm using a simple 'if file.include? ".desktop"' check, so temp files are parsed too.

i'll fix that.

thx

Report

usrshare

12 years ago

file: action_reader.rb
line: 84
if file =~ /.*\.desktop$/

Report

usrshare

12 years ago

This is a cool extension. I also made a half attempt on a servicemenus editor.
But here is a annotation:
Isn't there a way to exclude the Bak-files ".desktop~" may by use regexp .*desktop$.

jk

Report

cherusker

13 years ago

thank you very much for this cool prog! I totally love it!!

Report

747419

13 years ago

No doubt this is a nice feature - only it doesn't work for me. Running 'sh themis_config' I simply agree with the presets, and 'edit Actions' does appear in my context menu, but when trying to change an entry, Themis hangs while trying to read the servicemenus-paths, progressbars remain at something beetween 1 and 10% and nothing happens at all. This does not change after adapting the permissions for the folder or even when running Themis as root.

I am running openSuSE 10.2 & KDE 3.5.6.

Any suggestions how to solve this?

Report

C

alterego

13 years ago

I assume that you've beta 4 installed. Please try the following:

Comment the lines 208,210,211,213 in the file themis.rb with a #. The method should look something like that:

def startInitThreads
#Thread.new do
initMimeTypes()
#end
#Thread.new do
initActions()
#end
end

After that could you just run themis.rb from the command line with: ruby -KU themis.rb /path/to/a/file.
Could you please post any console output.

Report

747419

13 years ago

There wasn't any console-output at all after commenting these lines, so I added a verbose-switch to your command:

Quote:kalle@linux-9asa:~/themis> ruby -KUv themis.rb /home/kalle
ruby 1.8.5 (2006-08-25) [i586-linux]
themis.rb:88: warning: method redefined; discarding old newPopupMenu
themis.rb:221: warning: instance variable @mainWin not initialized
kalle@linux-9asa:~/themis>

Commenting these lines did the trick! The paths are read okay, also the app itself seems to work good for both root and user, and even giving me more options than I was hoping for. Very well done, thank you!

Report

C

alterego

13 years ago

hi,

that's odd, but fine that it works.

just for curiosity, could you please uncomment the lines again, and look if there is any console output then?

thx.

Report

747419

13 years ago

There is no output refering to the bug until I close Themis after canceling reading the paths. Here it is:

Quote:kalle@linux-9asa:~/themis> ruby -KUv themis.rb /home/kalle
ruby 1.8.5 (2006-08-25) [i586-linux]
themis.rb:88: warning: method redefined; discarding old newPopupMenu
themis.rb:221: warning: instance variable @mainWin not initialized
themis.rb:428: warning: instance variable @actions not initialized
themis.rb:428:in `saveAndClose': undefined method `each' for nil:NilClass (NoMethodError)
from /usr/lib/ruby/1.8/KDE/korundum.rb:499:in `qt_invoke'
from /usr/lib/ruby/1.8/KDE/korundum.rb:499:in `method_missing'
from /usr/lib/ruby/1.8/KDE/korundum.rb:499:in `exec'
from themis.rb:558
Mutex destroy failure: Das Gerät oder die Ressource ist belegt
kalle@linux-9asa:~/themis>

Last lines says 'Device or ressource is busy'.

Report

Superstoned

13 years ago

very nice app, this was definitely something KDE needed.

Report

franzf

13 years ago

Hi,

It would be nice if you could append the current version to the source-tarball. So one can just download the newest version without renaming it. And I could write an ebuild ;)

Thx
Franz

Report

C

alterego

13 years ago

hi,

just uploaded beta 2 to sourceforge. the tarball has now a correct (i hope) version name.

Report

franzf

13 years ago

yes, thx, much better :)
But an error when starting (and my ruby isn't that good ;)):

------------------
./themis.rb
./config_ctrl.rb:30: Config is not a class (TypeError)
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require'
from /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `require'
from ./themis.rb:29
----------------------

I can't see any error in the lines mentioned.

I'm using Kurundum from the latest kde, ruby-1.8.5_p2, and latest qtruby.

Thx and have a nice Easteregg-ralley
Franz

Report

C

alterego

13 years ago

ruby gems seems to define a general module Config, themis also uses a class with that name.
i renamed the class, this should fix the error, it's already in beta 4 i just uploaded to sourceforge.

please note, it may take some time until the sourceforge mirrors catch up and the download is available.

Report

franzf

13 years ago

Thx, beta3 now seems to work :)

Report

blurymind

13 years ago

I can see that bringing more action services customisation to kde is working nicely the improvements in konq.
This is very simular to thunar's custom actions.

Now if someone manages to create a kcontrol module to manage the action menus and install and uninstall action menus from tarballs:
http://kde-apps.org/content/show.php/service+menu+management+to+kcontrol?content=37465

Report

C

alterego

13 years ago

ah, never saw this mockup.seems like we both had many similar ideas ;-)

kcontrol module would be an idea, but i've no idea how complicated this would be, and if it's doable easy with korundum.

i also thought about the service menu installation issue, but currently i don't know how to realize it, because many actions require a configure/make/make install cycle.

Report

12 years ago

Release Candidate 1:
- Fixed bad display of pixmaps when dark themes are used.
- Dependent actions in same file are now updated in the UI when general properties are changed (submenu, etc.).
- Fixed crash when deleting an action
- Fixed problem with threads reported by users.

Beta 4:
- Fixed search bug introduced in beta 2.
- Fixed naming collision of class Config with ruby gems package.

Beta 3:
Fixed two crashes:
- If no global writeable servicemenu directory can be found during initial configuration
- If .desktop file can`t be deleted because of insufficient permissions.

Beta 2:
- Added the possibility to select the mime type whose actions should be displayed.
- Download has now a correct versioning name
- Small bugfixes.

12345678910
product-maker Base: 4 x 5.0 Ratings
File (click to download) Version Description PackagetypeArchitecture Downloads Date Filesize DL OCS-Install MD5SUM
*Needs pling-store or ocs-url to install things
Pling
0 Affiliates
Details
license
version
1.0 Release RC 1
updated Dec 01 2007
added Apr 03 2007
downloads 24h
0
mediaviews 24h 0
pageviews 24h 2