Blame


1 8fe7904a 2014-11-07 marcelgmr Introduction
2 8fe7904a 2014-11-07 marcelgmr ============
3 8fe7904a 2014-11-07 marcelgmr
4 ee238663 2014-11-09 marcelgmr Rover is a file browser for the terminal.
5 cc8a22df 2014-11-07 marcelgmr
6 95bdeca1 2014-11-07 marcelgmr ![Rover screenshot](/../screenshots/screenshot.png?raw=true "Screenshot")
7 95bdeca1 2014-11-07 marcelgmr
8 cc8a22df 2014-11-07 marcelgmr The main goal is to provide a faster way to explore a file system from the
9 d781a4b9 2015-04-17 marcelgmr terminal, compared to what's possible by using `cd`, `ls`, etc. Rover has
10 d781a4b9 2015-04-17 marcelgmr vi-like key bindings for navigation and can open files in $PAGER and $EDITOR.
11 d781a4b9 2015-04-17 marcelgmr Basic file system operations are also implemented (see rover(1) for details).
12 d781a4b9 2015-04-17 marcelgmr Rover is designed to be simple, fast and portable.
13 8fe7904a 2014-11-07 marcelgmr
14 8fe7904a 2014-11-07 marcelgmr
15 8fe7904a 2014-11-07 marcelgmr Quick Start
16 8fe7904a 2014-11-07 marcelgmr ===========
17 8fe7904a 2014-11-07 marcelgmr
18 d781a4b9 2015-04-17 marcelgmr Building and Installing:
19 8fe7904a 2014-11-07 marcelgmr ```
20 8fe7904a 2014-11-07 marcelgmr $ make
21 8faaef35 2014-11-09 marcelgmr $ sudo make install
22 719c5cd4 2014-11-08 marcelgmr ```
23 719c5cd4 2014-11-08 marcelgmr
24 8fe7904a 2014-11-07 marcelgmr Running:
25 8fe7904a 2014-11-07 marcelgmr ```
26 ac947adb 2014-11-09 marcelgmr $ rover [DIR1 [DIR2 [DIR3 [...]]]]
27 ac947adb 2014-11-09 marcelgmr ```
28 ac947adb 2014-11-09 marcelgmr
29 8fe7904a 2014-11-07 marcelgmr Using:
30 8fe7904a 2014-11-07 marcelgmr ```
31 8fe7904a 2014-11-07 marcelgmr q - quit Rover
32 33a574e8 2014-12-02 marcelgmr ? - show Rover manual
33 8986353b 2014-11-11 marcelgmr j/k - move cursor down/up
34 8986353b 2014-11-11 marcelgmr J/K - move cursor down/up 10 lines
35 8fe7904a 2014-11-07 marcelgmr l - enter selected directory
36 8fe7904a 2014-11-07 marcelgmr h - go to parent directory
37 8fe7904a 2014-11-07 marcelgmr H - go to $HOME directory
38 97217d57 2015-05-26 marcelgmr R - refresh directory listing
39 8fe7904a 2014-11-07 marcelgmr RETURN - open $SHELL on the current directory
40 2f7057e8 2014-11-09 marcelgmr SPACE - open $PAGER with the selected file
41 2f7057e8 2014-11-09 marcelgmr e - open $EDITOR with the selected file
42 8fe7904a 2014-11-07 marcelgmr / - start incremental search (RETURN to finish)
43 7b9cb44d 2014-11-14 marcelgmr f/d/s - toggle file/directory/hidden listing
44 7b9cb44d 2014-11-14 marcelgmr n/N - create new file/directory
45 7b9cb44d 2014-11-14 marcelgmr r - rename selected file or directory
46 e0d6077a 2015-05-27 marcelgmr x - delete selected file or (empty) directory
47 7b9cb44d 2014-11-14 marcelgmr m - toggle mark on the selected entry
48 7b9cb44d 2014-11-14 marcelgmr M - toggle mark on all visible entries
49 7b9cb44d 2014-11-14 marcelgmr a - mark all visible entries
50 7b9cb44d 2014-11-14 marcelgmr X/C/V - delete/copy/move all marked entries
51 c78b45be 2014-11-09 marcelgmr 0-9 - change tab
52 8fe7904a 2014-11-07 marcelgmr ```
53 8fe7904a 2014-11-07 marcelgmr
54 a31a7b29 2014-11-15 marcelgmr **Important Note**: Currently, Rover never asks for confirmation before
55 a31a7b29 2014-11-15 marcelgmr overwriting existing files while copying/moving marked entries. Please be
56 a31a7b29 2014-11-15 marcelgmr careful to not accidentally lose your data.
57 8fe7904a 2014-11-07 marcelgmr
58 7fa0e315 2014-11-14 marcelgmr
59 0aeec769 2014-11-07 marcelgmr Dependencies
60 0aeec769 2014-11-07 marcelgmr ============
61 0aeec769 2014-11-07 marcelgmr
62 0aeec769 2014-11-07 marcelgmr Rover is supposed to run on any Unix-like system with a curses implementation.
63 e5fe9820 2015-04-17 marcelgmr To build Rover, you need a C compiler and a curses library with the corresponding
64 d781a4b9 2015-04-17 marcelgmr header file. A makefile is provided, but since all the code is in a single C
65 d781a4b9 2015-04-17 marcelgmr source file, it shouldn't be hard to build Rover without make(1).
66 0aeec769 2014-11-07 marcelgmr
67 93f75985 2014-11-07 marcelgmr
68 8fe7904a 2014-11-07 marcelgmr Configuration
69 8fe7904a 2014-11-07 marcelgmr =============
70 8fe7904a 2014-11-07 marcelgmr
71 2254ef43 2014-11-11 marcelgmr By default, rover is installed to `/usr/local/bin/rover`. To change this and other
72 719c5cd4 2014-11-08 marcelgmr build options, such as the name of the curses library, please edit `Makefile`
73 719c5cd4 2014-11-08 marcelgmr before executing `make` or specify the options during invocation. For example,
74 719c5cd4 2014-11-08 marcelgmr to link against `libncurses.so` and install to `/opt/bin/rover`:
75 719c5cd4 2014-11-08 marcelgmr ```
76 2254ef43 2014-11-11 marcelgmr make LDLIBS=-lncurses PREFIX=/opt install
77 719c5cd4 2014-11-08 marcelgmr ```
78 719c5cd4 2014-11-08 marcelgmr
79 8fe7904a 2014-11-07 marcelgmr Rover configuration (mostly key bindings and colors) can only be changed
80 d925320d 2014-11-07 marcelgmr by editing the file `config.h` and rebuilding the binary (with `make`).
81 8fe7904a 2014-11-07 marcelgmr
82 0aeec769 2014-11-07 marcelgmr Note that the external programs executed by some Rover commands may be changed
83 719c5cd4 2014-11-08 marcelgmr via the appropriate environment variables. For example, to specify an editor:
84 0aeec769 2014-11-07 marcelgmr ```
85 719c5cd4 2014-11-08 marcelgmr $ EDITOR=vi rover
86 0aeec769 2014-11-07 marcelgmr ```
87 8fe7904a 2014-11-07 marcelgmr
88 0aeec769 2014-11-07 marcelgmr
89 8fe7904a 2014-11-07 marcelgmr Copyright
90 8fe7904a 2014-11-07 marcelgmr =========
91 8fe7904a 2014-11-07 marcelgmr
92 cfa4fe73 2014-12-03 marcelgmr All of the Rover source code and documentation is released into the public
93 cfa4fe73 2014-12-03 marcelgmr domain and provided without warranty of any kind.