Skip to content

Ytfzf v2.1

Compare
Choose a tag to compare
@Euro20179 Euro20179 released this 21 Jan 01:14
· 919 commits to master since this release

To Update

The install location on linux has changed from /usr/bin to /usr/local/bin to be consistent on all OS, and to avoid gnumake only syntax.
In addition the man page location changed from /usr/share/man/man* to /usr/local/share/man to be consistent.

git clone https://github.com/pystardust/ytfzf
cd ytfzf
git checkout v2.1
#if on linux and installed any version 2.0 and prior run the command below
sudo make uninstall-old
#everyone uses the command below
sudo make install doc

If you wish to not install documentation (highly unrecommended) run sudo make install instead.

Additions

  • Search history (-q)
  • imv thumbnail viewer
  • search again (-s)
  • custom serch_prompt_menus depending on the interface
  • custom quick_menus depending on the interface
  • --submenu-scraping-opts, because --submenu-opts does not apply to scraping for submenus (eg: --pages)
  • alt-s to search again
  • alt-i to get all info about a video

Changes

  • players are now not responsible for sending notifications, that is the job of handle_playing_notifications
  • (linux only) make installs to /usr/local/bin instead of /usr/bin
  • man pages install to /usr/local/share/man instead of /usr/share/man (@Vouivre)
  • Makefile also now uses ${DESTDIR}, and ${PREFIX} (@Vouivre)
  • search_prompt_menu has been documented.

Fixes

  • man pages not able to install on mac.
  • Makefile is now posix compliant
  • Docs about -D, -a, -r, -A are outdated
    • is_ext_menu had been removed
    • is_interface_scripting had been removed
  • $interface undocumented
  • $external_menu_len undocumented
  • alt-v, alt-d, and alt-m do nothing
  • the default for submenu_opts is 1 (should be empty)
  • make uninstall doesn't uninstall ytfzf(5)
  • ytfzf(1) and ytfzf(5) install with execute permissions
  • curl not treated as a dependency when it is
  • thumbnail-viewers: chafa-16 and catimg-256 were broken
  • No commas in view count
  • add a backup posix compliant shuf function in case shuf is not installed
  • -A selects a maximum of 100 videos
  • if curl failed while downloading thumbnails for any reason, it would call curl again (@soystemd)
  • Videos without a seperate audio stream will make video_pref default to best, overriding user selection with -f.
  • notify_playing incorrectly documented as notify_video_playing

Codebase

  • interface=scripting, interface=ext, and interface="" are now all treated the same as user created interfaces.
    • all have their own quick_menu*, and search_prompt_menu*

Next update I will also try to have links to commits for all changes.


Plans for 2.2

  • scraping --pages in youtube asynchronously
    • you could scrape 100 pages in the time it takes to scrape 1
  • addons folder that can be installed with make addons
    • this will allow us to add more buggy scrapers, menus, and thumbnail viewers, as they will be marked as unofficial
  • --fzf-opts and --fzf-thumbnail-opts to pass opts to fzf in menu
  • custom_scrape_search_exclude to simplify adding scrape search exceptions to scrape_search_exclude

If you find any bugs, have any questions, or anything else, feel free to open an issue :)