Commit Graph

167 Commits

Author SHA1 Message Date
Ben S
a871a448be Add --bytes to not use prefixes at all 2014-12-18 07:04:31 +00:00
Ben S
f03a496424 Only underline executable *files* in perms view 2014-12-18 07:00:51 +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
224849b0e9 Make copyable values copyable 2014-12-14 18:23:06 +00:00
Ben S
bcaed1ff35 Remove redundant slicing 2014-12-12 14:17:57 +00:00
Ben S
57430dbbe5 Why be so specific?
Different types of user caches could come in the future...
2014-12-12 14:13:08 +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
4484982734 Whitespace fixes 2014-12-12 12:08:14 +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
8b3602f20f Remove unused lifetime 2014-11-26 07:40:52 +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
6ade060eb6 Use curlies consistently 2014-11-25 20:50:23 +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
df6544aae0 from_buf -> String::from_raw_buf 2014-11-25 01:29:33 +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
c7417e0bca Remove unnecessary namespacing 2014-11-24 02:18:22 +00:00
Ben S
8e455f9390 Optimise unsafe usage 2014-11-24 02:16:28 +00:00
Ben S
5b7124bb71 I like aligning things 2014-11-24 02:13:54 +00:00
Ben S
d72be30c30 Reduce unnecessary String allocations
- Remove uses of to_string() on a &str where it wasn't necessary
- Use SendStr to reduce allocations further
2014-11-24 02:01:08 +00:00
Ben S
c75bbf7f79 Add path to symlinks 2014-11-24 01:48:51 +00:00
Ben S
03ecb8c9e1 Fix bug with empty directories 2014-11-24 01:24:45 +00:00
Ben S
b7e7bc7057 Fix bug that panics when getting group info
I'm not sure if this a Rust change or something I've introduced...
2014-11-24 01:13:58 +00:00
Ben S
71f03157aa Add some more file extensions 2014-11-23 23:01:06 +00:00
Ben S
ab66c681c2 Add some pointers 2014-11-23 22:36:03 +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
26f8ad08bf Replace from_c_str with from_buf 2014-09-22 21:47:22 +02:00
Ben S
c80d1ec862 Replace to_option() with as_ref() 2014-09-22 21:12:07 +02: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
a2e9144866 Match file extensions case-insensitively
I truly didn't realise this wasn't already done until someone sent me a .BMP file.
2014-07-22 22:32:16 +01:00
Ben S
fb8821164c Misc style changes 2014-07-22 22:27:37 +01:00
Ben S
527528e81f Move file-sorting code outside the view functions 2014-07-22 22:19:51 +01:00
Ben S
e2f9a80ca5 Add none and inode sort options 2014-07-22 21:27:36 +01:00
Ben S
35a0ba3ba0 Use one-line view when output is not to a terminal 2014-07-22 20:50:53 +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
90099f28cf Upgrade to latest Rust nightly
- change to_string() on numbers to to_str()
2014-07-10 22:20:52 +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
eecfd88363 Simplify alignment code 2014-06-30 09:59:54 +01:00
Ben S
178e24552d Move comment 2014-06-30 02:06:07 +01:00
Ben S
44628ba6e2 Standardise on a grey 2014-06-30 02:04:36 +01:00
Ben S
0a1d3f56ec Add guard to get_source_files 2014-06-30 02:00:05 +01:00
Ben S
c494c0cd22 Don't scan the filename string twice 2014-06-30 01:51:11 +01:00
Ben S
f0fc7e992a Make pointers const (to comply with nightly Rust) 2014-06-29 22:28:52 +01:00
Ben S
df65886d6d Properly handle invalid UTF-8 filenames 2014-06-29 21:02:14 +01:00
Ben S
85e557a744 Highlight common build files 2014-06-28 17:56:57 +01:00
Ben S
a8465fed45 Move to Cargo 2014-06-28 17:24:20 +01:00