From: Jean Louis <bugs@gnu.support>
To: Eduardo Ochs <eduardoochs@gmail.com>
Cc: help-gnu-emacs <help-gnu-emacs@gnu.org>
Subject: Re: Integrating eev and org-capture/org-capture-set-target-location
Date: Sat, 5 Jun 2021 02:33:16 +0300 [thread overview]
Message-ID: <YLq4PEsB2d6MWENq@protected.localdomain> (raw)
In-Reply-To: <CADs++6hpJeA3MpHOcCXWLvMn3edHm7V1-HA82ASRaGVwxkzwTg@mail.gmail.com>
Is this the way to make an universal link launchable by eev key bindings?
(browse-url "https://www.example.com")
For me that sounds 50% good, following would be better, more visual
and descriptive:
(WWW "https://www.example.com" "Example Website")
And this link, should be self-updateable:
(WWW "https://www.example.com")
If user presses prefix like C-u M-e then such link would update itself
into:
(WWW "https://www.example.com" "Example Website")
You could study these functions and find out how to fetch the URL, how
to extract title, functions are not perfect, it would be better to
decode some HTML.
(defun hyperscope-fetch-title (url)
"Return title for URL or if there is no match url."
(let* ((string (hyperscope-url-to-string url))
(match (string-match "<title>\\(.*\\)</title>" string)))
(if match
(replace-regexp-in-string "<title>\\|</title>" "" (match-string 0 string))
url)))
(defun hyperscope-url-to-string (url)
"Fetch URL and return as string."
(url-retrieve-synchronously url)
(let ((buffer (url-retrieve-synchronously url)))
(with-current-buffer buffer
(buffer-string))))
Some highlighting:
(defun rcd-highlight-list (list)
"Uses LIST to highlight strings in buffer."
(hi-lock-mode)
(let* ((list (delete "" list))
(highlights hi-lock-face-defaults))
(while list
(highlight-regexp (regexp-quote (pop list)) (pop highlights)))))
(rcd-highlight-list '("WWW" "Set"))
I suggest exploring highlighting options as that could make the eev
buffer more visual.
The eev is a hypertext system:
https://en.wikipedia.org/wiki/Hypertext
with many implementations:
https://en.wikipedia.org/wiki/Hypertext#Implementations
and in Hyperscope there are types, like:
Action Asciidoc Asciidoctor "Asciidoctor with" PDF DISEASE DJVU DONE
Directory "Directory Action ➜" EPUB "Emacs Lisp" "Emacs Lisp
Hyperlink" Enriched FOLLOW-UP File HTML, etc.
So that gives me idea that I could be exporting the system into `eev'
files, with highlighting and generate automatically hyperlinks such as:
(Set 29 "People")
(WWW 38233 "Modular Buildings & Prefab Homes | Karmod Construction")
As that way Hyperscope would activate the ID 38233 and open up the
website.
I also believe that quoting could be excluded:
(WWW 38233 Modular Buildings & Prefab Homes | Karmod Construction)
And it works this way:
(defmacro WWW (id &rest args)
(hyperscope-tabulated-action id) ;; open up action based on the type
(espeak (mapconcat 'symbol-name args " "))) ;; speak symbols as string
It would be nice to highlight the symbols "Modular
Buldings.. Construction" only but I don't know how to do it.
I can easier generate eev style links then Org buffers.
--
Jean
Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns
Sign an open letter in support of Richard M. Stallman
https://stallmansupport.org/
prev parent reply other threads:[~2021-06-04 23:33 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-04 3:41 Integrating eev and org-capture/org-capture-set-target-location Eduardo Ochs
2021-06-04 6:00 ` Jean Louis
2021-06-04 16:09 ` Eduardo Ochs
2021-06-04 18:14 ` Jean Louis
2021-06-04 22:28 ` Eduardo Ochs
2021-06-04 23:33 ` Jean Louis [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YLq4PEsB2d6MWENq@protected.localdomain \
--to=bugs@gnu.support \
--cc=eduardoochs@gmail.com \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).