summary refs log tree commit diff stats
path: root/commands
Commit message (Expand)AuthorAgeFilesLines
* Add basic filter implementationDrew DeVault2019-03-311-1/+1
* Rename FetchMessageBodies to FetchFullMessagesDrew DeVault2019-03-311-1/+1
* Make the message viewer real, part oneDrew DeVault2019-03-312-3/+27
* Don't parse mail in worker; send a reader insteadDrew DeVault2019-03-312-34/+2
* Add message view commands, :closeDrew DeVault2019-03-303-4/+38
* Add basic message viewer mockupDrew DeVault2019-03-303-8/+6
* Correct color of error messagesDrew DeVault2019-03-302-5/+5
* Implement :pipeDrew DeVault2019-03-302-0/+74
* Add body fetching support codeDrew DeVault2019-03-291-0/+29
* Add terminal command contextDrew DeVault2019-03-212-4/+19
* Add context-specific commandsDrew DeVault2019-03-2113-30/+72
* Implement :delete-messageDrew DeVault2019-03-201-0/+25
* s/:term-close/:close/gDrew DeVault2019-03-171-2/+3
* Wrap Terminal in TermHostDrew DeVault2019-03-172-19/+6
* Add :term-closeDrew DeVault2019-03-172-2/+40
* Handle terminal title, login shellDrew DeVault2019-03-171-5/+16
* Implement :next-tab, :prev-tabDrew DeVault2019-03-171-0/+42
* Move exline handling up to aerc, add :termDrew DeVault2019-03-171-0/+33
* commands: handle case where no account selectedDrew DeVault2019-03-174-0/+12
* Implement :select-messageDrew DeVault2019-03-151-0/+31
* Fix usage message for :next-messageDrew DeVault2019-03-151-1/+1
* Implement :next-message n%Drew DeVault2019-03-151-1/+10
* Add :quit commandDrew DeVault2019-03-151-0/+24
* Fix help string for :cdDrew DeVault2019-03-151-1/+1
* Rename :cd -> :cf, add :cdDrew DeVault2019-03-152-11/+56
* Implement :{next,prev}-messageDrew DeVault2019-03-142-3/+46
* Implement :cd commandDrew DeVault2019-03-142-4/+38
* Flesh out command parsing & handlingDrew DeVault2019-03-103-22/+44
* Start building out command subsystemDrew DeVault2019-03-103-0/+58
>
78a7d762 ^
36e4e71e ^

78a7d762 ^
36e4e71e ^


4ea0f69a ^

36e4e71e ^
bd088c49 ^
36e4e71e ^
0a32b684 ^
36e4e71e ^

f6ae504c ^
4ea0f69a ^

0a32b684 ^

4ea0f69a ^
0a32b684 ^
4ea0f69a ^


0a32b684 ^

4ea0f69a ^



36e4e71e ^
7582555b ^
36e4e71e ^
7582555b ^








36e4e71e ^
4ea0f69a ^


36e4e71e ^




4ea0f69a ^
e71c8103 ^

36e4e71e ^

f6ae504c ^
4ea0f69a ^
36e4e71e ^

4ea0f69a ^

36e4e71e ^






4ea0f69a ^

306c76d8 ^






b6aff4c3 ^

306c76d8 ^
4ea0f69a ^

45cf5174 ^

08bc4ef9 ^

b34fd133 ^
08bc4ef9 ^











b34fd133 ^
08bc4ef9 ^


45cf5174 ^





fab4dc54 ^
45cf5174 ^



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
              
              
 


                                                          
                                          
 
                                                               
                                                                    
                                                                   
 





                                                                           
 
                                                                   
                                                           
 


     
 

                                     
                                                             
                                                              
                        

 

        




                                                       
                              

                                 
                                                         


           

            
 
                              
                   
                                                                   

 
                         

                         

                                                               
 
                                                          


                                                               

                                                                       



               
 
                                                                
 








                                                                     
 


                                                                           




                                                               
                                                               

                                                                         

 
                         
                         

                                                                

                                                                






                                                                

                  






                                                                        

                                                                     
 

                                                            

 

       
 











                                                                
                                                      


                                                    





                                                               
                        



                                                         
Ranger v.1.0.4
==============

