summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--ranger/core/actions.py4
-rw-r--r--ranger/defaults/rc.conf47
2 files changed, 32 insertions, 19 deletions
diff --git a/ranger/core/actions.py b/ranger/core/actions.py
index 2bcfd72c..15e6dd74 100644
--- a/ranger/core/actions.py
+++ b/ranger/core/actions.py
@@ -700,10 +700,10 @@ class Actions(FileManagerAware, EnvironmentAware, SettingsAware):
 		if newtab != self.current_tab:
 			self.tab_open(newtab)
 
-	def tab_new(self):
+	def tab_new(self, path=None):
 		for i in range(1, 10):
 			if not i in self.tabs:
-				self.tab_open(i)
+				self.tab_open(i, path)
 				break
 
 	def _get_tab_list(self):
diff --git a/ranger/defaults/rc.conf b/ranger/defaults/rc.conf
index 61dd7bf6..aabdbb30 100644
--- a/ranger/defaults/rc.conf
+++ b/ranger/defaults/rc.conf
@@ -113,7 +113,9 @@ map gv cd /var
 map gm cd /media
 map gM cd /mnt
 map gs cd /srv
+map gr cd /
 map gR eval fm.cd(ranger.RANGERDIR)
+map g/ cd /
 
 # External Programs
 map E  edit
@@ -168,23 +170,25 @@ map cm search_next order=mtime
 map ca search_next order=atime
 
 # Tabs
-map <C-n>   chain tab_new; cd ~
-map <C-w>   tab_close
-map <TAB>   tab_move 1
-map <S-TAB> tab_move -1
-map gn      chain tab_new; cd ~
-map gc      tab_close
-map gt      tab_move 1
-map gT      tab_move -1
-map <a-1>   tab_open 1
-map <a-2>   tab_open 2
-map <a-3>   tab_open 3
-map <a-4>   tab_open 4
-map <a-5>   tab_open 5
-map <a-6>   tab_open 6
-map <a-7>   tab_open 7
-map <a-8>   tab_open 8
-map <a-9>   tab_open 9
+map <C-n>     tab_new ~
+map <C-w>     tab_close
+map <TAB>     tab_move 1
+map <S-TAB>   tab_move -1
+map <A-Right> tab_move 1
+map <A-Left>  tab_move -1
+map gt        tab_move 1
+map gT        tab_move -1
+map gn        tab_new ~
+map gc        tab_close
+map <a-1>     tab_open 1
+map <a-2>     tab_open 2
+map <a-3>     tab_open 3
+map <a-4>     tab_open 4
+map <a-5>     tab_open 5
+map <a-6>     tab_open 6
+map <a-7>     tab_open 7
+map <a-8>     tab_open 8
+map <a-9>     tab_open 9
 
 # Sorting
 map or eval fm.settings.sort_reverse ^= True
@@ -240,6 +244,7 @@ eval import itertools; [cmd("map -%s%s shell -d chmod %s-%s %%s" % (mode+mode))
 # ===================================================================
 # == Define keys for the console
 # ===================================================================
+# Note: Unmapped keys are passed directly to the console.
 
 # Basic
 cmap <tab>   eval fm.ui.console.tab()
@@ -293,29 +298,37 @@ pmap j       eval -q fm.ui.browser.pager.move(down=1)
 pmap k       eval -q fm.ui.browser.pager.move(up=1)
 pmap gg      eval -q fm.ui.browser.pager.move(down=0, absolute=True)
 pmap G       eval -q fm.ui.browser.pager.move(down=-1, absolute=True)
+pmap <cr>    eval -q fm.ui.browser.pager.move(down=1)
 pmap <down>  eval -q fm.ui.browser.pager.move(down=1)
 pmap <up>    eval -q fm.ui.browser.pager.move(up=1)
 pmap <home>  eval -q fm.ui.browser.pager.move(down=0, absolute=True)
 pmap <end>   eval -q fm.ui.browser.pager.move(down=-1, absolute=True)
+pmap <C-n>   eval -q fm.ui.browser.pager.move(down=1)
+pmap <C-p>   eval -q fm.ui.browser.pager.move(up=1)
 
 pmap d          eval -q fm.ui.browser.pager.move(down=0.5, pages=True)
 pmap <C-d>      eval -q fm.ui.browser.pager.move(down=0.5, pages=True)
 pmap u          eval -q fm.ui.browser.pager.move(up=  0.5, pages=True)
 pmap <C-u>      eval -q fm.ui.browser.pager.move(up=  0.5, pages=True)
 pmap n          eval -q fm.ui.browser.pager.move(down=1.0, pages=True)
+pmap f          eval -q fm.ui.browser.pager.move(down=1.0, pages=True)
 pmap <pagedown> eval -q fm.ui.browser.pager.move(down=1.0, pages=True)
 pmap p          eval -q fm.ui.browser.pager.move(up=  1.0, pages=True)
+pmap b          eval -q fm.ui.browser.pager.move(up=  1.0, pages=True)
 pmap <pageup>   eval -q fm.ui.browser.pager.move(up=  1.0, pages=True)
+pmap <space>    eval -q fm.ui.browser.pager.move(down=0.8, pages=True)
 
 pmap h       eval -q fm.ui.browser.pager.move(left=4)
 pmap l       eval -q fm.ui.browser.pager.move(right=4)
 pmap <left>  eval -q fm.ui.browser.pager.move(left=4)
 pmap <right> eval -q fm.ui.browser.pager.move(right=4)
 
+# Basic
 pmap q      eval -q fm.ui.close_pager(); fm.ui.close_embedded_pager()
 pmap i      eval -q fm.ui.close_pager(); fm.ui.close_embedded_pager()
 pmap <ESC>  eval -q fm.ui.close_pager(); fm.ui.close_embedded_pager()
 pmap <F3>   eval -q fm.ui.close_pager(); fm.ui.close_embedded_pager()
+pmap E      edit_file
 
 # ===================================================================
 # == Taskview Keybindings