summary refs log tree commit diff stats
path: root/data/apps.rb
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2009-06-13 02:20:46 +0200
committerhut <hut@lavabit.com>2009-06-13 02:20:46 +0200
commit2887ca25fb58362d5d644ecda5f0bc51c80ec404 (patch)
treeb066f5542d97b1a4a9134d0910692b873fe32363 /data/apps.rb
parent325ec37f65172b5b640d998eba300d86d1ddbfa5 (diff)
downloadranger-2887ca25fb58362d5d644ecda5f0bc51c80ec404.tar.gz
rewrite of the way files are executed, easier config
Diffstat (limited to 'data/apps.rb')
-rw-r--r--data/apps.rb58
1 files changed, 58 insertions, 0 deletions
diff --git a/data/apps.rb b/data/apps.rb
new file mode 100644
index 00000000..6ba7f44b
--- /dev/null
+++ b/data/apps.rb
@@ -0,0 +1,58 @@
+module Application
+	def mplayer(rc)
+		check rc
+
+		rc.default_flags = 'd'
+
+		if rc.no_mode?
+			rc.mode = (rc.name =~ /720p/) ? 2 : 1
+		end
+
+		case rc.mode
+		when 1; "mplayer -fs -sid 0 #{~rc}"
+		when 2; "mplayer -sid 0 #{~rc}"
+		when 3; "mplayer -vm sdl -sid 0 #{~rc}"
+		else nil end
+	end
+
+	def evince(rc)
+		check rc
+		"evince #{~rc}"
+	end
+
+	def feh(rc)
+		check rc
+		case rc.mode
+		when 4; "feh --bg-scale #{~rc.first}"
+		when 5; "feh --bg-tile #{~rc.first}"
+		when 6; "feh --bg-center #{~rc.first}"
+		when 2; "gimp #{~rc}"
+		when 1; "feh -F #{~rc}"
+		else "feh #{~rc}"
+		end
+	end
+
+	def interpreted_language(rc)
+		check rc
+		case rc.mode
+		when 1; "./#{~rc.first}"
+		when 0; vi(rc)
+		else nil end
+	end
+
+	def zsnes(rc)
+		check rc
+		"zsnes #{~rc.first}"
+	end
+
+	def vi(rc)
+		commands = [
+			'map h :quit<cr>',
+			'map q h',
+			'map H :unmap h<CR>:unmap H<CR>:unmap q<CR>',
+		].map {|x| "+'#{x}'"}.join(' ')
+
+		"vi #{commands} #{~rc}"
+	end
+end
+