spacemacs/layers/+tools/ranger/README.org
2018-10-11 00:13:43 +03:00

156 lines
5.6 KiB
Org Mode
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#+TITLE: Ranger layer
* Table of Contents :TOC_4_gh:noexport:
- [[#description][Description]]
- [[#features][Features:]]
- [[#configuration][Configuration]]
- [[#customizing][Customizing]]
- [[#parent-options][Parent options]]
- [[#preview-options][Preview options]]
- [[#key-bindings][Key Bindings]]
* Description
This layer brings Ranger features to spacemacs from the =ranger= package.
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =ranger= to the existing =dotspacemacs-configuration-layers= list in this
file.
To default with preview enabled when entering ranger:
#+BEGIN_SRC emacs-lisp
(setq-default dotspacemacs-configuration-layers
'(ranger :variables
ranger-show-preview t))
#+END_SRC
** Features:
- use ranger to display dired with ranger like preview and stacked parent windows.
* Configuration
Most parameters can be toggled on and off and stay within the current emacs
session. Any settings that are desired on startup should be set below.
** Customizing
You toggle the use of =-= to enter ranger with `ranger-enter-with-minus`.
#+BEGIN_SRC elisp
(setq ranger-enter-with-minus t)
#+END_SRC
When disabling the mode you can choose to kill the buffers that were opened
while browsing the directories.
#+BEGIN_SRC elisp
(setq ranger-cleanup-on-disable t)
#+END_SRC
Or you can choose to kill the buffer just after you move to another entry in the
dired buffer.
#+BEGIN_SRC elisp
(setq ranger-cleanup-eagerly t)
#+END_SRC
You can choose to show dotfiles at ranger startup, toggled by =zh=
#+BEGIN_SRC elisp
(setq ranger-show-hidden t)
#+END_SRC
Define custom function used to output header of primary ranger window. Must
return a string that is placed in the header-line.
#+BEGIN_SRC elisp
(setq ranger-header-func 'ranger-header-line)
#+END_SRC
Define custom function used to output header of parent and preview windows. Must
return a string that is placed in the header-line.
#+BEGIN_SRC elisp
(setq ranger-parent-header-func 'ranger-parent-header-line)
#+END_SRC
** Parent options
You can set the number of folders to nest to the left, adjusted by =z-= and =z+=
#+BEGIN_SRC elisp
(setq ranger-parent-depth 2)
#+END_SRC
You can set the size of the parent windows as a fraction of the frame size
#+BEGIN_SRC elisp
(setq ranger-width-parents 0.12)
#+END_SRC
When increasing number of nested parent folders, set max width as fraction of
frame size to prevent filling up entire frame with parents.
#+BEGIN_SRC elisp
(setq ranger-max-parent-width 0.12)
#+END_SRC
** Preview options
You can choose to show previews literally, or through find-file, toggled by =zi=
#+BEGIN_SRC elisp
(setq ranger-show-literal t)
#+END_SRC
You can set the size of the preview windows as a fraction of the frame size
#+BEGIN_SRC elisp
(setq ranger-width-preview 0.55)
#+END_SRC
You probably dont want to open certain files like videos when using preview. To
ignore certain files when moving over them you can customize the following to
your liking:
#+BEGIN_SRC elisp
(setq ranger-ignored-extensions '("mkv" "iso" "mp4"))
#+END_SRC
To set the max files size (in MB), set the following parameter:
#+BEGIN_SRC elisp
(setq ranger-max-preview-size 10)
#+END_SRC
* Key Bindings
| Key Binding | Description |
|-----------------+------------------------------------------------------|
| ~SPC a r~ | launch ranger |
| ~SPC a d~ | deer (minimal ranger window in current directory) |
| ~C-p~ | (ranger) toggle ranger in dired buffer |
| ~j~ | (ranger) navigate down |
| ~k~ | (ranger) navigate up |
| ~yy~ | (ranger) copy |
| ~pp~ | (ranger) paste |
| ~R~ | (ranger) rename |
| ~D~ | (ranger) delete |
| ~C-j~ | (ranger) scroll preview window down |
| ~C-k~ | (ranger) scroll preview window up |
| ~f~ | (ranger) search for file names |
| ~i~ | (ranger) show preview of current file |
| ~zi~ | (ranger) toggle showing literal / full-text previews |
| ~zh~ | (ranger) toggle showing dotfiles |
| ~o~ | (ranger) sort options |
| ~H~ | (ranger) search through history |
| ~h~ | (ranger) go up directory |
| ~l~ | (ranger) find file / enter directory |
| ~RET~ | (ranger) find file / enter directory |
| ~q~ | (ranger) quit |
| ~;g~ | (ranger) revert buffer |
| ~z-~ | (ranger) reduce number of parents |
| ~z+~ | (ranger) increment number of parents |
| ~C-SPC~ / ~TAB~ | (ranger) mark current file |
| ~v~ | (ranger) toggle all marks |
| ~t~ | (ranger) toggle mark current file |
| ~S~ | (ranger) enter shell |
| ~;C~ | (ranger) copy directory / copy and move directory |
| ~;+~ | (ranger) create directory |