squiter / ivy-youtube Goto Github PK
View Code? Open in Web Editor NEWSearch for an Youtube video inside Emacs with Ivy
License: MIT License
Search for an Youtube video inside Emacs with Ivy
License: MIT License
The last (as currently sorted by ivy-youtube
#14 ) search result is always nil. This is probably caused by ivy-youtube-wrapper
or ivy-youtube-tree-assoc
since (ivy-youtube-tree-assoc 'items *qqJson*)
does contain the entry that's nil. This problem is present in all ivy-youtube
versions i have tried (initial commit, before my recent changes, master)
hey, it would be nice to have the ability to set a queue in vlc/mpv or even the browser!
It works on emacs 26+, but not on 27.1.
Ivy Youtube: Process exited abnormally with code 127
In the Ivy Youtube Output buffer:
emacs: /usr/bin/vlc-wrapper: No such file or directory
But /usr/bin/vlc-wrapper exists.
After setting up as directed to in the readme, I got REQUEST [error] Error (error) while connecting to https://www.googleapis.com/youtube/v3/search.
on trying ivy-youtube
.
I tried toggle-debug-on-error
and saw
"searching..."(:data ((error (errors . [((domain . "usageLimits") (reason . "accessNotConfigured") (message . "Project 123456789012 is not found and cannot be used for API calls. If it is recently created, enable YouTube Data API by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=123456789012 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.") (extendedHelp . "https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=123456789012"))]) (code . 403) (message . "Project 123456789012 is not found and cannot be used for API calls. If it is recently created, enable YouTube Data API by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=372038329055 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry."))) :symbol-status error :error-thrown (error http 403) :response [cl-struct-request-response 403 nil ((error (errors . [((domain . "usageLimits") (reason . "accessNotConfigured") (message . "Project 123456789012 is not found and cannot be used for API calls. If it is recently created, enable YouTube Data API by visiting https://console.developers.google.com/apis/api/youtube.googleapis.com/overview?project=123456789012 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.") …
I think
ivy-youtube
should display the error.errors.message instead of just REQUEST [error] Error (error) while connecting to https://www.googleapis.com/youtube/v3/search.
Can support YouTube Data API v3?
Hello,
Thank you for sharing this package. I'm facing a issue in playing videos through mpv where the mpv player stops responding after playing a certain length of video. I initially thought this to be a bug in mpv, but I could only replicate it by running it via ivy-youtube. Running it on a shell doesn't cause issues.
I think I'm able to figure out the reason here.
The default command to run the process:
(make-process :name "Ivy Youtube"
:buffer "*Ivy Youtube Output*"
:sentinel (lambda (process event)
(message
(format "Ivy Youtube: Process %s (Check buffer *Ivy Youtube Output*)" event)))
:command `(,ivy-youtube-play-at ,video-url))
Causes a lot of output to be written in the *Ivy Youtube Output*
buffer consider the shell escape characters aren't correctly processed. Removing the buffer
and sentinel
stops that from happening.
I would suggest we move these behind a debug flag that is switched off by default.
Could we have an ivy-youtube-specific history? Ie. change the read-string on 74 to something like
(let ((q (read-string
"Search: "
(when ivy-youtube-search-history (car foo-hist))
'ivy-youtube-search-history)))
(push q ivy-youtube-search-history)
q)
It would be the best to actually query the youtube link directly through my player, using the youtube-dl library (i'm using mpsyt right now, the command being "mpsyt playurl", but livestreamer or mpv works too).
How could I achieve that?
Thanks you!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.