344 Commits

Author SHA1 Message Date
github-actions[bot]
ba5b0857c3
chore(changelog): update changelog (auto) (#146)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-12-25 19:01:49 +01:00
Alex Pasmantier
68d118986c
feat(shell): autocompletion plugin for zsh (#145) 2024-12-25 18:53:50 +01:00
Alex Pasmantier
22f1b4dc33
feat(ui): decouple preview title position from input bar position and make it configurable (#144)
fixes #143 

## example
```toml
[ui]
input_bar_position = "top"
preview_title_position = "top"
```

<img width="2553" alt="Screenshot 2024-12-18 at 22 06 29"
src="https://github.com/user-attachments/assets/6c9ac842-e383-42a8-bdf4-d48c7a826df3"
/>
2024-12-18 22:30:10 +01:00
github-actions[bot]
ac7762e8f2
chore(changelog): update changelog (auto) (#141) 2024-12-17 23:47:33 +01:00
Peter
e27c8342e8
docs(readme): make channel names consistent everywhere (#138)
I made this PR following some confusion I had as a first time user
reading the documentation. I tried GitRepos, git-repos and finally had
to call list-channels to find the actual name for gitrepos. I think
making all of the references to channels consistent with the
spelling/capitalization of the CLI helps reduce confusion.
0.7.2
2024-12-17 14:24:01 +01:00
defigli
882737d147
feat(cli): add argument to start tv in another working directory (#132)
Resolves #111

---------

Co-authored-by: Alexandre Pasmantier <alex.pasmant@gmail.com>
2024-12-15 22:13:11 +01:00
github-actions[bot]
3b8ab1fbd8
chore(changelog): update changelog (auto) (#131)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-12-15 18:13:39 +01:00
Alexandre Pasmantier
18c5213e83
feat(channels): new channel for directories and associated transitions (#130) 0.7.1 2024-12-15 18:04:26 +01:00
Alexandre Pasmantier
c0c790cb48
docs(contributing): update contributing.md with hot topics and link todo (#129) 2024-12-15 16:00:50 +01:00
github-actions[bot]
7fa469aea0
chore(changelog): update changelog (auto) (#128)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-12-15 14:32:16 +01:00
Alexandre Pasmantier
a8e3ea5f89
chore(version): bump workspace to 0.7.0 (#127) 0.7.0 2024-12-15 14:30:25 +01:00
Alexandre Pasmantier
630e791961
docs(readme): add theme previews and udpate readme structure (#126) 2024-12-15 14:04:00 +01:00
Alexandre Pasmantier
4164e9092b
feat(themes): more builtin UI themes (#125) 2024-12-15 13:26:28 +01:00
Alexandre Pasmantier
a7064c18c8
refactor(config)!: use $HOME/.config/television by default for macOS (#124) 2024-12-15 12:23:31 +01:00
Alexandre Pasmantier
7b114b7cb6
fix(config): better handling of default values (#123) 2024-12-15 01:09:53 +01:00
Alexandre Pasmantier
37b2dda729
refactor(help): enable help bar by default and add help keybinding (#122) 2024-12-15 00:54:14 +01:00
Alexandre Pasmantier
9809e742d8
fix(stdin): trim entry newlines when streaming from stdin (#121) 2024-12-15 00:35:10 +01:00
Alexandre Pasmantier
11da96d7fb
feat(themes): add support for global themes background colors (#120) 2024-12-15 00:29:10 +01:00
Alexandre Pasmantier
ea752b13e6
fix(previewers): handle crlf sequences when parsing ansi into ratatui objects (#119) 2024-12-15 00:17:09 +01:00
Alexandre Pasmantier
937d0f0758
feat(cable): support cable channel invocation through the cli (#116) 2024-12-14 17:47:36 +01:00
Alexandre Pasmantier
913aa85af0
feat(themes): add support for ui themes (#114)
fixes #80 

### examples
| gruvbox | solarized |
| :-: | :-: |
| <img width="1792" alt="gruvbox"
src="https://github.com/user-attachments/assets/c0c168a5-5c95-4113-93fd-24b34a9344d8"
/> | ![Screenshot 2024-12-13 at 14 38
57](https://github.com/user-attachments/assets/368e3e37-7fdd-493a-8c0b-47e3731ae67b)
|
2024-12-13 14:54:38 +01:00
Bertrand Chardon
a4d15af694
perf: optimize entry ranges (#110) 2024-12-09 23:39:06 +01:00
Alexandre Pasmantier
758bfc290a
perf(ui): improve merging of continuous name match ranges (#109)
### main
```
results_list            time:   [17.800 µs 17.836 µs 17.869 µs]
                        change: [-0.7235% -0.4176% -0.1185%] (p = 0.01 < 0.05)
                        Change within noise threshold.
Found 3 outliers among 100 measurements (3.00%)
  3 (3.00%) high mild
```

### this branch
```
results_list            time:   [12.780 µs 12.789 µs 12.798 µs]
                        change: [-28.381% -28.218% -28.059%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 5 outliers among 100 measurements (5.00%)
  1 (1.00%) high mild
  4 (4.00%) high severe
```
2024-12-09 14:08:28 +01:00
Bertrand Chardon
5fb02c768f
perf: merge contiguous name match ranges (#108)
in the entries that are used in the `build_results_list` function in
`television-screen::results`, it seems like there the ranges returned
are sometimes contiguous

since they're used to create `ratatui` spans, we want to reduce them to
their minimal equivalent form
2024-12-08 23:21:34 +01:00
Bertrand Chardon
c0db566a48
perf: add bench for build results list (#107)
This PR adds a benchmark for performance-critical function
`build_results_list` from `television_screen::results`

This should allows `television` to track performances improvements or
regressions across time for that function (and other in the future)

---------

Co-authored-by: alexpasmantier <alex.pasmant@gmail.com>
2024-12-08 18:43:38 +01:00
Alexandre Pasmantier
54399e3777
refactor(screen): extract UI related code to separate crate (#106)
Co-authored-by: Bertrand Chardon <bertrand.chardon@doctrine.fr>
2024-12-08 13:46:30 +01:00
github-actions[bot]
6e35e1a50c
chore(changelog): update changelog (auto) (#105)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-12-06 10:52:11 +01:00
Alexandre Pasmantier
ffc8dae494
chore: bump workspace to 0.6.2 (#104) 0.6.2 2024-12-06 10:46:53 +01:00
liyixin
f9d33e4797
fix(windows): use cmd on windows instead of sh (#102)
Co-authored-by: liyixin <root@liyixin-test.sci-inv.cn>
2024-12-06 10:37:44 +01:00
Bertrand Chardon
4567f26a37
chore: use named constant for colors (#99)
this PR replaces straight colors by named constants, which should
facilitate any subsequent move to refactor the theming capabilities of
`tv`
2024-12-05 22:45:36 +01:00
github-actions[bot]
2ea6f9a5c1
chore(changelog): update changelog (auto) (#98)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-12-05 20:45:17 +01:00
Alexandre Pasmantier
6a1359055d
refactor(helpbar): hide the top help panel by default (#97) 0.6.1 2024-12-05 20:41:40 +01:00
Alexandre Pasmantier
795db19fff
fix(cable): add cable to unit channel variants (#96)
fixes #95
2024-12-05 20:36:01 +01:00
Alexandre Pasmantier
ad3e52d340
feat(remote): distinguish cable channels with a separate icon (#94) 2024-12-05 16:27:27 +01:00
Alexandre Pasmantier
b6f12b372b
docs(readme): update readme with latest version and fix section link (#93) 2024-12-05 00:52:39 +01:00
github-actions[bot]
99a4405e66
chore(changelog): update changelog (auto) (#92)
This PR was created by a GitHub Action to update the changelog.

Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-12-05 00:39:15 +01:00
Alexandre Pasmantier
a5f5d20071
feat(cable): add support for custom channels (#75) 0.6.0 2024-12-05 00:34:09 +01:00
Bertrand Chardon
fee4ed2671
perf: add cache for icon colors (#89) 2024-12-02 16:20:13 +01:00
Bertrand Chardon
b7ddb00c4e
perf: skip ratatui span when match at end of string (#91)
perf: skip ratatui span when match end of string

- for the entry name, we don't create an empty ratatui span when the
  match is right at the end of the entry name
- same for the preview, we don't create a ratatui span anymore when the
  match is at the end of the preview
2024-12-02 16:18:52 +01:00
Alexandre Pasmantier
20cf83b720
docs(installation): update homebrew installation command (#87) 2024-11-28 18:35:26 +01:00
Alexandre Pasmantier
128a6116c3
fix(preview): remove redundant tokio task when generating builtin file previews (#86) 2024-11-28 00:34:32 +01:00
github-actions[bot]
c96d855290
chore(changelog): update changelog (auto) (#85)
Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-11-28 00:12:13 +01:00
Bertrand Chardon
4bea114635 perf: remove unnecessary clone() calls (#83)
perf: remove redundant clone() calls
2024-11-27 23:54:08 +01:00
Alexandre Pasmantier
30f1940815
refactor(exit): use std::process::exit explicitly (#84) 2024-11-27 23:07:02 +01:00
Alexandre Pasmantier
d3c16af4e9
fix(stdin): better handling of long running stdin streams (#81)
fix: long running pipes
2024-11-27 22:56:30 +01:00
Alexandre Pasmantier
48ea12ed7a
docs(install): update the installation section of the README (#79) 2024-11-26 21:09:59 +01:00
Moritz Wilksch
a46d6f8510
add conda-forge install to README.md (#78) 2024-11-26 20:57:01 +01:00
Alexandre Pasmantier
1ebec7ead2
fix(output): quote output string when it contains spaces and points to an existing path (#77) 2024-11-26 10:53:14 +01:00
Alexandre Pasmantier
220671106e
feat(layout): allow reversing the layout and placing input bar on top (#76) 2024-11-25 21:32:41 +01:00
github-actions[bot]
9998b9d9f8
chore(changelog): update changelog (auto) (#74)
Co-authored-by: alexpasmantier <47638216+alexpasmantier@users.noreply.github.com>
2024-11-24 17:07:08 +01:00