Commit Graph
49 Commits
Author SHA1 Message Date
Stephen Huan 7c35def686 fix: selected text bg in default-light theme (#1578) 2024-09-03 03:27:03 -04:00
Clement Tsang a095e67179 change: default config location on macOS considers XDG config var (#1570)
Actually support $XDG_CONFIG_HOME on macOS. Apparently in our docs we also say we do, but we, uh, don't, because dirs doesn't.

Note this is backwards-compatible, in that if a config file exists in the old default locations, we will check those first.
2024-08-22 01:00:55 +00:00
Clement Tsang 5a009987ac docs: update docs around disable_gpu change. (#1562)
* docs: update changelog

* update docs
2024-08-14 20:27:32 -04:00
shurizzleandshurizzle 6b0a285541 refactor: rename flags.enable_gpu to flags.disable_gpu (false by default) (#1559)
Co-authored-by: shurizzle <me@shurizzle.dev>
2024-08-14 18:22:47 -04:00
Clement Tsang 96ed26d87a other: add another test to validate default config (#1553)
* update changelog

* add another lib test to make sure valid integration configs are actually valid

* only test these on default config

* clippy

* add extra CI fail check

* fix windows
2024-08-08 04:44:48 -04:00
Clement Tsang cf47cb9fae other: add test to make sure default config is valid (#1552) 2024-08-08 01:36:42 +00:00
Clement Tsang feb0c6912c bug: fix default_cpu_entry arg not being used and missing from docs (#1543) 2024-08-05 18:55:05 -04:00
Zeb Piasecki d6c2ef3e22 feat: add option to move avg CPU to another row (#1487)
Adds an `average_cpu_row` option to move the average CPU usage to its own row
when using basic mode.
2024-08-03 01:10:36 -04:00
Clement Tsang 5b68b6ee81 other: add test to catch issues with incorrect long arg names (#1528) 2024-08-01 15:45:24 +00:00
Clement Tsang 03e69b3be0 bug: fix using clap macro incorrectly, causing broken long help name (#1526)
Basically, I did:

```
long = "blah blah blah"
```

but it should have been:

```
long,
long_help = "blah blah blah"
```

The former makes the _long help flag_ the description which... well,
isn't right.
2024-08-01 15:21:09 +00:00
Clement Tsang a6e1ea3bd8 docs: update docs on filter (#1519)
Updates some outdated docs on filtering, and adds some tests as well. In particular, this also adds a cfg_attr on tests to try and catch unknown fields; we'll be more lenient in prod builds though and allow them.
2024-07-31 06:41:30 +00:00
Clement Tsang 4b14ccb56b feature: support italic text styling (#1514)
Support italics as a text styling option.
2024-07-31 01:54:26 +00:00
Clement Tsang c77256eaaf change: make table headers bold by default (#1513)
* change: make table headers bold by default

* changelog
2024-07-31 00:37:38 +00:00
Clement Tsang 08a7b8b860 feature: support bold text (#1512)
* feature: support bold text

* add changelog

* more testing
2024-07-30 07:43:57 +00:00
Clement Tsang f091ebdc6a feature: support simple colour settings for text fields too (#1511)
* feature: support simple colour settings for text fields too

* also add 'color' back to some options

* tests
2024-07-30 07:15:23 +00:00
Clement Tsang 28972a1e64 refactor: refactor styling options (#1499)
Introduce a new configuration system for styling.
2024-07-29 09:03:35 +00:00
Clement Tsang 1ec4ca3f06 refactor: out with arg/config error, and make user messages more consistent (#1494)
* refactor: out with arg/config error, and make user messages more consistent

* finish up

* fix all the tests
2024-07-19 06:51:50 +00:00
Clement Tsang 3602429529 other: add schema test for uncommented default config (#1484)
* other: add schema test for uncommented default time

* ahhh

* forgot to disable this
2024-06-17 00:59:36 -04:00
Clement Tsang 7666a09162 feat: add way to automatically generate new json schemas (#1482) 2024-06-16 19:28:24 -04:00
Clement Tsang 982b7181a6 change: change how disk, temp, and net filters in config are set (#1481)
* change: change how disk, temp, and net filters in config are set

* run rustfmt

* update default config
2024-06-16 02:15:36 -04:00
Clement Tsang 8885910442 refactor: remove lib and move some things around (#1477)
A loooooong time ago (wow, it's been 4 years apparently...), I made the brilliant (/s) decision to use both lib.rs and main.rs because I was trying to add tests in the tests folder that needed private access to some functions in the src - and at the time, the only way I could think of doing so was exposing bottom as a library and a binary.

This isn't necessarily bad, but for my use case, it's pretty unnecessary nowadays (since I've moved all my tests back into the source files) and adds complexity in looking for certain things, so it's high time we move things around and remove lib.rs. I also took the time to clean up some weird code I spotted along the way.
2024-06-05 06:00:21 +00:00
Clement Tsang 7aa379aabf bug: fix -V not working and causing Cirrus CI to fail (#1478)
* bug: fix -V not working and causing Cirrus CI to fail

* add comment

* update workflows and fix tests
2024-06-05 01:12:00 -04:00
Clement Tsang ee2e1fee1c refactor: use struct for args instead of builder interface (#1472)
* start moving args

* tmp

* refactor config

* port over ags

* update changelog
2024-05-27 01:16:37 -04:00
Clement Tsang 398bf5930f refactor: some string-related code cleanup/refactor (#1463)
* other: organize some utility function files

* deps: remove kstring

* refactor: some naming changes

* refactor: some more small refactoring/naming changes

* simplify to_cell to return a Cow

* enable lints
2024-05-07 02:03:30 -04:00
Clement Tsang 93d6718766 other: update a bunch of argument descriptions and some arg/config names (#1441)
* other: update a bunch of argument descriptions and some arg/config names

* update docs

* changelog
2024-04-10 20:46:35 -04:00
Lee WonjoonandClementTsang a083ec00dd feature: Add option to set a position of legend (#1430)
* Add option to set a position of legend

* some small changes

---------

Co-authored-by: ClementTsang <34804052+ClementTsang@users.noreply.github.com>
2024-04-02 01:06:01 -04:00
Clement Tsang 5cf17f6015 other: flatten process config struct and clean up help text (#1395)
* refactor: flatten process config field

* other: clean up some doc formatting using indoc and breaklines

* fix broken test

* remove default as that breaks things for now

* add test

* more tests
2024-01-21 05:47:13 -05:00
Clement Tsang 975e3d776b refactor: move some files around in prep for a future options refactor (#1393)
* some formatting

* refactor: move some files around in prep for a bigger config/options refactor
2024-01-18 18:46:00 -05:00
Clement Tsang be4fa27b84 refactor: convert layout creation tests back to being unit tests (#1392) 2024-01-16 23:47:05 -05:00
Clement Tsang dd66ae774c refactor: simplify some config -> constraints code (#1383)
* refactor: simplify some config -> constraints code

* iteratively progress...

* update bcr; this might need testing since I removed some old proc code

* widget side

* fix battery

* fix widget tests with bandaid for now

The issue was that the calculations assume a certain ratio for CPU
legends.

* add some tests

* bump up

* fix proc drawing issues

So with the proc widget in certain places, there would be a panic during
constraint determination.

Looks like back when I wrote this I made some gross assumptions about
certain things. In particular, the problem here was that the search
added an additional "one" height, so that needs to be accounted for
after we removed the "doubling" code.

* tests

* fix tests

* reorganize tests

* clippy

* fix cross tests not working

* fix builds for android
2024-01-15 04:19:18 -05:00
Clement Tsang bc2c363a49 refactor: clean up arg code more (#1377)
* fix sort function

* Try macros

* Revert "Try macros"

This reverts commit 93c7306f8a.

* use next_help_heading instead

* test

* Revert "test"

This reverts commit 017a1702b3.

* Reapply "test"

This reverts commit 23c09d3828.

* use foldl instead :)

* a word

* different conditionals

* update docs, change ordering

* more formatting stuff
2024-01-11 00:25:53 -05:00
Clement Tsang 6b62176554 refactor: rearrange/resort args (#1376)
* clean up Cargo.toml

* some small cleanup

* refactor: group together similar args in the help generation and code

This groups together related arguments in both the help text and the
code itself.

* update changelog

* clippy

* builder pattern instead
2024-01-10 19:07:22 -05:00
Clement Tsang c242b4aff3 refactor: move around some configuration code again (#1371) 2024-01-01 17:39:10 -05:00
Clement Tsang 228da99489 refactor: move around configuration-related files (#1370)
* rename general utils file

* refactor: move around some configuration files

* more shuffling around

* fix some ugly formatting
2024-01-01 17:20:40 -05:00
Clement Tsang ecb6faa089 refactor: restructure canvas file folder structure (#1368)
* refactor: group together some canvas files

* rename file

* more shuffling around

* fmt

* more shuffling

Going to flatten widgets in another PR.

* some docs

* naming

* fmt
2024-01-01 05:19:52 -05:00
Clement Tsang b6f92c2f3d feature: support default selection of average CPU graph (#1353)
* feature: support default selection of average CPU graph

* test
2023-12-10 15:21:35 -05:00
Clement Tsang 852e2e86c7 refactor: remove typed-builder (#1181) 2023-06-02 00:53:38 -04:00
Clement Tsang 8a49c49267 refactor: remove TypedBuilder for col (#1162)
* refactor: remove TypedBuilder for col

* clean up basic
2023-05-20 01:27:42 -04:00
Clement Tsang 463b0fbef8 refactor: remove TypedBuilder for widget (#1159)
* refactor: remove TypedBuilder for widget

* group together cpu

* clean up proc too
2023-05-18 05:45:07 -04:00
Clement Tsang a1a48bc647 refactor: remove TypedBuilder for col row (#1158) 2023-05-17 02:43:08 -04:00
Clement Tsang dae65bcd56 bug: fix certain custom column combinations causing issues (#1140)
* docs: update some docs related to processes

* bug: temp bandaid on column feature to avoid dupes issue
2023-05-09 19:20:34 -04:00
Yuxuan ShuiandClement Tsang 80183b8b1c feature: show running time of processes (#801)
* feature: show running time of processes

* fix clippy

* add time searching

* update changelog

* use safer duration for linux in case of 0

* some cleanup

* quick hack to deal with some Windows processes returning unix epoch time as start time

---------

Co-authored-by: Clement Tsang <34804052+ClementTsang@users.noreply.github.com>
2023-05-02 01:33:53 -04:00
Clement Tsang 605314d44c feature: add customizable process columns (#1115)
* feature: add customizable process columns

* Add some tests and actual logic

* more tests

* update changelog

* update config field

* even more tests

* update documentation

* more testing
2023-04-29 19:21:48 -04:00
Clement Tsang 99fc5fc2c8 refactor: run cargo +nightly fmt with group_imports (#885)
* refactor: add some disabled unstable fmt options

* run cargo +nightly fmt with group_imports

* separate out the cfg-specific imports for clarity
2022-11-10 01:22:19 -05:00
Clement Tsang 6db76029e2 feature: Beginnings of in-app config (#231)
Initial refactorings and additions to support in-app config.

- Refactor our current options logic to support in-app configs.  That is, we can write to a config file with our changes now.
- The default action when creating a new config file is to leave it blank. (TBD and for now, not sure on this one)
- Previously, we would set everything in a config file on startup; now we need to read from the config TOML struct whenever.
- `C` keybind is now occupied for configs.
- `no_write` option to never write to a config file.
2020-09-22 18:12:36 -04:00
Clement Tsang f3897f0538 feature: Allow sorting by any column
This feature allows any column to be sortable.

This also adds:
- Inverting sort for current column with `I`
- Invoking a sort widget with `s` or `F6`.  Close with same key or esc.

And:
- A bugfix in regards the basic menu and battery widget
- A lot of refactoring
2020-08-15 20:35:49 -04:00
ClementTsang 46e0eee1d3 bug: fix issue with proc widget merging if in the same column as another 2020-04-07 21:15:58 -04:00
Clement Tsang 0b1d84fdf5 Add modularity to widget placement and inclusion (#95) 2020-04-01 20:31:43 -04:00
Clement Tsang 1968bb14b4 Cleanup before modularity (#84)
* Uptick some crates, update README dependencies

* Cleanup before modularity feature.

* Fix missing reset zoom on reset

* Fixed reset... not resetting search or data displayed

* Cleaned up options a tiny bit to make more sense.

* Cleaned up some TODOs and the like.

* specify only build master branch.
2020-03-13 01:07:24 -04:00