Ranger

   A keeper, guardian, or soldier who ranges over a region
   to protect the area or enforce the law.

This is the filemanager Chuck Norris the Texas Ranger would use
if he had a computer with a unix-like operating system.  (He doesn't
trust computers though and prefers to do the calculations himself.)

After all, as a professional ranger, he needs a broad overview of his
territory, and the multi-column display of ranger provides just that,
rather than restricting you to the current directory only.
You can preview the content of the selected file or directory, copy or move
files around with the VIM-like commands dd and yy, execute predefined
applications when opening a file, etc...

Everything is fully customizable and written in Python (2.6 and 3.1
compatible) using curses for the text-based user interface.


About
-----

* Author:          Roman Zimbelmann
* Email:           romanz@lavabit.com
* Website:         http://savannah.nongnu.org/projects/ranger
* Git repo:        http://git.savannah.gnu.org/cgit/ranger.git
* Version:         1.0.4


Features
--------

* Multi-column display
* Preview of the selected file/directory
* Common file operations (create/chmod/copy/delete/...)
* Quickly find files or text inside files
* VIM-like console and hotkeys
* Open files in external programs
* Mouse support
* Change the directory of your shell after exiting ranger
* Bookmarks


Dependencies
------------

* A Unix-like Operating System
* Python 2.6 or 3.1
* Python curses module  (often but not always included with Python)


Bugs and Feature Requests
-------------------------

Report bugs and feature requests on savannah:
    https://savannah.nongnu.org/bugs/?func=additem&group=ranger

Alternatively you can send an email to romanz@lavabit.com.

Please include as much relevant information as possible.
Using ranger with the --debug option will abort the program and
print tracebacks rather than a red message in the statusbar.
If this applies to you, please include such a traceback in your report.


Getting Started
---------------

If you just want to check out ranger without installing it, type

    ./ranger.py --clean

in the top directory of ranger.  By using the --clean switch, it will
leave no trace on your system whatsoever.

To properly install it, follow the instructions in the INSTALL file,
then type:

    ranger

You should see 4 columns.  The third is the directory where you are at
the moment.  To the left, there are the directories above the current
working directory, and the column on the right is a preview of the selected
file/directory.

Now use the arrow keys to navigate, press enter to open a file.

A list of commands with short descriptions can be viewed by
pressing "?" inside the program and following the instructions.
The file ranger/defaults/keys.py contains all key combinations, so that's
another place you may want to check out.


Opening Files with Ranger
-------------------------

If you use the same applications like me, you'll be able to open
files by pressing the right arrow key.  If not, you will have to
specify them in ranger/defaults/apps.py.  It's explained
in the docstrings how exactly to do that.

Once you've set up your applications, you can also use ranger to
open files from the shell:
    ranger blabla.pdf


Customizing Ranger
------------------

The file ranger/defaults/options.py contains most of the options.
apps.py defines how files are run, keys.py defines keybindings.

The files in ranger/defaults/ can be copied into ~/.ranger/ for per-user
modifications.  Colorschemes can be placed in ~/.ranger/colorschemes.

The configuration files should be self-explanatory.  If you need more
information, check out the source code.

Also, see the file HACKING for more detailed instructions on
modifying the program.


Roadmap
-------

Short term:

* A cleaner and more flexible key configuration file
* Performance improvements everywhere
* Simplification of the code

Long term:

* One stable branch that you can rely on not crashing
* A plugin system
* Separate ranger into multiple programs:
  1. One daemon running in the background for slow IO operations
  2. A file launcher (ideally an already existing one)
  3. The actual program containing unseparable parts


Tips
----

Change the directory of your parent shell when you exit ranger:

ranger() {
    command ranger $@ &&
    cd "$(grep \^\' ~/.ranger/bookmarks | cut -b3-)"
}

This can be put into your ~/.bashrc or something similar.