summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--ranger/api/apps.py4
-rw-r--r--ranger/gui/widgets/console.py3
2 files changed, 6 insertions, 1 deletions
diff --git a/ranger/api/apps.py b/ranger/api/apps.py
index eadc0839..e61b5e2c 100644
--- a/ranger/api/apps.py
+++ b/ranger/api/apps.py
@@ -78,6 +78,8 @@ class Applications(FileManagerAware):
 			try:
 				application_handler = getattr(self, 'app_' + app)
 			except AttributeError:
+				if app in self.fm.executables:
+					return tup(app, *context)
 				continue
 			if self._meets_dependencies(application_handler):
 				return application_handler(context)
@@ -99,6 +101,8 @@ class Applications(FileManagerAware):
 		try:
 			handler = getattr(self, 'app_' + app)
 		except AttributeError:
+			if app in self.fm.executables:
+				return tup(app, *context)  # generic app
 			handler = self.app_default
 		return handler(context)
 
diff --git a/ranger/gui/widgets/console.py b/ranger/gui/widgets/console.py
index 20753fbf..f9e4924c 100644
--- a/ranger/gui/widgets/console.py
+++ b/ranger/gui/widgets/console.py
@@ -577,7 +577,8 @@ class QuickOpenConsole(ConsoleWithTab):
 
 
 	def _is_app(self, arg):
-		return self.fm.apps.has(arg)
+		return self.fm.apps.has(arg) or \
+			(not self._is_flags(arg) and arg in self.fm.executables)
 
 	def _is_flags(self, arg):
 		from ranger.core.runner import ALLOWED_FLAGS