You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Invidious instances are picked at random to avoid everyone using the same server (@BSGalvan#571)
scrape_next_page aka the (alt-p) shortcut has been implemented for scrape_invidious_search which is the main search function.
If --notify-playing is enabled, after downloading a video with -d, there will be a notification saying download complete
u scraper, similar to U scraper, but doesn't automatically play the video and exit.
get_search_from_<src>: if search_source or --search-source is set to <src> the function will be run. It is supposed to set the variable _search to a search query
display_text_<interface> and info_wait_prompt_<interface>
This way interfaces can decide how the user picks the option for info_wait, and how to display text in a copyable way.
Addons
Extensions
playlists: manage local playlists
requires that the rfp and atp url handlers are put in either $YTFZF_SYSTEM_ADDON_DIR/url-handlers or ~/.config/ytfzf/url-handlers
This addon is intended to always be loaded, ie: add load_extension playlists to your config file.
create a playlist with --create-playlist=name
play a playlist with --playlist=name
add to a playlist with --atp=name search query
remove something from a playlist with --rfp=name
delete a playlist with --del-playlist=name
list playlists with --list-playlists
list items in a playlist with --list-titles
bsm, integrates bash with ytfzf's search prompt (only works if /bin/sh points to bash), this allows for
bash's history expansion syntax in the search prompt, (eg: !! to mean last search)
pressing up/down to cycle through search history
ctrl-r to do history search
Url Handlers
rfp: required for the playlists extension, removes items from a playlist.
atp: required for the playlists extension, adds items to a playlist.
Interfaces
implemented display_text and info_wait_prompt to the gui interface
this way a gui interface shows for text to be coppied instead of it being printed, and you dont have to type q/Q/m/Enter to continue.
Options
-i same as --interface
-u same as --url-handler
-T same as --thumb-viewer
-e same as --ext
--search-source: sets the source for search query
A list of sources include:
args: commandline arguments
prompt: search prompt
hist: search history
next: used internally when multi_search is enabled
fn-args: used internally to mean the arguments passed to the function.
--version-all: get the version of ytfzf and required dependencies.
Changes
-IVJ now puts everything into 1 array.
Fixes
-IVJ and -IR should now be significantly faster
url handlers in $YTFZF_SYSTEM_ADDON_DIR/url-handlers are not loaded.
checking if a selected url has an associated action is too loose.
no error is printed if odysee_video_count > 50
hist_file and search_hist_file ignore cache_dir if it was set in the config file
Deprecated
use_search_hist=1, use search_source=hist instead
use_search_hist=0 does nothing
Technical
Large refactor to how ytfzf handles scrapers,
there are no longer any builtin special cases to reduce code complexity.
handle_scrape_error occures for every scrape instead of at the end
Large refactor to how searching works.
search query comes from a "source" now, by default that is the argumentspassed to the program, if no arguments are passed it uses the prompt source.
Refactor to how -I, -L, and --info-wait work.
Interfaces are no longer responsible for running handle_keypress, that now happens in the main loop after the interface is run.
Plans for Next Update
on_search_<ext> will be changed to <ext>_on_search to prevent clashes with on_search_<search_query>