Giter VIP home page Giter VIP logo

terminal-yt's Introduction

Terminal-yt

A small newsboat-inspired youtube viewer written in Rust.

Tyt can parse atom and RSS feeds and was written with video feed from YouTube or Twitch in mind. The default player is mpv. However, this can be changed in the settings.

Tyt was build with tui and termion as backend.

Screenshot

Features

  • Fetch video from atom and RSS feeds
  • Open videos in a video player (per link)
  • Mark videos played
  • Filter "empty" channels
  • Combine several feed in one Custom Channel

Usage

up, down, left, right j,k,h,l
open video l,o,enter
enter l,enter
back esc,h,right
mark / unmark m,M
update,fetch new videos r
show/hide channels that have no unseen videos t
copy video url c

Configuration

The config file is placed at ~/.config/tyt/config.yml and is written in the yml file format.

If no config file is found, a config file with all options and their default values is written at start.

Name Default Type Description
show_empty_channels true bool Show channels that have 0 new unmarked videos
mark_on_open true bool Mark a video if opened
down_on_mark true bool Move pointer one down if a video is marked
app_title "TYT" str The title of the left box
update_at_start true bool Fetch new videos at start
sort_by_tag false bool Sort channels by tag or name
message_timeout 20 u8 Timeout for (error) messages
use_notify_send true bool if false no message with notify-send will be send
video_player mpv str Can be changed to umpv, vlc, or any other program.

Url file

The videos are fetched from a list of urls that have to be provided in the ~/.config/tyt/urls.yaml file.

For example:

---
channels:
    - url: "https://www.youtube.com/feeds/videos.xml?channel_id=UCBa659QWEk1AI4Tg--mrJ2A" # feed url
      name: "Tom Scott" # optional
      tag: FAVORITE # optional

    - url: ...

custom_channels:
    - urls:
        -"https://www.youtube.com/feeds/videos.xml?channel_id=UCBa659QWEk1AI4Tg--mrJ2A" # feed url
      name: "Tom Scott" # mandatory in custom channels!
      tag: FAVORITE # optional

Installation

  • clone repo and cd terminal-yt
  • run cargo build or cargo install --path .

terminal-yt's People

Contributors

d1mon avatar jedahan avatar jooooscha avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.