summary refs log tree commit diff stats
path: root/data/apps.rb
diff options
context:
space:
mode:
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
+