Commit Graph

43 Commits

Author SHA1 Message Date
Benjamin Sago
3d59a48efe Make option parsing unit-testable 2015-01-12 22:47:05 +01:00
Benjamin Sago
23e5d3ce8d Allow for different types of failure 2015-01-12 22:14:27 +01:00
Benjamin Sago
3f08836c3f Move viewing code to its own module 2015-01-12 21:08:42 +01:00
Benjamin Sago
9729679f05 Main code tidy-ups 2015-01-12 20:48:07 +01:00
Benjamin Sago
d93bca8779 Make some options fields private 2015-01-12 19:44:39 +01:00
Benjamin Sago
1c5409e253 Upgrade to Rust alpha
- uint -> usize
- getopts Cargo library
- replace feature gates with unstable APIs
2015-01-12 01:31:24 +01:00
Ben S
d400231de5 Upgrade to latest Rust
Also, remove dependency on the Regex library by replacing the one place it was used with standard code that should hopefully be faster anyway.
2015-01-05 14:41:43 +00:00
Ben S
ba36d4f7f0 Library and Rust upgrades 2015-01-04 13:56:07 +00:00
Ben S
24628f97be Use number_prefix crate for number prefixes 2014-12-18 07:00:31 +00:00
Ben S
e005174577 Extract separator_width variable 2014-12-14 19:05:07 +00:00
Ben S
49c1b8ea16 Use a more compact grid view
Now the grids are optimised so each column is only as wide as its longest file name. The method could do with some optimising, but at least it works.
2014-12-14 18:30:41 +00:00
Ben S
66339e7a15 Miscellaneous little optimisations
- Prefer iter over into_iter where appropriate
- Cut down on cloning
2014-12-12 14:06:48 +00:00
Ben S
65f124fe39 Use the natord library instead of our own sorter
I'm serious, the more functionality I can use external crates for, the better.
2014-12-12 11:26:18 +00:00
Ben S
6770ac5475 Replare Unix module with users crate
Feels good turning all that code into a dependency!
2014-12-12 11:17:55 +00:00
Ben S
6134096586 Upgrade to latest Rust
I can't complain, because the breaking changes were caused by my pull request...
2014-12-02 14:20:28 +00:00
Ben S
c217dce73d Simplify width-checking code
With suggestions from helpful #rust folk. Thank you!
2014-11-26 08:23:17 +00:00
Ben S
c52625b1ce Display files on a single line if possible 2014-11-26 08:05:07 +00:00
Ben S
05dd644c92 Upgrade to latest ansi_term
Yeah, I broke my own code again.
2014-11-26 07:36:09 +00:00
Ben S
e1d3512a69 Add --help flag 2014-11-25 15:54:50 +00:00
Ben S
0b1e94a3c8 Fix bug where header line would appear twice 2014-11-25 01:31:26 +00:00
Ben S
bcaf54d7dd Add a flag to print directories as files
Also, re-use the stat result from directory-checking.
2014-11-25 01:27:26 +00:00
Ben S
cbd2f1fa37 List files and directories separately
This finally fixes the issue where trying to list a file causes a crash. Also, tidy up some of the uses of references.
2014-11-24 17:03:36 +00:00
Ben S
03ecb8c9e1 Fix bug with empty directories 2014-11-24 01:24:45 +00:00
Ben S
d7b8b230ef Remove containers from file name in grid view
What a strange bug to happen
2014-11-23 21:57:33 +00:00
Ben S
933f98d2c3 Upgrade to latest Rust nightly 2014-11-23 21:29:11 +00:00
Ben S
b0c51d93f8 Remove a few deprecated constructs
The language keeps changing when I'm not looking!
2014-09-22 18:03:47 +02:00
Ben S
527528e81f Move file-sorting code outside the view functions 2014-07-22 22:19:51 +01:00
Ben S
44a9819417 Add --oneline option
Also, rename old 'lines' view to 'details' which makes more sense
2014-07-22 20:47:30 +01:00
Ben S
cf3e32c9c1 Get terminal width for grid view (resolve #1) 2014-07-22 15:41:20 +01:00
Ben S
b1560edb85 Use string width, rather than length, to calculate column size 2014-07-21 22:05:39 +01:00
Ben S
4cbc1f063a Upgrade to latest Rust nightly
- Lifetime changes in unix.rs
- lexical_ordering -> cmp
- from_utf8_lossy got moved into String
- vec.get(n) -> vec[n]
2014-07-21 22:05:04 +01:00
Ben S
fc90f4bfc9 Don't pad the final column 2014-07-07 20:11:30 +01:00
Ben S
240cbf7b41 Add --across parameter 2014-07-07 19:18:09 +01:00
Ben S
03c51f0bfd Correctly calculate number of rows 2014-07-07 18:42:09 +01:00
Ben S
92ccf821ff Colour file names in grid view 2014-07-06 18:00:27 +01:00
Ben S
728f9f1804 Add grid view by default
This makes it more like ls. The --long (-l) argument has been added to get at the old behaviour, and the --links argument is now on -H. I can't crib this behaviour from ls because it shows it by default.

TODO: The terminal size is currently assumed to be 80, and it uses the string length, rather than the width.
2014-07-06 17:33:40 +01:00
Ben S
de9c2d29dd Merge branch 'master' of github.com:ogham/exa 2014-07-05 22:37:03 +01:00
Ben S
8daeba2617 Move string-to-filenames-vector code to its own function 2014-07-05 22:36:43 +01:00
Ben S
0de80ad7ec Rename variable 2014-07-05 19:54:34 +01:00
Ben S
cfb0fa9b72 Import Paint trait from rust-ansi-term 2014-07-04 09:54:14 +01:00
Ben S
43e3f742ca Comply with latest rust-ansi-term 2014-07-02 21:47:43 +01:00
Ben S
d2647df0ca Move some stuff out to rust-ansi-term crate 2014-07-01 19:00:36 +01:00
Ben S
a8465fed45 Move to Cargo 2014-06-28 17:24:20 +01:00