172 Commits

Author SHA1 Message Date
Bertrand Chardon
37b71b7a88
feat(i18n): improve support for non-western scripts (#305)
This PR adds

- support for katakana and hiragana
- support for hangul
- support for thai
- support for devanagari
- support for emojis

Some special characters such as typographic parentheses for the Japanese
language for example don't seem to be covered by the Unicode ranges I'm
adding in this pull request.

To ensure complete support, additional Unicode ranges should be added by
native speakers when possible to avoid errors.

Fixes #299
2025-01-24 20:31:15 +01:00
John Scarrott
cb565d667e
fix: Add repaint command to the fish shell scripts (#303)
The call ensures that the prompt restores properly and looks correct
after using television. This fixes #300 for me locally.
2025-01-23 14:03:50 +01:00
Alex Pasmantier
40c97c9c4c
chore: bump workspace to 0.9.4 (#293) 2025-01-20 12:16:06 +01:00
Alex Pasmantier
8bbebf7e57
fix(syntect): switch back to oniguruma while investigating parsing issues (#292)
Temp fix for #289
2025-01-20 12:09:00 +01:00
Alex Pasmantier
a43ed22666
chore: bump workspace to 0.9.3 (#287) 2025-01-19 20:47:05 +01:00
Alex Pasmantier
6c3bede3ca
feat(preview): add support for displaying nerd fonts in preview (#286)
Fixes #280
2025-01-19 20:09:10 +01:00
Alex Pasmantier
a3dc8196aa
perf(preview): add partial preview rendering and buffer preview requests (#285) 2025-01-19 18:16:34 +01:00
Alex Pasmantier
c227b2a201
fix(cable): cable channels now take precedence over builtins for the cli / shell integration (#278)
Fixes #275
2025-01-14 19:34:04 +01:00
Alex Pasmantier
1934d3f03f
refactor: exit application on SIGINT / C-c (#274)
Fixes #272
2025-01-14 00:03:52 +01:00
Alexandre Pasmantier
1a4dae9bd8 chore: bump to 0.9.2 2025-01-09 23:25:59 +01:00
Alex Pasmantier
9433fea80d
fix(cable): filter out non-utf8 lines when loading cable candidates (#263)
Fixes #262
2025-01-09 20:41:11 +01:00
Alexandre Pasmantier
d00d8e4f84 chore: bump to 0.9.1 2025-01-09 14:28:06 +01:00
Alex Pasmantier
d9ca7b1f9d
feat(cable): allow custom cable channels to override builtins (#260) 2025-01-09 14:24:37 +01:00
Alex Pasmantier
b388a56745
fix(fish): don't add extra space to prompt if it's an implicit cd (\.) (#259)
Fixes #256
2025-01-09 13:41:38 +01:00
Alex Pasmantier
3b7fb0c6d6
refactor(cable): stream in cable results + better error logging + default delimiter consistency (#257) 2025-01-09 13:30:31 +01:00
Alex Pasmantier
ea8b955e6d
feat(cli): add no-preview flag to disable the preview pane (#258)
Fixes #255
2025-01-09 13:29:32 +01:00
Alex Pasmantier
b5e9846e1b
refactor(providers): improve cable provider files loading sequence (#254) 2025-01-08 17:10:05 +01:00
Alex Pasmantier
853da49425
chore: bump to 0.9.0 (#249) 2025-01-07 23:29:14 +01:00
Alex Pasmantier
8b5beee1dc
perf: drop deduplication when loading cable candidate lines (#248)
related to #194
2025-01-07 17:59:44 +01:00
Alex Pasmantier
1c00dece94
fix(ansi): catch implicit reset escape sequences (#245)
Fixes #232 

<img width="2549" alt="Screenshot 2025-01-07 at 16 04 15"
src="https://github.com/user-attachments/assets/18be9901-757e-47a4-aa70-89aa7fc75e84"
/>
2025-01-07 16:06:23 +01:00
Alex Pasmantier
3bd2bb44bd
feat: add support for CJK unified ideographs (#243)
Fixes #242
2025-01-07 13:32:32 +01:00
Alex Pasmantier
072ecdba73
perf: only display the first 200 log entries when previewing git-repos (#241) 2025-01-07 12:49:09 +01:00
Alex Pasmantier
a2a264cc4d
fix(ingestion): use lossy conversion when source doesn't produce valid utf8 (#240)
Fixes #233
2025-01-07 12:41:57 +01:00
Alex Pasmantier
0624002f35
perf: use FxHash instead of SipHash where it makes sense (#237) 2025-01-07 02:11:12 +01:00
Alex Pasmantier
263e88beb6
chore(deps): mutualize workspace dependencies (#236) 2025-01-07 01:09:14 +01:00
Alex Pasmantier
e2398abcfa
feat(channels): allow sending currently selected entries to other channels (#235)
Related to #229
2025-01-07 00:35:14 +01:00
Alex Pasmantier
2e5f65baef
feat(channels): add support for multi selection (#234)
Fixes #229 

<img width="1793" alt="Screenshot 2025-01-07 at 00 12 18"
src="https://github.com/user-attachments/assets/f2158c70-b3ab-4c14-8856-eb8463efef8a"
/>
2025-01-07 00:13:05 +01:00
Alex Pasmantier
d20784891f
chore: fix linting warnings (#230) 2025-01-06 19:23:28 +01:00
Osma S. Rautila
da2396e19a
chore(linting): add workspace lints (#228)
Hey, nice work. There's a lot of potential, and the idea of custom
channels with custom run commands is very appealing.

I was looking at the source, but clippy pedantic lints threw a lot of
warnings and I noticed the project did not have a linting profile. I
threw together a profile here, but it does leave a fair amount of
warnings in. Maybe some variation of this, or another linting profile
could be considered to guide future contributors on style decisions.
Cheers

---------

Co-authored-by: Alexandre Pasmantier <alex.pasmant@gmail.com>
2025-01-06 18:24:56 +01:00
Alexandre Pasmantier
6536bbf323 chore: bump to 0.8.8 2025-01-06 13:46:41 +01:00
Alex Pasmantier
3d49d308c1
refactor(cable): more debug information for cable channels (#223) 2025-01-06 13:39:41 +01:00
Alex Pasmantier
074889b43f
refactor(ux): don't print the list of available channels on channel parsing error (#222) 2025-01-06 13:39:34 +01:00
Alex Pasmantier
d7e6c35735
feat(ui): add support for standard ANSI colors theming and update default theme (#221)
Fixes #211 

<img width="2554" alt="Screenshot 2025-01-06 at 13 01 57"
src="https://github.com/user-attachments/assets/3706b93a-4be1-4a88-8c3e-bfb71a36db50"
/>
2025-01-06 13:03:50 +01:00
Alex Pasmantier
53bd4a3815
feat(ui): add new television theme that inherits the terminal bg (#220) 2025-01-06 00:00:51 +01:00
Alex Pasmantier
931a7bb5c3
feat(ui): make background color optional and fallback to terminal default bg color (#219)
See #211
2025-01-05 23:58:49 +01:00
Alex Pasmantier
124c06c403
refactor(config): check for config file existence before processing subcommands (#214) 2025-01-05 00:05:19 +01:00
Alex Pasmantier
657af5e36d
refactor(cable): always create default cable channels in user directory if no cable channels exist (#213)
Fixes #212
2025-01-04 23:57:01 +01:00
Tulip Blossom
741ce30b08
fix: automatically create configuration and data directories if they don't exist (#204)
I've noticed that the latest release (0.85.0) failed to start up if
`$HOME/.config/television` doesnt exist. This should force the directory
creation if the user doesn't have it.

Before:

![image](https://github.com/user-attachments/assets/d54245f7-e9b7-4baf-87d9-75869821e519)

After:

![image](https://github.com/user-attachments/assets/e0af2a16-987f-4943-85e7-59d427f64abb)

---------

Co-authored-by: Alexandre Pasmantier <alex.pasmant@gmail.com>
2025-01-01 12:05:20 +01:00
Alexandre Pasmantier
8cae59256d chore: bump to 0.8.5 2024-12-31 18:54:48 +01:00
Alex Pasmantier
2acfc41ceb
feat(ui): respect BAT_THEME env var for previewer syntax highlighting theme (#201)
Fixes #169
2024-12-31 18:53:20 +01:00
Alex Pasmantier
a74deceb98
fix(shell): add space if needed when using smart autocomplete (#200) 2024-12-31 18:21:07 +01:00
Alex Pasmantier
343ed3c126
feat(ux): automatically create default user configuration file if nonexistent (#196) 2024-12-31 13:11:22 +01:00
Heyward Fann
1899873680
fix(channels): list-channels in kebab-case (#195)
```
tv gitrepos
Unknown channel: gitrepos
```

And `tv list-channels` result, before the fix:

```
tv list-channels
Builtin channels:
        env
        files
        gitrepos
        dirs
        text
        alias
```

After:

```
./target/debug/tv list-channels
Builtin channels:
        env
        files
        git-repos // HERE
        dirs
        text
        alias
```
2024-12-31 11:21:12 +01:00
Alex Pasmantier
53afed28ee
chore: bump workspace to 0.0.16 (#189) 2024-12-30 22:55:22 +01:00
Alex Pasmantier
b49a06997b
feat(shell): shell integration support for fish (#186) 2024-12-30 17:50:45 +01:00
Alex Pasmantier
7614fbc653
feat(shell): add bash support for smart autocomplete and shell history (#184)
Fixes #180
2024-12-30 17:12:16 +01:00
Alex Pasmantier
0b5facca6a
feat(shell): add separate history binding for zsh integration (#183) 2024-12-30 16:13:19 +01:00
Alex Pasmantier
7434f1476a
chore: bump to 0.8.1 (#176) 2024-12-30 00:57:54 +01:00
Alex Pasmantier
97343c679d
fix(ux): make DeletePrevWord trigger channel update (#175)
Fixes #170
2024-12-30 00:52:34 +01:00
Alex Pasmantier
08fa41b06c
fix(channels): use the number of actual bytes read and not the sample buffer size when calculating the proportion of printable ASCII characters (#174)
Fixes #173
2024-12-30 00:22:04 +01:00