Advertisement
Guest User

rc.conf

a guest
Aug 4th, 2013
294
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 16.78 KB | None | 0 0
  1. # ===================================================================
  2. # This file contains the default startup commands for ranger.
  3. # To change them, it is recommended to create the file
  4. # ~/.config/ranger/rc.conf and add your custom commands there.
  5. #
  6. # If you copy this whole file there, you may want to set the environment
  7. # variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice.
  8. #
  9. # The purpose of this file is mainly to define keybindings and settings.
  10. # For running more complex python code, please create a plugin in "plugins/" or
  11. # a command in "commands.py".
  12. #
  13. # Each line is a command that will be run before the user interface
  14. # is initialized.  As a result, you can not use commands which rely
  15. # on the UI such as :delete or :mark.
  16. # ===================================================================
  17.  
  18. # ===================================================================
  19. # == Options
  20. # ===================================================================
  21.  
  22. # How many columns are there, and what are their relative widths?
  23. set column_ratios (5, 3)
  24.  
  25. # Which files should be hidden? (regular expression)
  26. set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
  27.  
  28. # Show hidden files? You can toggle this by typing 'zh'
  29. set show_hidden false
  30.  
  31. # Ask for a confirmation when running the "delete" command?
  32. # Valid values are "always" (default), "never", "multiple"
  33. # With "multiple", ranger will ask only if you delete multiple files at once.
  34. set confirm_on_delete multiple
  35.  
  36. # Which script is used to generate file previews?
  37. # ranger ships with scope.sh, a script that calls external programs (see
  38. # README for dependencies) to preview images, archives, etc.
  39. set preview_script ~/.config/ranger/scope.sh
  40.  
  41. # Use the external preview script or display simple plain text previews?
  42. set use_preview_script true
  43.  
  44. # Open all images in this directory when running certain image viewers
  45. # like feh or sxiv?  You can still open selected files by marking them.
  46. set open_all_images true
  47.  
  48. # Be aware of version control systems and display information.
  49. set vcs_aware false
  50.  
  51. # State of the three backends git, hg, bzr. The possible states are
  52. # disabled, local (only show local info), enabled (show local and remote
  53. # information).
  54. set vcs_backend_git enabled
  55. set vcs_backend_hg disabled
  56. set vcs_backend_bzr disabled
  57.  
  58. # Preview images in full color with the external command "w3mimgpreview"?
  59. # This requires the console web browser "w3m" and a supported terminal.
  60. # It has been successfully tested with "xterm" and "urxvt" without tmux.
  61. set preview_images true
  62.  
  63. # Use a unicode "..." character to mark cut-off filenames?
  64. set unicode_ellipsis false
  65.  
  66. # Show dotfiles in the bookmark preview box?
  67. set show_hidden_bookmarks true
  68.  
  69. # Which colorscheme to use?  These colorschemes are available by default:
  70. # default, jungle, snow
  71. set colorscheme classytouch
  72.  
  73. # Preview files on the rightmost column?
  74. # And collapse (shrink) the last column if there is nothing to preview?
  75. set preview_files true
  76. set preview_directories true
  77. set collapse_preview true
  78.  
  79. # Save the console history on exit?
  80. set save_console_history true
  81.  
  82. # Draw the status bar on top of the browser window (default: bottom)
  83. set status_bar_on_top false
  84.  
  85. # Draw a progress bar in the status bar which displays the average state of all
  86. # currently running tasks which support progress bars?
  87. set draw_progress_bar_in_status_bar true
  88.  
  89. # Draw borders around columns?
  90. set draw_borders true
  91.  
  92. # Display the directory name in tabs?
  93. set dirname_in_tabs false
  94.  
  95. # Enable the mouse support?
  96. set mouse_enabled false
  97.  
  98. # Display the file size in the main column or status bar?
  99. set display_size_in_main_column true
  100. set display_size_in_status_bar false
  101.  
  102. # Display files tags in all columns or only in main column?
  103. set display_tags_in_all_columns false
  104.  
  105. # Set a title for the window?
  106. set update_title true
  107.  
  108. # Set the title to "ranger" in the tmux program?
  109. set update_tmux_title false
  110.  
  111. # Shorten the title if it gets long?  The number defines how many
  112. # directories are displayed at once, 0 turns off this feature.
  113. set shorten_title 3
  114.  
  115. # Abbreviate $HOME with ~ in the titlebar (first line) of ranger?
  116. set tilde_in_titlebar false
  117.  
  118. # How many directory-changes or console-commands should be kept in history?
  119. set max_history_size 20
  120. set max_console_history_size 50
  121.  
  122. # Try to keep so much space between the top/bottom border when scrolling:
  123. set scroll_offset 8
  124.  
  125. # Flush the input after each key hit?  (Noticable when ranger lags)
  126. set flushinput true
  127.  
  128. # Padding on the right when there's no preview?
  129. # This allows you to click into the space to run the file.
  130. set padding_right false
  131.  
  132. # Save bookmarks (used with mX and `X) instantly?
  133. # This helps to synchronize bookmarks between multiple ranger
  134. # instances but leads to *slight* performance loss.
  135. # When false, bookmarks are saved when ranger is exited.
  136. set autosave_bookmarks true
  137.  
  138. # You can display the "real" cumulative size of directories by using the
  139. # command :get_cumulative_size or typing "dc".  The size is expensive to
  140. # calculate and will not be updated automatically.  You can choose
  141. # to update it automatically though by turning on this option:
  142. set autoupdate_cumulative_size false
  143.  
  144. # Turning this on makes sense for screen readers:
  145. set show_cursor false
  146.  
  147. # One of: size, basename, mtime, type
  148. set sort natural
  149.  
  150. # Additional sorting options
  151. set sort_reverse false
  152. set sort_case_insensitive true
  153. set sort_directories_first true
  154.  
  155. # Enable this if key combinations with the Alt Key don't work for you.
  156. # (Especially on xterm)
  157. set xterm_alt_key false
  158.  
  159. # ===================================================================
  160. # == Local Options
  161. # ===================================================================
  162. # You can set local options that only affect a single directory.
  163.  
  164. # Examples:
  165. # setlocal path=~/downloads sort mtime
  166.  
  167. # ===================================================================
  168. # == Command Aliases in the Console
  169. # ===================================================================
  170.  
  171. alias e    edit
  172. alias q    quit
  173. alias q!   quitall
  174. alias qall quitall
  175. alias setl setlocal
  176.  
  177. alias filter     scout -prt
  178. alias find       scout -aet
  179. alias mark       scout -mr
  180. alias unmark     scout -Mr
  181. alias search     scout -rs
  182. alias search_inc scout -rts
  183. alias travel     scout -aefiklst
  184.  
  185. # ===================================================================
  186. # == Define keys for the browser
  187. # ===================================================================
  188.  
  189. # Basic
  190. map     Q quit!
  191. map     q quit
  192. copymap q ZZ ZQ
  193.  
  194. map R     reload_cwd
  195. map <C-r> reset
  196. map <C-l> redraw_window
  197. map <C-c> abort
  198. map <esc> change_mode normal
  199.  
  200. map i display_file
  201. map ? help
  202. map W display_log
  203. map w taskview_open
  204. map S shell $SHELL
  205.  
  206. map :  console
  207. map ;  console
  208. map !  console shell
  209. map @  console -p6 shell  %%s
  210. map #  console shell -p
  211. map s  console shell
  212. map r  chain draw_possible_programs; console open_with
  213. map f  console find
  214. map cd console cd
  215.  
  216. # Tagging / Marking
  217. map t       tag_toggle
  218. map ut      tag_remove
  219. map "<any>  tag_toggle tag=%any
  220. map <Space> mark_files toggle=True
  221. map v       mark_files all=True toggle=True
  222. map uv      mark_files all=True val=False
  223. map V       toggle_visual_mode
  224. map uV      toggle_visual_mode reverse=True
  225.  
  226. # For the nostalgics: Midnight Commander bindings
  227. map <F1> help
  228. map <F3> display_file
  229. map <F4> edit
  230. map <F5> copy
  231. map <F6> cut
  232. map <F7> console mkdir
  233. map <F8> console delete
  234. map <F10> exit
  235.  
  236. # In case you work on a keyboard with dvorak layout
  237. map <UP>       move up=1
  238. map <DOWN>     move down=1
  239. map <LEFT>     move left=1
  240. map <RIGHT>    move right=1
  241. map <HOME>     move to=0
  242. map <END>      move to=-1
  243. map <PAGEDOWN> move down=1   pages=True
  244. map <PAGEUP>   move up=1     pages=True
  245. map <CR>       move right=1
  246. map <DELETE>   console delete
  247. map <INSERT>   console touch
  248.  
  249. # VIM-like
  250. copymap <UP>       k
  251. copymap <DOWN>     j
  252. copymap <LEFT>     h
  253. copymap <RIGHT>    l
  254. copymap <HOME>     gg
  255. copymap <END>      G
  256. copymap <PAGEDOWN> <C-F>
  257. copymap <PAGEUP>   <C-B>
  258.  
  259. map J  move down=0.5  pages=True
  260. map K  move up=0.5    pages=True
  261. copymap J <C-D>
  262. copymap K <C-U>
  263.  
  264. # Jumping around
  265. map H     history_go -1
  266. map L     history_go 1
  267. map ]     move_parent 1
  268. map [     move_parent -1
  269. map }     traverse
  270.  
  271. map gh cd ~
  272. map ge cd /etc
  273. map gu cd /usr
  274. map gd cd /dev
  275. map gl cd -r .
  276. map gL cd -r %f
  277. map go cd /opt
  278. map gv cd /var
  279. map gm cd /media
  280. map gM cd /mnt
  281. map gs cd /srv
  282. map gr cd /
  283. map gR eval fm.cd(ranger.RANGERDIR)
  284. map g/ cd /
  285. map g? cd /usr/share/doc/ranger
  286.  
  287. # External Programs
  288. map E  edit
  289. map du shell -p du --max-depth=1 -h --apparent-size
  290. map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh
  291. map yp shell -d echo -n %d/%f | xsel -i
  292. map yd shell -d echo -n %d    | xsel -i
  293. map yn shell -d echo -n %f    | xsel -i
  294.  
  295. # Filesystem Operations
  296. map =  chmod
  297.  
  298. map cw console rename
  299. map A  eval fm.open_console('rename ' + fm.thisfile.basename)
  300. map I  eval fm.open_console('rename ' + fm.thisfile.basename, position=7)
  301.  
  302. map pp paste
  303. map po paste overwrite=True
  304. map pl paste_symlink relative=False
  305. map pL paste_symlink relative=True
  306. map phl paste_hardlink
  307. map pht paste_hardlinked_subtree
  308.  
  309. map dd cut
  310. map ud uncut
  311. map da cut mode=add
  312. map dr cut mode=remove
  313.  
  314. map yy copy
  315. map uy uncut
  316. map ya copy mode=add
  317. map yr copy mode=remove
  318.  
  319. # Temporary workarounds
  320. map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier)
  321. map dG  eval fm.cut(dirarg=dict(to=-1), narg=quantifier)
  322. map dj  eval fm.cut(dirarg=dict(down=1), narg=quantifier)
  323. map dk  eval fm.cut(dirarg=dict(up=1), narg=quantifier)
  324. map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier)
  325. map yG  eval fm.copy(dirarg=dict(to=-1), narg=quantifier)
  326. map yj  eval fm.copy(dirarg=dict(down=1), narg=quantifier)
  327. map yk  eval fm.copy(dirarg=dict(up=1), narg=quantifier)
  328.  
  329. # Searching
  330. map /  console search
  331. map n  search_next
  332. map N  search_next forward=False
  333. map ct search_next order=tag
  334. map cs search_next order=size
  335. map ci search_next order=mimetype
  336. map cc search_next order=ctime
  337. map cm search_next order=mtime
  338. map ca search_next order=atime
  339.  
  340. # Tabs
  341. map <C-n>     tab_new ~
  342. map <C-w>     tab_close
  343. map <TAB>     tab_move 1
  344. map <S-TAB>   tab_move -1
  345. map <A-Right> tab_move 1
  346. map <A-Left>  tab_move -1
  347. map gt        tab_move 1
  348. map gT        tab_move -1
  349. map gn        tab_new ~
  350. map gc        tab_close
  351. map uq        tab_restore
  352. map <a-1>     tab_open 1
  353. map <a-2>     tab_open 2
  354. map <a-3>     tab_open 3
  355. map <a-4>     tab_open 4
  356. map <a-5>     tab_open 5
  357. map <a-6>     tab_open 6
  358. map <a-7>     tab_open 7
  359. map <a-8>     tab_open 8
  360. map <a-9>     tab_open 9
  361.  
  362. # Sorting
  363. map or toggle_option sort_reverse
  364. map os chain set sort=size;      set sort_reverse=False
  365. map ob chain set sort=basename;  set sort_reverse=False
  366. map on chain set sort=natural;   set sort_reverse=False
  367. map om chain set sort=mtime;     set sort_reverse=False
  368. map oc chain set sort=ctime;     set sort_reverse=False
  369. map oa chain set sort=atime;     set sort_reverse=False
  370. map ot chain set sort=type;      set sort_reverse=False
  371.  
  372. map oS chain set sort=size;      set sort_reverse=True
  373. map oB chain set sort=basename;  set sort_reverse=True
  374. map oN chain set sort=natural;   set sort_reverse=True
  375. map oM chain set sort=mtime;     set sort_reverse=True
  376. map oC chain set sort=ctime;     set sort_reverse=True
  377. map oA chain set sort=atime;     set sort_reverse=True
  378. map oT chain set sort=type;      set sort_reverse=True
  379.  
  380. map dc get_cumulative_size
  381.  
  382. # Settings
  383. map zc    toggle_option collapse_preview
  384. map zd    toggle_option sort_directories_first
  385. map zh    toggle_option show_hidden
  386. map <C-h> toggle_option show_hidden
  387. map zi    toggle_option flushinput
  388. map zm    toggle_option mouse_enabled
  389. map zp    toggle_option preview_files
  390. map zP    toggle_option preview_directories
  391. map zs    toggle_option sort_case_insensitive
  392. map zu    toggle_option autoupdate_cumulative_size
  393. map zv    toggle_option use_preview_script
  394. map zf    console filter
  395.  
  396. # Bookmarks
  397. map `<any>  enter_bookmark %any
  398. map '<any>  enter_bookmark %any
  399. map m<any>  set_bookmark %any
  400. map um<any> unset_bookmark %any
  401.  
  402. map m<bg>   draw_bookmarks
  403. copymap m<bg>  um<bg> `<bg> '<bg>
  404.  
  405. # Generate all the chmod bindings with some python help:
  406. eval for arg in "rwxXst": cmd("map +u{0} shell -d chmod u+{0} %s".format(arg))
  407. eval for arg in "rwxXst": cmd("map +g{0} shell -d chmod g+{0} %s".format(arg))
  408. eval for arg in "rwxXst": cmd("map +o{0} shell -d chmod o+{0} %s".format(arg))
  409. eval for arg in "rwxXst": cmd("map +a{0} shell -d chmod a+{0} %s".format(arg))
  410. eval for arg in "rwxXst": cmd("map +{0}  shell -d chmod u+{0} %s".format(arg))
  411.  
  412. eval for arg in "rwxXst": cmd("map -u{0} shell -d chmod u-{0} %s".format(arg))
  413. eval for arg in "rwxXst": cmd("map -g{0} shell -d chmod g-{0} %s".format(arg))
  414. eval for arg in "rwxXst": cmd("map -o{0} shell -d chmod o-{0} %s".format(arg))
  415. eval for arg in "rwxXst": cmd("map -a{0} shell -d chmod a-{0} %s".format(arg))
  416. eval for arg in "rwxXst": cmd("map -{0}  shell -d chmod u-{0} %s".format(arg))
  417.  
  418. # ===================================================================
  419. # == Define keys for the console
  420. # ===================================================================
  421. # Note: Unmapped keys are passed directly to the console.
  422.  
  423. # Basic
  424. cmap <tab>   eval fm.ui.console.tab()
  425. cmap <s-tab> eval fm.ui.console.tab(-1)
  426. cmap <ESC>   eval fm.ui.console.close()
  427. cmap <CR>    eval fm.ui.console.execute()
  428. cmap <C-l>   redraw_window
  429.  
  430. copycmap <ESC> <C-c>
  431. copycmap <CR>  <C-j>
  432.  
  433. # Move around
  434. cmap <up>    eval fm.ui.console.history_move(-1)
  435. cmap <down>  eval fm.ui.console.history_move(1)
  436. cmap <left>  eval fm.ui.console.move(left=1)
  437. cmap <right> eval fm.ui.console.move(right=1)
  438. cmap <home>  eval fm.ui.console.move(right=0, absolute=True)
  439. cmap <end>   eval fm.ui.console.move(right=-1, absolute=True)
  440.  
  441. # Line Editing
  442. cmap <backspace>  eval fm.ui.console.delete(-1)
  443. cmap <delete>     eval fm.ui.console.delete(0)
  444. cmap <C-w>        eval fm.ui.console.delete_word()
  445. cmap <C-k>        eval fm.ui.console.delete_rest(1)
  446. cmap <C-u>        eval fm.ui.console.delete_rest(-1)
  447. cmap <C-y>        eval fm.ui.console.paste()
  448.  
  449. # And of course the emacs way
  450. copycmap <up>        <C-p>
  451. copycmap <down>      <C-n>
  452. copycmap <left>      <C-b>
  453. copycmap <right>     <C-f>
  454. copycmap <home>      <C-a>
  455. copycmap <end>       <C-e>
  456. copycmap <delete>    <C-d>
  457. copycmap <backspace> <C-h>
  458.  
  459. # Note: There are multiple ways to express backspaces.  <backspace> (code 263)
  460. # and <backspace2> (code 127).  To be sure, use both.
  461. copycmap <backspace> <backspace2>
  462.  
  463. # This special expression allows typing in numerals:
  464. cmap <allow_quantifiers> false
  465.  
  466. # ===================================================================
  467. # == Pager Keybindings
  468. # ===================================================================
  469.  
  470. # Movement
  471. pmap  <down>      pager_move  down=1
  472. pmap  <up>        pager_move  up=1
  473. pmap  <left>      pager_move  left=4
  474. pmap  <right>     pager_move  right=4
  475. pmap  <home>      pager_move  to=0
  476. pmap  <end>       pager_move  to=-1
  477. pmap  <pagedown>  pager_move  down=1.0  pages=True
  478. pmap  <pageup>    pager_move  up=1.0    pages=True
  479. pmap  <C-d>       pager_move  down=0.5  pages=True
  480. pmap  <C-u>       pager_move  up=0.5    pages=True
  481.  
  482. copypmap <UP>       k  <C-p>
  483. copypmap <DOWN>     j  <C-n> <CR>
  484. copypmap <LEFT>     h
  485. copypmap <RIGHT>    l
  486. copypmap <HOME>     g
  487. copypmap <END>      G
  488. copypmap <C-d>      d
  489. copypmap <C-u>      u
  490. copypmap <PAGEDOWN> n  f  <C-F>  <Space>
  491. copypmap <PAGEUP>   p  b  <C-B>
  492.  
  493. # Basic
  494. pmap     <ESC> pager_close
  495. copypmap <ESC> q Q i <F3>
  496. pmap E      edit_file
  497.  
  498. # ===================================================================
  499. # == Taskview Keybindings
  500. # ===================================================================
  501.  
  502. # Movement
  503. tmap <up>        taskview_move up=1
  504. tmap <down>      taskview_move down=1
  505. tmap <home>      taskview_move to=0
  506. tmap <end>       taskview_move to=-1
  507. tmap <pagedown>  taskview_move down=1.0  pages=True
  508. tmap <pageup>    taskview_move up=1.0    pages=True
  509. tmap <C-d>       taskview_move down=0.5  pages=True
  510. tmap <C-u>       taskview_move up=0.5    pages=True
  511.  
  512. copytmap <UP>       k  <C-p>
  513. copytmap <DOWN>     j  <C-n> <CR>
  514. copytmap <HOME>     g
  515. copytmap <END>      G
  516. copytmap <C-u>      u
  517. copytmap <PAGEDOWN> n  f  <C-F>  <Space>
  518. copytmap <PAGEUP>   p  b  <C-B>
  519.  
  520. # Changing priority and deleting tasks
  521. tmap J          eval -q fm.ui.taskview.task_move(-1)
  522. tmap K          eval -q fm.ui.taskview.task_move(0)
  523. tmap dd         eval -q fm.ui.taskview.task_remove()
  524. tmap <pagedown> eval -q fm.ui.taskview.task_move(-1)
  525. tmap <pageup>   eval -q fm.ui.taskview.task_move(0)
  526. tmap <delete>   eval -q fm.ui.taskview.task_remove()
  527.  
  528. # Basic
  529. tmap <ESC> taskview_close
  530. copytmap <ESC> q Q w <C-c>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement