aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
m---------emacs/.emacs.d/lisp/exitter0
-rw-r--r--emacs/.emacs.d/lisp/my/my-libgen.el35
-rw-r--r--emacs/.emacs.d/lisp/my/my-ytdl.el2
3 files changed, 35 insertions, 2 deletions
diff --git a/emacs/.emacs.d/lisp/exitter b/emacs/.emacs.d/lisp/exitter
-Subproject 7ccd8ff06b50008ad0602c6652caebd4c4674a6
+Subproject eec7fd9f70d317a70049d5758929b984d8d1812
diff --git a/emacs/.emacs.d/lisp/my/my-libgen.el b/emacs/.emacs.d/lisp/my/my-libgen.el
index d4efb30..c3ac3d2 100644
--- a/emacs/.emacs.d/lisp/my/my-libgen.el
+++ b/emacs/.emacs.d/lisp/my/my-libgen.el
@@ -162,6 +162,27 @@
id-head
(downcase (alist-get 'md5 info)))))
+(defun my-libgen-plus-make-download-link-onion (info)
+ (let* ((path
+ (dom-attr
+ (dom-search
+ (my-url-fetch-dom
+ (format "%s/edition.php?id=%s" my-libgen-plus-host
+ (alist-get 'edition-id info)))
+ (lambda (n)
+ (string-match "r_[0-9]+_libgen" (or (dom-attr n 'href) ""))))
+ 'href))
+ (id
+ (progn
+ (string-match "r_\\([0-9]+\\)_libgen" path)
+ (match-string 1 path)))
+ (id-head (substring id 0 -3)))
+ (format "%s/LG/%s%s/%s"
+ my-libgen-onion-host
+ (make-string (- 4 (length id-head)) ?0)
+ id-head
+ (downcase (alist-get 'md5 info)))))
+
(defun my-libgen-plus-get-download-url (info)
(let-alist info
(file-name-concat
@@ -183,6 +204,18 @@
(my-wget-async
(my-libgen-plus-get-download-url info)
filename
+ t
+ (lambda () (my-libgen-check-md5 filename md5)))))
+
+(defun my-libgen-plus-download-onion-action ()
+ (interactive)
+ (let* ((info (get-text-property (point) 'button-data))
+ (filename (file-name-concat (expand-file-name my-libgen-download-dir)
+ (my-libgen-format-filename info)))
+ (md5 (alist-get 'md5 info)))
+ (my-wget-async
+ (my-libgen-plus-make-download-link-onion info)
+ filename
nil
(lambda () (my-libgen-check-md5 filename md5)))))
@@ -244,7 +277,7 @@
(set-keymap-parent kmap button-map)
(define-key kmap "d" 'my-libgen-plus-download-action)
(define-key kmap "i" 'my-libgen-plus-infobox-action)
- ;; (define-key kmap "t" 'my-libgen-download-onion-action)
+ (define-key kmap "t" 'my-libgen-plus-download-onion-action)
;; (define-key kmap "p" 'my-libgen-show-more-info)
kmap))
diff --git a/emacs/.emacs.d/lisp/my/my-ytdl.el b/emacs/.emacs.d/lisp/my/my-ytdl.el
index b3b1cf7..5908666 100644
--- a/emacs/.emacs.d/lisp/my/my-ytdl.el
+++ b/emacs/.emacs.d/lisp/my/my-ytdl.el
@@ -91,7 +91,7 @@
(defun my-ytdl-video-url-p (url)
(let ((urlobj (url-generic-parse-url url)))
(or (and (string-match-p
- "^\\(www\\.\\)?\\(youtube\\.com\\|yewtu\\.be\\)"
+ "^\\(www\\.\\|m\\.\\)?\\(youtube\\.com\\|yewtu\\.be\\)"
(url-host urlobj))
(string-match-p "^/watch\\?v=.*" (url-filename urlobj)))
(equal "youtu.be" (url-host urlobj)))))