GNU General Public License v3.0

项目介绍

pystardust/ytfzf 是一个托管在 GitHub 上的开源项目,主要使用 Shell 编写,采用 GNU General Public License v3.0 许可证,目前获得 4.2k 个 Star、439 次 Fork。

仓库全名
pystardust/ytfzf
开源许可证
GNU General Public License v3.0
Star 数
4.2k
Fork 数
439
未关闭 Issue
66

README 摘要

NOTICE This project is no longer actively maintained, it should still work for the foreseeable future A POSIX script that helps you find Youtube videos (without API) and opens/downloads them using mpv/youtube-dl This is a little showcase Table Of Contents Dependencies Install Features Examples Configuration Bugs Contributing Credits Dependencies There are only 2 required dependencies, however the rest require some…

完整内容见 GitHub 原始 README 或本页 。

常见问题

ytfzf 用什么语言开发?

主要使用 Shell 编写,采用 GNU General Public License v3.0 许可证,目前有 4.2k 个 Star。

ytfzf 可以免费商用吗?

仓库标注的许可证为 GNU General Public License v3.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 ytfzf 的源码?

可以直接克隆仓库:git clone https://github.com/pystardust/ytfzf.git,默认分支为 master;安装与运行步骤见仓库 README。

ytfzf 最近还在维护吗?

仓库最近一次更新为 2024年9月27日,当前有 66 个未关闭 Issue;Star 数为 4.2k,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

A posix script to find and watch youtube videos from the terminal. (Without API)

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

简要分析

热度分
5080
价值分
2629
活跃状态
活跃

语言占比

Makefile
Perl
Python
Shell

Release

README

NOTICE

This project is no longer actively maintained, it should still work for the foreseeable future




Maintainer: Euro20179 Discord Discord

A POSIX script that helps you find Youtube videos (without API) and opens/downloads them using mpv/youtube-dl


This is a little showcase


Table Of Contents


Dependencies

There are only 2 required dependencies, however the rest require some configuration before you can replace them.

Required dependencies

  • mpv (the default video and audio player)
  • fzf (the default menu selection screen)

Optional dependencies

  • yt-dlp (for downloading)
  • dmenu (only if using the -D option)
  • ueberzugpp
    • needed for the following thumbnail viewers:
      • kitty, iterm2, sixel, and ueberzug
    • the original ueberzug or any fork may be used if you only want to use the ueberzug viewer.

Thumbnail Viewers

  • To use a thumbnail viewer include -T <viewer> in the command when running ytfzf
Program Wayland Support
kitty (requires ueberzugpp) ✅
iterm2 (requires ueberzugpp) ✅
sixel (requires ueberzugpp) ✅
sway (requires ueberzugpp) ✅ (only on sway)
wayland (requires ueberzugpp) ✅
chafa ✅
catimg ✅
imv ✅
mpv ✅
swayimg only on sway
swayimg (-T swayimg-hyprland) only on hyprland

Install

Repo status

if on linux and installed using make on version 2.0 or prior, run sudo make uninstall-old first

  1. Install the dependencies listed above
  2. Run the following commands
git clone https://github.com/pystardust/ytfzf
cd ytfzf
sudo make install doc
  • If you wish to not install documentation (highly unrecommended) run sudo make install instead.

  • If you wish to install addons, run sudo make addons

    • YTFZF_SYSTEM_ADDONS_DIR will point to /usr/local/share/ytfzf/addons even if you set PREFIX to something else
    • If you use a different prefix, it would be smart to export YTFZF_SYSTEM_ADDONS_DIR to $PREFIX/share/ytfzf/addons in a shell startup file.
  • You may also install ytfzf through your package manager, as listed on the side.

Addons

Addons are extra features that will not be as supported as everything built into ytfzf itself.

Addons are located in addons, copy any addon to ~/.config/ytfzf/{addon-type}/{addon}, and give it execute permissions.

You may also just copy the entire addon folder type, eg: cp -r addons/thumbnail-viewers ~/.config/ytfzf/

Usage

To use a scraper addon run ytfzf -c <scraper> ...

To use a thumbnail-viewer addon run ytfzf -T <viewer> ...

To use a interface addon run ytfzf -i <interface> ...

To use a url-handler addon run ytfzf -u <handler> ...

To use a sort-name addon run ytfzf --sort-name=<sort-name> ...

To use an extension addon run ytfzf -e <extension> ...


Features

  • Subscriptions
  • Thumbnails
  • Watch history
  • Search History
  • Downloading
  • Queueing multiple videos
  • Custom menus, and scrapers
  • Addon support

Examples

Search with thumbnails

ytfzf -t <search>

Use dmenu as the menu instead of fzf

ytfzf -D <search>

Print the link of the selected video instead of playing it

ytfzf -L <search>

Search Odysee instead of youtube

ytfzf -cO <search>

Use the chafa thumbnail viewer, pass --vo=sixel, and --quiet to mpv, scrape odysee with the search odysee search, youtube with the search: youtube search, and also scrape subscriptions

ytfzf -t -T chafa --url-handler-opts='--vo=sixel --quiet' -cO,Y,SI --multi-search odysee search,youtube search

Configuration

Everything that is an option can also be configured in ~/.config/ytfzf/conf.sh.

In addition, the video player and other things may be changed here

Here is a sample configuration (please dont use it)

For more information, see ytfzf(5) which should be installed, if it’s not see the wiki.


Bugs

  • dwm with swallow patch: Images don’t render with ueberzug when looped (ie, option -l)
  • if thumbnails are not working .Xauthority might be causing it. Try deleting it and relogging into your computer.
  • When fzf is not set to 100% height, thumbnails may appear in the wrong position

Contributing

Feel free to contribute, and add your name to the credits, please use the development branch. For more information see contributing

Credits

User Contributions Donate
Pystardust contributions
Euro20179 contributions
Simonhughxyz contributions
Jac-Zac contributions
Mudskipper875 contributions
Gardockt contributions
qoheniac contributions
mathisto contributions

评论

暂无评论