From 4ffeaa75301cdebfcd7daef0583b0bea9e7d052c Mon Sep 17 00:00:00 2001 From: bw Date: Tue, 7 Jul 2026 18:21:59 -0400 Subject: [PATCH 1/3] hsys-youtube-end-format - Fix so at least plays from start time End time is no longer supported in URLs by YouTube. --- ChangeLog | 4 ++++ hsys-youtube.el | 10 ++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7e6f1caf..e847f038 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2026-07-07 Bob Weiner +* hsys-youtube.el (hsys-youtube-end-format): YouTube no longer allows end times or the + embed protocol in video urls, so update this format to at least jump to the proper + start time. The end time is sent but ignored. + * hui-mouse.el (hkey-alist): Trigger 'hui-select-thing' or 'hui-select-mark-delimited-sexp' if (point) >= any hbut end point, not just equal to it, as before. This was causing a failure to trigger when a HyWikiWord came right before a closing double quote that diff --git a/hsys-youtube.el b/hsys-youtube.el index 78562dad..e51a2720 100644 --- a/hsys-youtube.el +++ b/hsys-youtube.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 10-Jul-22 at 18:10:56 -;; Last-Mod: 19-Jan-24 at 12:11:07 by Mats Lidell +;; Last-Mod: 7-Jul-26 at 18:03:16 by Bob Weiner ;; ;; SPDX-License-Identifier: GPL-3.0-or-later ;; @@ -59,9 +59,12 @@ where the time string is inserted. The time string must be a colon-separated hours:minutes:seconds string, e.g. 1:2:44 (1 hour, two minutes, 45 seconds), where the hours and minutes are optional.") -(defvar hsys-youtube-end-format "https://www.youtube.com/embed/%s?autoplay=1&start=%s&end=%s" + ;; Old format that used to work: + ;; "https://www.youtube.com/embed/%s?autoplay=1&start=%s&end=%s" +(defvar hsys-youtube-end-format "https://www.youtube.com/watch?v=%s&t=%s&end=%s" "Format string used to play a section of a Youtube video. -This requires use of the `embed' api. +This requires use of the `embed' api (but YouTube has since disallowed +this in urls, so stop end times no longer work). The first %s is where the video id string is inserted; the second %s is where the start time string in seconds is inserted; the third %s is @@ -247,4 +250,3 @@ START-TIME-STRING format is invalid, return it unchanged." (provide 'hsys-youtube) ;;; hsys-youtube.el ends here - From 38a64820315cd5ae6585b690a3506b4e1dfcac29 Mon Sep 17 00:00:00 2001 From: bw Date: Tue, 7 Jul 2026 18:24:05 -0400 Subject: [PATCH 2/3] hui-mouse.el (hkey-alist) - Push missed change from prior commit --- hui-mouse.el | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/hui-mouse.el b/hui-mouse.el index bc660072..5355a76d 100644 --- a/hui-mouse.el +++ b/hui-mouse.el @@ -3,7 +3,7 @@ ;; Author: Bob Weiner ;; ;; Orig-Date: 04-Feb-89 -;; Last-Mod: 4-Apr-26 at 23:19:29 by Bob Weiner +;; Last-Mod: 7-Jul-26 at 01:04:32 by Bob Weiner ;; ;; SPDX-License-Identifier: GPL-3.0-or-later ;; @@ -352,8 +352,8 @@ The button's attributes are stored in the symbol, `hbut:current'.") ;; character of the opening or closing tag. Ignore delimiters in ;; the middle of a Hyperbole button. ((and (if (setq hkey-at-hbut (hbut:at-p)) - (or (eq (point) (hattr:get 'hbut:current 'lbl-end)) - (eq (point) (hattr:get 'hbut:current 'name-end))) + (or (>= (point) (or (hattr:get 'hbut:current 'lbl-end) (1+ (point)))) + (>= (point) (or (hattr:get 'hbut:current 'name-end) (1+ (point))))) t) (hui-select-at-delimited-thing-p)) . ((hui-select-thing) . (progn (hui-select-thing) @@ -366,8 +366,8 @@ The button's attributes are stored in the symbol, `hbut:current'.") ;; removed someday. Ignore delimiters in the middle of a ;; Hyperbole button. ((and (if hkey-at-hbut - (or (eq (point) (hattr:get 'hbut:current 'lbl-end)) - (eq (point) (hattr:get 'hbut:current 'name-end))) + (or (>= (point) (or (hattr:get 'hbut:current 'lbl-end) (1+ (point)))) + (>= (point) (or (hattr:get 'hbut:current 'name-end) (1+ (point))))) t) (hui-select-at-delimited-sexp-p)) . ((hui-select-mark-delimited-sexp) From 1a7611e6d818021ceaf6e92762eded955d91eb8d Mon Sep 17 00:00:00 2001 From: bw Date: Tue, 7 Jul 2026 18:27:57 -0400 Subject: [PATCH 3/3] man/hyperbole.texi - Small doc updates FAST-DEMO, README.md - Add video and article link to "HyWiki: Zero Markup Hypertext". --- FAST-DEMO | 64 ++++++++++++++++++++++++---------------------- README.md | 4 +++ README.md.html | 4 +++ README.toc.md | 4 +++ hproperty.el | 11 ++++---- man/hyperbole.texi | 33 ++++++++++++++---------- 6 files changed, 70 insertions(+), 50 deletions(-) diff --git a/FAST-DEMO b/FAST-DEMO index 9faf25fc..8d469d00 100644 --- a/FAST-DEMO +++ b/FAST-DEMO @@ -57,37 +57,39 @@ ** Hyperbole Videos - |-----------------------------------------------------+-----------------------------------------| - | GNU Hyperbole Videos | Web Links | - |-----------------------------------------------------+-----------------------------------------| - |-----------------------------------------------------+-----------------------------------------| - | <[Overview and Demo]> | https://youtu.be/WKwZHSbHmPg | - | Sections broken out in the prior table | | - |-----------------------------------------------------+-----------------------------------------| - | <[Unscripted Hyperbole Demo at EmacsATX]> | | - |-----------------------------------------------------+-----------------------------------------| - | <[Quick Introduction]> | https://youtu.be/K1MNUctggwI | - |-----------------------------------------------------+-----------------------------------------| - | <[Top 10 ways Hyperbole amps up Emacs]> | https://youtu.be/BysjfL25Nlc | - |-----------------------------------------------------+-----------------------------------------| - | <[Introduction to Buttons]> | https://youtu.be/zoEht66N2PI | - |-----------------------------------------------------+-----------------------------------------| - | <[Linking Personal Info with Implicit Buttons]> | https://youtu.be/TQ_fG7b1iHI | - |-----------------------------------------------------+-----------------------------------------| - | <[Powerful Productivity with Hyperbole and Org]> | https://youtu.be/BrTpTNEXMyY | - |-----------------------------------------------------+-----------------------------------------| - | <[HyRolo, fast contact/hierarchical record viewer]> | https://youtu.be/xdJGFdgKPFY | - |-----------------------------------------------------+-----------------------------------------| - | <[Using Koutline for stream of thought journaling]> | https://youtu.be/dO-gv898Vmg | - |-----------------------------------------------------+-----------------------------------------| - | <[Build a Zettelkasten with HyRolo]> | https://youtu.be/HdlCK9w-LyQ | - |-----------------------------------------------------+-----------------------------------------| - | <[HyControl, fast Emacs frame and window manager]> | https://youtu.be/M3-aMh1ccJk | - |-----------------------------------------------------+-----------------------------------------| - | <[Writing test cases for GNU Hyperbole]> | https://youtu.be/maNQSKxXIzI | - |-----------------------------------------------------+-----------------------------------------| - | <[Find/Web Search]> | https://youtu.be/8lMlJed0-OM | - |-----------------------------------------------------+-----------------------------------------| + |-----------------------------------------------------+----------------------------------------| + | GNU Hyperbole Videos | Web Links | + |-----------------------------------------------------+----------------------------------------| + |-----------------------------------------------------+----------------------------------------| + | <[Overview and Demo]> | https://youtu.be/WKwZHSbHmPg | + | Sections broken out in the prior table | | + |-----------------------------------------------------+----------------------------------------| + | <[Unscripted Hyperbole Demo at EmacsATX]> | | + |-----------------------------------------------------+----------------------------------------| + | <[Quick Introduction]> | https://youtu.be/K1MNUctggwI | + |-----------------------------------------------------+----------------------------------------| + | <[Top 10 ways Hyperbole amps up Emacs]> | https://youtu.be/BysjfL25Nlc | + |-----------------------------------------------------+----------------------------------------| + | <[HyWiki: Zero Markup Hypertext]> | https://youtu.be/3zG3lRmi3Zg | + |-----------------------------------------------------+----------------------------------------| + | <[Introduction to Buttons]> | https://youtu.be/zoEht66N2PI | + |-----------------------------------------------------+----------------------------------------| + | <[Linking Personal Info with Implicit Buttons]> | https://youtu.be/TQ_fG7b1iHI | + |-----------------------------------------------------+----------------------------------------| + | <[Powerful Productivity with Hyperbole and Org]> | https://youtu.be/BrTpTNEXMyY | + |-----------------------------------------------------+----------------------------------------| + | <[HyRolo, fast contact/hierarchical record viewer]> | https://youtu.be/xdJGFdgKPFY | + |-----------------------------------------------------+----------------------------------------| + | <[Using Koutline for stream of thought journaling]> | https://youtu.be/dO-gv898Vmg | + |-----------------------------------------------------+----------------------------------------| + | <[Build a Zettelkasten with HyRolo]> | https://youtu.be/HdlCK9w-LyQ | + |-----------------------------------------------------+----------------------------------------| + | <[HyControl, fast Emacs frame and window manager]> | https://youtu.be/M3-aMh1ccJk | + |-----------------------------------------------------+----------------------------------------| + | <[Writing test cases for GNU Hyperbole]> | https://youtu.be/maNQSKxXIzI | + |-----------------------------------------------------+----------------------------------------| + | <[Find/Web Search]> | https://youtu.be/8lMlJed0-OM | + |-----------------------------------------------------+----------------------------------------| * Introduction diff --git a/README.md b/README.md index 9896a7f9..8176c3ba 100644 --- a/README.md +++ b/README.md @@ -39,6 +39,8 @@ otherwise, skip to the next section. - [Top 10 ways Hyperbole amps up Emacs](https://emacsconf.org/2023/talks/hyperamp/) + - [HyWiki: Zero Markup Hypertext](https://youtu.be/3zG3lRmi3Zg) + - [Introduction to Buttons](https://youtu.be/zoEht66N2PI) - [Linking Personal Info with Implicit Buttons](https://emacsconf.org/2022/talks/buttons/) @@ -63,6 +65,8 @@ otherwise, skip to the next section. - [The Emacs Hyperbole](https://mike.hostetlerhome.com/emacs-hyperbole) + - [HyWiki: Zero Markup Hypertext](https://www.chiply.dev/post-hyperbole-hywiki) + - [HyWiki: My Favorite Part of Hyperbole](https://kirankp.com/blog/gnu-hyperbole/) - [Hyperbole VisionQuest Part 1](https://github.com/termitereform/JunkPile/blob/master/HyperboleNotes.org) diff --git a/README.md.html b/README.md.html index 3af2c6be..1f110cd2 100644 --- a/README.md.html +++ b/README.md.html @@ -62,6 +62,8 @@

Videos

Introduction

  • Top 10 ways Hyperbole amps up Emacs

  • +
  • HyWiki: Zero Markup +Hypertext

  • Introduction to Buttons

  • Linking @@ -87,6 +89,8 @@

    Articles