add youtube-tui config and .zshprofile
This commit is contained in:
parent
a19db5bafa
commit
285cb72a18
10 changed files with 376 additions and 0 deletions
5
dot_zprofile
Normal file
5
dot_zprofile
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
|
||||||
|
export MGFXC_WINE_PATH="/home/matthieu/.winemonogame"
|
||||||
|
|
||||||
|
export PATH="$PATH:/home/matthieu/.winemonogame"
|
||||||
|
source /usr/local/lib/node_modules/@hyperupcall/autoenv/activate.sh
|
||||||
27
private_dot_config/youtube-tui/appearance.yml
Normal file
27
private_dot_config/youtube-tui/appearance.yml
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
borders: Rounded
|
||||||
|
colors:
|
||||||
|
text: Reset
|
||||||
|
text_special: Reset
|
||||||
|
text_secondary: Reset
|
||||||
|
text_error: LightRed
|
||||||
|
outline: Reset
|
||||||
|
outline_selected: LightBlue
|
||||||
|
outline_hover: LightRed
|
||||||
|
outline_secondary: LightYellow
|
||||||
|
message_outline: '#FF7F00'
|
||||||
|
message_error_outline: LightRed
|
||||||
|
message_success_outline: LightGreen
|
||||||
|
command_capture: '#64FF64'
|
||||||
|
item_info:
|
||||||
|
tag: Gray
|
||||||
|
title: LightBlue
|
||||||
|
description: Gray
|
||||||
|
author: LightGreen
|
||||||
|
viewcount: LightYellow
|
||||||
|
length: LightCyan
|
||||||
|
published: LightMagenta
|
||||||
|
video_count: '#838DFF'
|
||||||
|
sub_count: '#65FFBA'
|
||||||
|
likes: '#C8FF81'
|
||||||
|
genre: '#FF75D7'
|
||||||
|
page_turner: Gray
|
||||||
25
private_dot_config/youtube-tui/cmdefine.yml
Normal file
25
private_dot_config/youtube-tui/cmdefine.yml
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
bookmarks: loadpage bookmarks
|
||||||
|
library: loadpage library
|
||||||
|
cp: copy
|
||||||
|
channel: loadpage channel
|
||||||
|
video: loadpage video
|
||||||
|
x: quit
|
||||||
|
exit: quit
|
||||||
|
sub: sync
|
||||||
|
h: help
|
||||||
|
tpause: mpv tprop pause ;; echo success Toggled player pause
|
||||||
|
next: mpv playlist-next ;; echo mpv Skipped
|
||||||
|
popular: loadpage popular
|
||||||
|
back: mpv playlist-previous ;; echo mpv Skipped
|
||||||
|
watchhistory: loadpage watchhistory
|
||||||
|
trending: loadpage trending
|
||||||
|
feed: loadpage feed
|
||||||
|
search: loadpage search
|
||||||
|
playlist: loadpage playlist
|
||||||
|
r: reload
|
||||||
|
pause: mpv sprop pause yes ;; echo mpv Player paused
|
||||||
|
v: version
|
||||||
|
print: echo
|
||||||
|
rc: reload configs
|
||||||
|
q: quit
|
||||||
|
resume: mpv sprop pause no ;; echo mpv Player resumed
|
||||||
82
private_dot_config/youtube-tui/commandbindings.yml
Normal file
82
private_dot_config/youtube-tui/commandbindings.yml
Normal file
|
|
@ -0,0 +1,82 @@
|
||||||
|
global:
|
||||||
|
Left:
|
||||||
|
3: back ;; echo mpv Unskipped
|
||||||
|
2: mpv seek -5 ;; echo mpv Rewinded 5 seconds
|
||||||
|
'c':
|
||||||
|
2: cp ${url}
|
||||||
|
'f':
|
||||||
|
2: run ${browser} '${url}'
|
||||||
|
' ':
|
||||||
|
0: tpause ;; echo mpv Player pause toggled
|
||||||
|
'y':
|
||||||
|
0: cp ${url}
|
||||||
|
Right:
|
||||||
|
3: next ;; echo mpv Skipped
|
||||||
|
2: mpv seek 5 ;; echo mpv Fast forwarded 5 seconds
|
||||||
|
search:
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
popular:
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
trending:
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
video: {}
|
||||||
|
playlist:
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
channel_main: {}
|
||||||
|
channel_videos:
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
channel_playlists:
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
watchhistory:
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
feed:
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-channel-url}/videos' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-video-url}'
|
||||||
|
'P':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-channel-url}/videos' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-video-url}' --no-video
|
||||||
|
library:
|
||||||
|
'A':
|
||||||
|
1: parrun ${terminal-emulator} mpv '${hover-url}' --no-video --loop-playlist=inf --shuffle
|
||||||
|
'p':
|
||||||
|
2: parrun mpv '${hover-url}'
|
||||||
|
'a':
|
||||||
|
2: parrun ${terminal-emulator} mpv '${hover-url}' --no-video
|
||||||
56
private_dot_config/youtube-tui/commands.yml
Normal file
56
private_dot_config/youtube-tui/commands.yml
Normal file
|
|
@ -0,0 +1,56 @@
|
||||||
|
launch_command: loadpage library ;; flush ;; history clear ;; key Esc 0 ;; key Up 0 ;; key Up 0 ;; key Left 0 ;; key Enter 0
|
||||||
|
video:
|
||||||
|
- Reload updated video: run rm '~/.cache/youtube-tui/info/${id}.json' ;; video ${id}
|
||||||
|
- Play video: parrun ${video-player} '${embed-url}'
|
||||||
|
- Play audio: mpv stop ;; resume ;; mpv sprop loop-file no ;; mpv loadfile '${embed-url}' ;; echo mpv Player started
|
||||||
|
- Play audio (loop): mpv stop ;; resume ;; mpv sprop loop-file inf ;; mpv loadfile '${embed-url}' ;; echo mpv Player started
|
||||||
|
- View channel: channel ${channel-id}
|
||||||
|
- Subscribe to channel: sync ${channel-id}
|
||||||
|
- Open in browser: parrun ${browser} '${url}'
|
||||||
|
- Toggle bookmark: togglemark ${id}
|
||||||
|
- Save video to library: bookmark ${id} ;; run rm -rf '${save-path}${id}.*' ;; parrun ${terminal-emulator} ${youtube-downloader} '${embed-url}' -o '${save-path}%(title)s[%(id)s].%(ext)s'
|
||||||
|
- Save audio to library: bookmark ${id} ;; parrun rm -rf '${save-path}${id}.*' ;; parrun ${terminal-emulator} ${youtube-downloader} '${embed-url}' -x -o '${save-path}%(title)s[%(id)s].%(ext)s'
|
||||||
|
- 'Mode: ${provider}': switchprovider
|
||||||
|
saved_video:
|
||||||
|
- Reload updated video: run rm '~/.cache/youtube-tui/info/${id}.json' ;; video ${id}
|
||||||
|
- '[Offline] Play saved file': parrun ${video-player} '${offline-path}' --force-window
|
||||||
|
- '[Offline] Play saved file (audio)': mpv stop ;; resume ;; mpv sprop loop-file no ;; mpv loadfile '${offline-path}' ;; echo mpv Player started
|
||||||
|
- '[Offline] Play saved file (audio loop)': mpv stop ;; resume ;; mpv sprop loop-file inf ;; mpv loadfile '${offline-path}' ;; echo mpv Player started
|
||||||
|
- View channel: channel ${channel-id}
|
||||||
|
- Subscribe to channel: sync ${channel-id}
|
||||||
|
- Open in browser: parrun ${browser} '${url}'
|
||||||
|
- Toggle bookmark: togglemark ${id}
|
||||||
|
- Redownload video to library: bookmark ${id} ;; run rm ${save-path}*${id}*.* ;; parrun ${terminal-emulator} ${youtube-downloader} ${embed-url} -o '${save-path}%(title)s[%(id)s].%(ext)s'
|
||||||
|
- Redownload audio to library: bookmark ${id} ;; run rm ${save-path}*${id}*.* ;; parrun ${terminal-emulator} ${youtube-downloader} ${embed-url} -x -o '${save-path}%(title)s[%(id)s].%(ext)s'
|
||||||
|
- Delete saved file: run rm ${save-path}*${id}*.*
|
||||||
|
playlist:
|
||||||
|
- Switch view: '%switch-view%'
|
||||||
|
- Reload updated playlist: run rm ~/.cache/youtube-tui/info/${id}.json ;; reload
|
||||||
|
- Play all (videos): parrun ${video-player} ${url}
|
||||||
|
- Play all (audio): mpv stop ;; resume ;; ${mpv-queuelist} ;; mpv sprop loop-playlist no ;; mpv playlist-play-index 0 ;; echo mpv Player started
|
||||||
|
- Shuffle play all (audio loop): mpv stop ;; resume ;; ${mpv-queuelist} ;; mpv sprop loop-playlist yes ;; mpv playlist-shuffle ;; mpv playlist-play-index 0 ;; echo mpv Player started
|
||||||
|
- View channel: channel ${channel-id}
|
||||||
|
- Subscribe to channel: sync ${channel-id}
|
||||||
|
- Open in browser: parrun ${browser} '${url}'
|
||||||
|
- Toggle bookmark: togglemark ${id}
|
||||||
|
- Save playlist videos to library: bookmark ${id} ;; run rm -rf '${save-path}*${id}*' ;; parrun ${terminal-emulator} bash -c "${youtube-downloader} ${all-videos} -o '"'${save-path}${title}[${id}]/%(title)s[%(id)s].%(ext)s'"'"
|
||||||
|
- Save playlist audio to library: bookmark ${id} ;; run rm -rf '${save-path}*${id}*' ;; parrun ${terminal-emulator} bash -c "${youtube-downloader} ${all-videos} -x -o '"'${save-path}${title}[${id}]/%(title)s[%(id)s].%(ext)s'"'"
|
||||||
|
- 'Mode: ${provider}': switchprovider
|
||||||
|
saved_playlist:
|
||||||
|
- Switch view: '%switch-view%'
|
||||||
|
- Reload updated playlist: run rm ~/.cache/youtube-tui/info/${id}.json ;; reload
|
||||||
|
- '[Offline] Play all (videos)': parrun ${video-player} ${save-path}*${id}*/* --force-window
|
||||||
|
- '[Offline] Play all (audio)': mpv stop ;; resume ;; ${offline-queuelist} ;; mpv sprop loop-playlist no ;; mpv playlist-play-index 0 ;; echo mpv Player started
|
||||||
|
- '[Offline] Shuffle play all (audio loop)': mpv stop ;; resume ;; ${offline-queuelist} ;; mpv sprop loop-playlist yes ;; mpv playlist-shuffle ;; mpv playlist-play-index 0 ;; echo mpv Player started
|
||||||
|
- View channel: channel ${channel-id}
|
||||||
|
- Subscribe to channel: sync ${channel-id}
|
||||||
|
- Open in browser: parrun ${browser} '${url}'
|
||||||
|
- Toggle bookmark: togglemark ${id}
|
||||||
|
- Redownload playlist videos to library: bookmark ${id} ;; run rm -rf ${save-path}*${id}* ;; parrun ${terminal-emulator} bash -c "${youtube-downloader} ${all-videos} -o '"'${save-path}${title}[${id}]/%(title)s[%(id)s].%(ext)s'"'"
|
||||||
|
- Redownload playlist audio to library: bookmark ${id} ;; run rm -rf ${save-path}*${id}* ;; parrun ${terminal-emulator} bash -c "${youtube-downloader} ${all-videos} -x -o '"'${save-path}${title}[${id}]/%(title)s[%(id)s].%(ext)s'"'"
|
||||||
|
- Delete saved files: run rm -rf ${save-path}*${id}*
|
||||||
|
channel:
|
||||||
|
- Subscribe to channel: sync ${id}
|
||||||
|
- Play all (videos): parrun ${video-player} ${url}
|
||||||
|
- Play all (audio): mpv stop ;; resume ;; mpv loadfile ${url} ;; mpv sprop loop-playlist no ;; mpv playlist-play-index 0 ;; echo mpv Player started
|
||||||
|
- Shuffle play all (audio loop): mpv stop ;; resume ;; mpv loadfile ${url} ;; mpv sprop loop-playlist yes ;; mpv playlist-shuffle ;; mpv playlist-play-index 0 ;; echo mpv Player started
|
||||||
52
private_dot_config/youtube-tui/keybindings.yml
Normal file
52
private_dot_config/youtube-tui/keybindings.yml
Normal file
|
|
@ -0,0 +1,52 @@
|
||||||
|
'e':
|
||||||
|
2: End
|
||||||
|
'r':
|
||||||
|
2: Reload
|
||||||
|
Esc:
|
||||||
|
0: Deselect
|
||||||
|
'd':
|
||||||
|
4: RemoveWord
|
||||||
|
0: ClearHistory
|
||||||
|
Enter:
|
||||||
|
0: Select
|
||||||
|
Backspace:
|
||||||
|
0: Back
|
||||||
|
'j':
|
||||||
|
0: MoveDown
|
||||||
|
'q':
|
||||||
|
0: Exit
|
||||||
|
Right:
|
||||||
|
0: MoveRight
|
||||||
|
2: NextWord
|
||||||
|
End:
|
||||||
|
0: ClearHistory
|
||||||
|
Home:
|
||||||
|
0: FirstHistory
|
||||||
|
'v':
|
||||||
|
2: Paste
|
||||||
|
'w':
|
||||||
|
2: RemoveWord
|
||||||
|
F5:
|
||||||
|
0: Reload
|
||||||
|
':':
|
||||||
|
0: StartCommandCapture
|
||||||
|
'u':
|
||||||
|
2: ClearLine
|
||||||
|
'a':
|
||||||
|
2: First
|
||||||
|
'k':
|
||||||
|
0: MoveUp
|
||||||
|
Up:
|
||||||
|
0: MoveUp
|
||||||
|
2: PreviousEntry
|
||||||
|
Down:
|
||||||
|
2: NextEntry
|
||||||
|
0: MoveDown
|
||||||
|
'l':
|
||||||
|
0: MoveRight
|
||||||
|
Left:
|
||||||
|
4: Back
|
||||||
|
0: MoveLeft
|
||||||
|
2: PreviousWord
|
||||||
|
'h':
|
||||||
|
0: MoveLeft
|
||||||
30
private_dot_config/youtube-tui/main.yml
Normal file
30
private_dot_config/youtube-tui/main.yml
Normal file
|
|
@ -0,0 +1,30 @@
|
||||||
|
mouse_support: true
|
||||||
|
invidious_instance: https://invidious.f5.si
|
||||||
|
write_config: Try
|
||||||
|
allow_unicode: true
|
||||||
|
message_bar_default: All good :)
|
||||||
|
images: Sixels
|
||||||
|
refresh_after_modifying_search_filters: true
|
||||||
|
syncing:
|
||||||
|
download_images: true
|
||||||
|
sync_channel_info: true
|
||||||
|
sync_channel_cooldown_secs: 86400
|
||||||
|
sync_videos_cooldown_secs: 600
|
||||||
|
limits:
|
||||||
|
watch_history: 50
|
||||||
|
search_history: 75
|
||||||
|
commands_history: 75
|
||||||
|
textbar_scroll_behaviour: History
|
||||||
|
image_index: 4
|
||||||
|
provider: YouTube
|
||||||
|
search_provider: RustyPipe
|
||||||
|
api_key: YOUR API KEY HERE
|
||||||
|
shell: sh
|
||||||
|
legacy_input_handling: false
|
||||||
|
env:
|
||||||
|
browser: xdg-open
|
||||||
|
terminal-emulator: konsole -e
|
||||||
|
save-path: ~/.local/share/youtube-tui/saved/
|
||||||
|
youtube-downloader: yt-dlp
|
||||||
|
download-path: ~/Downloads/%(title)s-%(id)s.%(ext)s
|
||||||
|
video-player: mpv
|
||||||
88
private_dot_config/youtube-tui/pages.yml
Normal file
88
private_dot_config/youtube-tui/pages.yml
Normal file
|
|
@ -0,0 +1,88 @@
|
||||||
|
main_menu:
|
||||||
|
layout:
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- SearchBar
|
||||||
|
- SearchFilters
|
||||||
|
- type: CenteredRow
|
||||||
|
items:
|
||||||
|
- Library
|
||||||
|
- Feed
|
||||||
|
- History
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- ItemList
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- MessageBar
|
||||||
|
message: Loading main menu...
|
||||||
|
command: key Esc 0 ;; key Down 0 ;; key Down 0 ;; key Enter 0
|
||||||
|
feed:
|
||||||
|
layout:
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- SearchBar
|
||||||
|
- SearchFilters
|
||||||
|
- type: CenteredRow
|
||||||
|
items:
|
||||||
|
- Library
|
||||||
|
- Feed
|
||||||
|
- History
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- ChannelList
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- VideoList
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- MessageBar
|
||||||
|
message: Loading feed...
|
||||||
|
command: key Esc 0 ;; key Down 0 ;; key Down 0 ;; key Enter 0
|
||||||
|
search:
|
||||||
|
layout:
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- SearchBar
|
||||||
|
- SearchFilters
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- ItemList
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- MessageBar
|
||||||
|
message: Loading search results...
|
||||||
|
command: key Esc 0 ;; key Down 0 ;; key Enter 0
|
||||||
|
singleitem:
|
||||||
|
layout:
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- SearchBar
|
||||||
|
- SearchFilters
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- SingleItemInfo
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- MessageBar
|
||||||
|
message: Loading item details...
|
||||||
|
command: key Esc 0 ;; key Down 0 ;; key Enter 0
|
||||||
|
channeldisplay:
|
||||||
|
layout:
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- SearchBar
|
||||||
|
- SearchFilters
|
||||||
|
- type: CenteredRow
|
||||||
|
items:
|
||||||
|
- ChannelMain
|
||||||
|
- ChannelVideos
|
||||||
|
- ChannelPlaylists
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- ChannelDisplay
|
||||||
|
- type: NonCenteredRow
|
||||||
|
items:
|
||||||
|
- MessageBar
|
||||||
|
message: Loading channel details...
|
||||||
|
command: key Esc 0 ;; key Down 0 ;; key Enter 0 ;; key Up 0
|
||||||
4
private_dot_config/youtube-tui/remaps.yml
Normal file
4
private_dot_config/youtube-tui/remaps.yml
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
'a':
|
||||||
|
5:
|
||||||
|
code: 'b'
|
||||||
|
modifiers: 5
|
||||||
7
private_dot_config/youtube-tui/search.yml
Normal file
7
private_dot_config/youtube-tui/search.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
query: ''
|
||||||
|
filters:
|
||||||
|
sort: Relevance
|
||||||
|
date: None
|
||||||
|
duration: None
|
||||||
|
type: All
|
||||||
|
page: 1
|
||||||
Loading…
Add table
Add a link
Reference in a new issue