emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/eev b66d915: Added `find-1stclassvideo-links'.


From: ELPA Syncer
Subject: [elpa] externals/eev b66d915: Added `find-1stclassvideo-links'.
Date: Mon, 8 Nov 2021 22:57:16 -0500 (EST)

branch: externals/eev
commit b66d9151d721947aec0ee70c3d0575d1c11ee92d
Author: Eduardo Ochs <eduardoochs@gmail.com>
Commit: Eduardo Ochs <eduardoochs@gmail.com>

    Added `find-1stclassvideo-links'.
---
 ChangeLog         |  13 +++
 VERSION           |   4 +-
 eev-intro.el      | 323 +++++++++++++++++++++++++++++++++++++++---------------
 eev-on-windows.el | 174 ++++++++++++++++++-----------
 eev-tlinks.el     |  14 +--
 eev-videolinks.el |  16 +--
 eev.el            |   2 +-
 7 files changed, 379 insertions(+), 167 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 7e5c219..43ce8be 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,18 @@
+2021-11-09  Eduardo Ochs  <eduardoochs@gmail.com>
+
+       * eev-intro.el (find-video-links-intro): added the sections 9, 10,
+       and 11.
+       (find-windows-beginner-intro): almost totally rewritten.
+
+       * eev-on-windows.el: almost totally rewritten.
+
 2021-11-08  Eduardo Ochs  <eduardoochs@gmail.com>
 
+       * eev-tlinks.el (find-eevvideo-1stclass-links): renamed to
+       `find-1stclassvideo-links'.
+
+       * eev-videolinks.el (find-eevlocal-video): fixed a typo.
+
        * eev-tlinks.el (find-eevvideo-1stclass-links): new function.
 
 2021-11-07  Eduardo Ochs  <eduardoochs@gmail.com>
diff --git a/VERSION b/VERSION
index 359b346..97804d0 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-Mon Nov  8 03:26:31 GMT 2021
-Mon Nov  8 00:26:31 -03 2021
+Tue Nov  9 03:53:48 GMT 2021
+Tue Nov  9 00:53:48 -03 2021
diff --git a/eev-intro.el b/eev-intro.el
index 2e855d2..bd863de 100644
--- a/eev-intro.el
+++ b/eev-intro.el
@@ -19,7 +19,7 @@
 ;;
 ;; Author:     Eduardo Ochs <eduardoochs@gmail.com>
 ;; Maintainer: Eduardo Ochs <eduardoochs@gmail.com>
-;; Version:    20211107
+;; Version:    20211109
 ;; Keywords:   e-scripts
 ;;
 ;; Latest version: <http://angg.twu.net/eev-current/eev-intro.el>
@@ -10672,7 +10672,15 @@ behavior of all short links to video tutorials, as 
they all call
 its first argument.
 
 The default is `find-eevlocal-video', but for Windows users
-starting with `find-eevyoutube-video' makes more sense.
+starting with `find-eevyoutube-video' makes more sense. The
+user-friendly way to select one of these behaviors is with these
+sexps:
+
+  (ee-use-local-videos)
+  (ee-use-youtube-videos)
+
+You can also run them with `M-x ee-use-local-videos' and `M-x
+ee-use-youtube-videos'.
 
 
 
@@ -10688,7 +10696,8 @@ this workshop:
   https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00045.html
   http://angg.twu.net/2021-oficina.html (<- in Portuguese)
 
-My original implementation was the one described here:
+My original implementation - from may/2021 - was the one
+described here:
 
   http://angg.twu.net/2021-video-links.html
 
@@ -10697,7 +10706,89 @@ Emacs _in a way that is convenient for both long-time 
users and
 total beginners_. This is quite a challenge - especially because
 since oct/2021 my notion of \"total beginners\" includes \"people
 who use Windows and who have never used terminals in their
-lives\".
+lives\". If you are one of those \"total beginners\" my
+recommendation is: start by this tutorial - it will force you to
+learn how to configure paths and how to test if Emacs knows how
+to call a given external program - and then follow this one:
+
+  (find-windows-beginner-intro)
+
+
+
+
+9. First-class videos
+=====================
+I store videos of several kinds in:
+
+  http://angg.twu.net/eev-videos/
+
+The presentations and tutorials on eev are the \"first-class
+citizens\" of that directory - mainly in the sense that a lot of
+information about them is available and easy to find. Let's look
+at one example in details. Try:
+
+  (find-efunctiondescr 'find-eev2019video)
+  (find-efunction      'find-eev2019video)
+  (find-efunctionpp    'find-eev2019video)
+  (find-1stclassvideo-links \"eev2019\")
+
+All these sexps \"work\" - they point to meaningful places.
+
+
+
+10. Second-class videos
+=======================
+I will refer to the videos in
+
+  http://angg.twu.net/eev-videos/
+
+that are not \"first-class citizens\" as - ta-da! - \"second
+class citizens\". When I want to show something in one of those
+videos to a person who uses eev I send her sexps like these:
+
+  (code-eevvideo \"eevhydras\" \"2021-05-20_hydra_ei\")
+  (find-eevhydrasvideo \"0:00\")
+  (find-eevhydrasvideo \"0:50\")
+
+If you run the sexps above and then these ones,
+
+  (find-efunctiondescr 'find-eevhydrasvideo)
+  (find-efunction      'find-eevhydrasvideo)
+  (find-efunctionpp    'find-eevhydrasvideo)
+  (find-1stclassvideo-links \"eevhydras\")
+
+you will see `find-eevhydrasvideo' is \"not documented\", that
+Emacs \"Do(es)n't know where `find-eevhydrasvideo' is defined\",
+that the pretty-printed version of `find-eevhydrasvideo' doesn't
+have a docstring after its argument list, and that many of the
+links in the temporary buffer created by
+`find-1stclassvideo-links' don't work.
+
+For more information on `code-eevvideo' see the comments in its
+source code, here:
+
+  (find-eev \"eev-videolinks.el\" \"second-class-videos\")
+  (find-eev \"eev-videolinks.el\" \"code-eevvideo\")
+
+
+
+
+11. Hardcoded paths
+===================
+Practically all the functions defined above have `eev' in their
+names, and they all convert the \"{stem}\" of a video to a URL
+like this:
+
+  http://angg.twu.net/eev-videos/{stem}.mp4
+
+The conversion from \"{stem}\" to
+\"http://angg.twu.net/eev-videos/{stem}.mp4\"; is hardcoded in
+these functions, and AT THIS MOMENT there isn't an easy way to
+implement other similar conversions - pointing to other
+repositories of videos - without changing a lot of code by hand.
+This is mainly because I don't know anyone else who is putting
+their videos on places from which they are easy to wget. If you
+know something like this, please get in touch!
 
 " pos-spec-list)))
 
@@ -12510,39 +12601,40 @@ from Emacs by typing `M-3 M-j'.
 
 0. Introduction
 ===============
-My favorite exposition of what eev is is this presentation, called
-\"How to record executable notes with eev - and how to play them back\":
+My favorite exposition of what eev is is this presentation,
+called \"How to record executable notes with eev - and how to
+play them back\":
 
   http://angg.twu.net/emacsconf2019.html
   http://angg.twu.net/LATEX/2019emacsconf.pdf (slides)
   http://www.youtube.com/watch?v=86yiRG8YJD0  (video)
 
 The video ends with a demo that shows a non-trivial example of
-\"executable notes\".  The most interesting part of that demo shows how
-to use eev to send commands to an external program - a unix shell,
-being run in interactive mode. Here's a link to that part (the t=938
-tells youtube to jump to 15:38):
+\"executable notes\". The most interesting part of that demo
+shows how to use eev to send commands to an external program - a
+unix shell, being run in interactive mode. Here's a link to that
+part of the video on youtube, plus two related links that are
+harder to explain:
+
+  http://www.youtube.com/watch?v=86yiRG8YJD0#t=15m11s
+  (find-eev2019video \"15:11\" \"Demo: the eepitch block\")
+  (find-angg \".emacs.videos\" \"eev2019\")
+
+I don't have easy access to Windows machines, so I have to rely
+on friends to test some things for me. I also don't have easy
+access to people who use Windows and who do have experience using
+terminals, so from time to time I give workshops for \"total
+beginners\" like the one described here,
 
-  http://www.youtube.com/watch?v=86yiRG8YJD0&t=938
+  (find-video-links-intro \"8. Windows\")
 
-These notes are an attempt - ongoing, and work in progress! - to help
-Windows users with installing Emacs, eev, and Lua, and with trying to
-use Emacs on Windows to send commands to external programs - currently
-first to the crappy shell that comes with Windows, and after that to
-Lua.  A future version of these instructions will also include how to
-install Python, how to run it interactively from Emacs, and how to
-send commands to it.
+and I see that the people on those workshops get stuck on ideas
+that I thought that were obvious, and I change my approach, and I
+rewrite lots of things.
 
-I don't have easy access to Windows machines, so I'm having to ask
-friends to try this for me.  Also, Linux/*NIXes are Windows are
-totally different planets - it's common for Windows people, even
-programmers, to have practically zero experience with terminals,
-a.k.a. with \"the Command Line\"...  in *NIXes this is so inconceivable
-that after discovering that many Windows programmers don't know how to
-use terminals I spent more than one week trying to figure out how to
-proceed.
+This is my N-th attempt to rewrite this tutorial.
 
-Version of these instructions: 2021sep20.
+Version of these instructions: 2021nov08.
 
 
 
@@ -12557,19 +12649,9 @@ 
http://alpha.gnu.org/gnu/emacs/pretest/windows/emacs-28/README-windows-binaries
 
http://alpha.gnu.org/gnu/emacs/pretest/windows/emacs-28/emacs-28.0.50-snapshot-2021-01-15-installer.exe
 
http://alpha.gnu.org/gnu/emacs/pretest/windows/emacs-28/emacs-28.0.50-snapshot-2021-01-15.zip
 
-If you prefer Emacs27, use these links:
-
-https://ftp.gnu.org/gnu/emacs/windows/emacs-27/
-https://ftp.gnu.org/gnu/emacs/windows/emacs-27/README-windows-binaries
-https://ftp.gnu.org/gnu/emacs/windows/emacs-27/emacs-27.2-x86_64-installer.exe
-https://ftp.gnu.org/gnu/emacs/windows/emacs-27/emacs-27.2-x86_64.zip
-
 You may need to create a desktop icon or shortcut to
 <emacsdir>/bin/runemacs.exe.
 
-Note: don't use Emacs25 on Windows - it can't access the package repository!  
The details are here:
-https://emacs.stackexchange.com/questions/233/how-to-proceed-on-package-el-signature-check-failure/52823#52823
-
 
 
 
@@ -12835,98 +12917,163 @@ As an exercise, try to give these commands to the 
Windows shell:
 
 
 
+5.6. Eshell
+-----------
+The manual of Eshell - here,
+
+  (find-node \"(eshell)Top\")
 
+describes it as: \"Eshell is a shell-like command interpreter
+implemented in Emacs Lisp\".
 
+This feature of eev:
 
+  (find-psne-intro \"1. Local copies of files from the internet\")
 
+needs to run wget on a unix-like shell, and it turns out that
+this can be achieved easily using Eshell. For a discussion of the
+tecnhical details, see:
 
-6. Eepitch on Windows
-=====================
-The main tutorial of eev explains the best way to use shells from
-Emacs in this section:
+  https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00051.html
+  https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00058.html
+  https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00126.html
 
-  (find-eev-quick-intro \"6. Controlling shell-like programs\")
 
-The default shell on Windows is a very bad one - cmd.exe, that we
-saw in section 5.5 - and by default `eepitch-shell' uses cmd.exe.
-One alternative is to use Eshell:
 
-  (find-node \"(eshell)Top\")
 
-Most people who use Windows have very little experience with
-shells, and I am trying to use eev to create tutorials to save
-them...
+6. Video links
+==============
+If you're on Windows please start by configuring your browser and
+the path to it, as described here:
 
-   This is a project that is still in a VERY early stage!!! 
-   I will describe its current state, and I will end this   
-   section with a \"please test this and get in touch!\".     
+  (find-video-links-intro)
+  (find-video-links-intro \"3. `find-youtube-video'\")
+  (find-video-links-intro \"4. Configuring the browser\")
 
-I am preparing a one-session workshop for Windows users that
-should happen in the middle of oct/2021. Most of my material
-about it is in Portuguese, but In 2021oct03 I sent these two
-e-mails to the help-gnu-emacs mailing list, in which I explained
-it in English and asked for help:
+and by making `find-eev-video' use the browser to play the
+videos. For that you need to run this sexp,
 
-  https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00037.html
-  https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00045.html
+  (ee-use-youtube-videos)
 
-Many features in eev require a program called wget, and I need to
-prepare instructions for installing wget that can be executed by
-people who have never used a terminal or a shell in their lives.
-I _have the impression_ that it will be better to use PowerShell
-for that. The Wikipedia page about PowerShell is here:
+as explained here:
 
-  https://en.wikipedia.org/wiki/PowerShell
+  (find-video-links-intro \"7. `find-eev-video'\")
 
-It seems that every recent version of Windows comes with
-PowerShell, and it seems that one of the ways of running
-PowerShell is to open a terminal and run the command \"pwsh\" in
-it... [please, people, can you test this and tell me if it works?]
+Also install the Mpv video player, configure its path, and check
+that Emacs can find it. This is explained here:
 
-In 2021oct04 I added support for PowerShell to eev, but I was
-only able to test it on Linux, using a version of PowerShell that
-runs on Linux...
+  (find-video-links-intro \"6. Configuring Mpv\")
 
+The next sections of this tutorial will suppose that you know how
+to configure that path to external programs, and how to test
+them.
 
+IMPORTANT: save the sexps with `setenv' that you used to
+configure the paths to your notes. See:
 
-6.1. `eepitch-pwsh': a test
----------------------------
-Please, people, can you test the eepitch block below with <f8>s
-and tell me if you get something similar to what I got in this
-screenshot?
+  (find-here-links-intro \"4. `find-here-links-3'\")
+  (find-here-links-intro \"4. `find-here-links-3'\" \"~/TODO\")
+
+
+
+
+7. eev-on-windows.el
+====================
+The file eev-on-windows.el contains several functions that will
+be used in the next sections. It is not loaded by default, so you
+need to do this:
+
+  (require 'eev-on-windows)
+
+If you are on Windows you will also need to download some
+\".exe\" files by running the sexps below. Each of the sexps that
+start with `ee-download-with-eww' may take several seconds to
+complete, and it's better to wait until it sends a message like
+\"Saved (filename.exe)\" to the echo area before executing other
+sexps with `M-e'.
 
-Link to the screenshot:
+  (mkdir \"~/bin/\" t)
+  (delete-file \"~/bin/wget.exe\")
+  (delete-file \"~/bin/pdftotext.exe\")
+  (delete-file \"~/bin/lua52.exe\")
+  (ee-download-with-eww \"http://angg.twu.net/2021-oficina/wget.exe\"; 
\"~/bin/\")
+  (ee-download-with-eww \"http://angg.twu.net/2021-oficina/pdftotext.exe\"; 
\"~/bin/\")
+  (ee-download-with-eww \"http://angg.twu.net/2021-oficina/lua52.exe\"; 
\"~/bin/\")
 
-  http://angg.twu.net/2021.1-projeto/eepitch-pwsh.png
+The sexps in the block above only need to be executed once - you
+don't need to execute them at each Emacs session. You can test if
+they worked by running the sexps below:
 
-Here is the eepitch block:
+  (find-fline \"~/bin/\" \"wget.exe\")
+  (find-fline \"~/bin/\" \"pdftotext.exe\")
+  (find-fline \"~/bin/\" \"lua52.exe\")
+  (find-callprocess `(\"~/bin/wget.exe\"      \"--help\"))
+  (find-callprocess `(\"~/bin/pdftotext.exe\" \"--help\"))
+  (find-callprocess `(\"~/bin/lua52.exe\"     \"--help\"))
 
- (eepitch-pwsh)
+
+
+7.1. `ee-use-windows'
+---------------------
+
+  (find-eev \"eev-on-windows.el\")
+
+
+7.2. Testing wget.exe
+---------------------
+Try to run this eepitch block with <f8>s:
+
+ (eepitch-eshell)
  (eepitch-kill)
- (eepitch-pwsh)
-mkdir -p ~/bin/
-cd       ~/bin/
-rm -fv   ~/bin/wget.exe
-wget http://angg.twu.net/2021.1-projeto/wget.exe
-ls -l wget.exe
+ (eepitch-eshell)
+  rm --help
+  ls --help
+  rm -fv $S/http/www.gnu.org/software/emacs/emacs-paper.html
+  ls -l  $S/http/www.gnu.org/software/emacs/emacs-paper.html
+  #
+  mkdir -p $S/http/www.gnu.org/software/emacs/
+  cd       $S/http/www.gnu.org/software/emacs/
+  wget -nc 'http://www.gnu.org/software/emacs/emacs-paper.html'
+  echo     'http://www.gnu.org/software/emacs/emacs-paper.html' >> ~/.psne.log
+  #
+  ls -l  $S/http/www.gnu.org/software/emacs/emacs-paper.html
+  rm -fv $S/http/www.gnu.org/software/emacs/emacs-paper.html
 
+Now try to follow the instructions here to download the same URL
+with `M-x brep':
 
+  (find-psne-intro \"3. The new way: `M-x brep'\")
 
+Note that due to the 
 
+  (eepitch-shell2)
 
+  (find-eev \"eev-on-windows.el\" \"ee-use-eshell\")
 
 
 
+  (find-eev \"eev-plinks.el\" \"find-wget\")
+  (find-eev \"eev-plinks.el\" \"find-wget\" \"Tests:\")
 
 
+7.3. Testing psne-ing
+---------------------
 
+  (find-psne-intro)
+
+7.4. Testing `M-x brep'
+-----------------------
 
 
 
+7. Eepitch on Windows
+=====================
+
 
+  (find-eev \"eev-on-windows.el\" \"ee-use-eshell\")
 
 
-7. Lua
+8. Lua
 ======
 Lua is a programming language that many people - like me - find
 much better and much simpler than Python.  The examples of
diff --git a/eev-on-windows.el b/eev-on-windows.el
index e452b81..1f08202 100644
--- a/eev-on-windows.el
+++ b/eev-on-windows.el
@@ -29,11 +29,20 @@
 ;;                                                (find-eev-intro)
 
 ;; «.how-to-test-this»                 (to "how-to-test-this")
+;; «.requires»                         (to "requires")
 ;; «.ee-download-with-eww»             (to "ee-download-with-eww")
-;; «.ee-use-eshell»                    (to "ee-use-eshell")
-;; «.ee-use-bullets»                   (to "ee-use-bullets")
-;; «.ee-use-find-angg-es-remote»       (to "ee-use-find-angg-es-remote")
-;; «.ee-use-find-angg-es-local»                (to "ee-use-find-angg-es-local")
+;; «.eshell»                           (to "eshell")
+;;   «.ee-use-eshell»                  (to "ee-use-eshell")
+;;   «.ee-use-shell»                   (to "ee-use-shell")
+;; «.wget»                             (to "wget")
+;;   «.ee-use-wget-exe»                        (to "ee-use-wget-exe")
+;;   «.ee-use-wget»                    (to "ee-use-wget")
+;; «.red-stars»                                (to "red-stars")
+;;   «.ee-use-bullets»                 (to "ee-use-bullets")
+;;   «.ee-use-red-stars»               (to "ee-use-red-stars")
+;; «.find-angg-es»                     (to "find-angg-es")
+;;   «.ee-use-find-angg-es-remote»     (to "ee-use-find-angg-es-remote")
+;;   «.ee-use-find-angg-es-local»      (to "ee-use-find-angg-es-local")
 ;; «.ee-use-windows»                   (to "ee-use-windows")
 ;; «.ee-use-gnu-linux»                 (to "ee-use-gnu-linux")
 ;; «.ee-use-gnu-linux-but-simulate»    (to "ee-use-gnu-linux-but-simulate")
@@ -46,48 +55,19 @@
 ;;; Commentary:
 ;;
 ;; Experimental, undocumented, and messy. Every time that I give a
-;; workshop to Windows users this file changes a lot. The most recent
-;; changes in this file correspond to a workshop that I will give in
-;; november 2021, and that I described in this thread:
+;; workshop to Windows users this file changes a lot. Most of what was
+;; here in the last revision was rewritten in a more human-readable
+;; form and placed in:
 ;;
-;; https://lists.gnu.org/archive/html/help-gnu-emacs/2021-10/msg00037.html
-;;
-;; I can't test the settings for Windows myself, but two friends of
-;; mine, Daniel Almeida and Daniel Bastos, are helping me to test this
-;; before the workshop.
-;;
-;; This file is not loaded by default. See:
-;;   (find-eev "eev-load.el")
+;;   (find-windows-beginner-intro)
 
 
 ;; «how-to-test-this»  (to ".how-to-test-this")
 ;;
+;; THIS BLOCK IS BEING REWRITTEN AND IS A MESS
+;;
 ;; 0.1. How to test this
 ;; =====================
-;; The HTMLized version of this file is here:
-;;   http://angg.twu.net/eev-current/eev-on-windows.el.html
-;; The HTMLized version may be more recent than the one here:
-;;   (find-eev "eev-on-windows.el")
-;;
-;; Here's how to load it in Emacs and run its tests.
-;;   1. update eev using "M-x list-packages eev",
-;;   2. restart emacs to be 100% sure that it will use the new eev,
-;;   3. run "M-x eev-beginner" to turn eev-mode on,
-;;   4. run `M-j' to remember how to use the main keys of eev,
-;;   5. run "M-x find-eevfile" to open the directory with the source
-;;      files of eev,
-;;   6. open the file eev-on-windows.el in that directory,
-;;   7. run the sexps below with `M-e' on each line - they are needed
-;;      to make sure that you have wget.exe and pdftotext.exe:
-;;
-;;      (require 'eev-on-windows)
-;;      (mkdir "~/bin/" t)
-;;      (delete-file "~/bin/wget.exe")
-;;      (ee-download-with-eww "http://angg.twu.net/2021-oficina/wget.exe"; 
"~/bin/")
-;;      (delete-file "~/bin/pdftotext.exe")
-;;      (ee-download-with-eww "http://angg.twu.net/2021-oficina/pdftotext.exe"; 
"~/bin/")
-;;
-;;   8. run these sexps with `M-e' on each line:
 ;;
 ;;      (require 'eev-on-windows)
 ;;      (ee-use-windows)
@@ -120,13 +100,24 @@
 
 
 
+;; «requires»  (to ".requires")
+;;
 (require 'eww)
 (require 'eshell)
 (require 'em-alias)
 
 
+
+;;;                          
+;;;   _____      ____      __
+;;;  / _ \ \ /\ / /\ \ /\ / /
+;;; |  __/\ V  V /  \ V  V / 
+;;;  \___| \_/\_/    \_/\_/  
+;;;                          
 ;; «ee-download-with-eww»  (to ".ee-download-with-eww")
-;; Test:
+;; See: (find-windows-beginner-intro "7. eev-on-windows.el")
+;;      (find-node "(eww)Top")
+;; Test with:
 ;;   (mkdir "~/bin/" t)
 ;;   (delete-file "~/bin/wget.exe")
 ;;   (ee-download-with-eww "http://angg.twu.net/2021-oficina/wget.exe"; 
"~/bin/")
@@ -135,7 +126,20 @@
   (url-retrieve url #'eww-download-callback (list url dir)))
 
 
+
+;;;  _____     _          _ _ 
+;;; | ____|___| |__   ___| | |
+;;; |  _| / __| '_ \ / _ \ | |
+;;; | |___\__ \ | | |  __/ | |
+;;; |_____|___/_| |_|\___|_|_|
+;;;                           
+;; «eshell»  (to ".eshell")
+
 ;; «ee-use-eshell»  (to ".ee-use-eshell")
+;; Redefine `eepitch-shell' and `eepitch-shell2' to make them use
+;; Eshell instead of the default shell.
+;; See: (find-windows-beginner-intro "5.6. Eshell")
+;;      (find-windows-beginner-intro "7.1. `ee-use-windows'")
 ;;
 (defun ee-use-eshell ()
   (interactive)
@@ -143,32 +147,88 @@
   (defun eepitch-shell2 () (interactive) (eepitch-eshell2))
   )
 
+;; «ee-use-shell»  (to ".ee-use-shell")
+;; Redefine `eepitch-shell' and `eepitch-shell2' with their default
+;; definitions. Running this cancels the effect of `ee-use-eshell'.
+;; See: (find-eev "eepitch.el" "eepitch-shell")
+;;
 (defun ee-use-shell ()
   (interactive)
-  (defun eepitch-shell  () (interactive) (eepitch '(shell "*shell*")))
+  (defun eepitch-shell  () (interactive) (eepitch '(shell)))
   (defun eepitch-shell2 () (interactive) (eepitch '(shell "*shell 2*")))
   )
 
 
+;;;                     _   
+;;; __      ____ _  ___| |_ 
+;;; \ \ /\ / / _` |/ _ \ __|
+;;;  \ V  V / (_| |  __/ |_ 
+;;;   \_/\_/ \__, |\___|\__|
+;;;          |___/          
+;;
+;; «wget»  (to ".wget")
+;; These functions configure what wget to use: on GNU/Linux we use the
+;; wget that is on the $PATH, and on M$ Windows we use ~/bin/wget.exe.
+;;
+;;  BIG WARNING: 
+;; These function DELETE your eshell-aliases-file and create a new one
+;; with a single alias inside!!! See:
+;;   (find-node "(eshell)Aliases" "eshell-aliases-file")
+
+;; «ee-use-wget-exe»  (to ".ee-use-wget-exe")
+(defun ee-use-wget-exe ()
+  (interactive)
+  (delete-file eshell-aliases-file)
+  (eshell/alias "wget"  "~/bin/wget.exe $*")
+  (setq ee-wget-program "~/bin/wget.exe"))
+
+;; «ee-use-wget»  (to ".ee-use-wget")
+(defun ee-use-wget ()
+  (interactive)
+  (delete-file eshell-aliases-file)
+  (eshell/alias "wget"  "wget $*")
+  (setq ee-wget-program "wget"))
+
+
+
+;;;  ____          _       _                 
+;;; |  _ \ ___  __| |  ___| |_ __ _ _ __ ___ 
+;;; | |_) / _ \/ _` | / __| __/ _` | '__/ __|
+;;; |  _ <  __/ (_| | \__ \ || (_| | |  \__ \
+;;; |_| \_\___|\__,_| |___/\__\__,_|_|  |___/
+;;;                                          
+;; «red-stars»  (to ".red-stars")
+;; In workshops for beginners I prefer to make them use red bullets
+;; instead of red stars because the red bullets don't get corrupted
+;; when pasted to Telegram of Gmail. See:
+;;   (find-eev-quick-intro "6.4. Red stars")
+;;   (find-red-star-links)
+
 ;; «ee-use-bullets»  (to ".ee-use-bullets")
 ;; From: (find-red-star-links 2 "red bullets by default")
 ;;
 (defun ee-use-bullets ()
   (interactive)
-  (eepitch-set-glyph0 ?\u2022 ?\u2022 'eepitch-star-face)
-  (defun ee-adjust-red-stars (str) (replace-regexp-in-string "" "•" str))
-  )
+  (eepitch-set-glyph0 ?• ?• 'eepitch-star-face)
+  (defun ee-adjust-red-stars (str) (replace-regexp-in-string "" "•" str)))
 
+;; «ee-use-red-stars»  (to ".ee-use-red-stars")
 (defun ee-use-red-stars ()
   (interactive)
-  (defun ee-adjust-red-stars (str) str)
-  )
+  (defun ee-adjust-red-stars (str) str))
 
 
-;; «ee-use-find-angg-es-remote»  (to ".ee-use-find-angg-es-remote")
-;; «ee-use-find-angg-es-local»  (to ".ee-use-find-angg-es-local")
-;; See: (find-angg-es-links)
+;;;   __ _           _                                  __        
+;;;  / _(_)_ __   __| |       __ _ _ __   __ _  __ _   / /__  ___ 
+;;; | |_| | '_ \ / _` |_____ / _` | '_ \ / _` |/ _` | / / _ \/ __|
+;;; |  _| | | | | (_| |_____| (_| | | | | (_| | (_| |/ /  __/\__ \
+;;; |_| |_|_| |_|\__,_|      \__,_|_| |_|\__, |\__, /_/ \___||___/
+;;;                                      |___/ |___/              
 ;;
+;; «find-angg-es»  (to ".find-angg-es")
+;; See: (find-angg-es-links)
+
+;; «ee-use-find-angg-es-local»  (to ".ee-use-find-angg-es-local")
 (defun ee-use-find-angg-es-local ()
   (interactive)
   (code-c-d "angg" "~/" :anchor :grep)
@@ -177,6 +237,7 @@
     (apply 'find-anchor (ee-esfile (concat stem ".e")) rest))
   )
 
+;; «ee-use-find-angg-es-remote»  (to ".ee-use-find-angg-es-remote")
 (defun ee-use-find-angg-es-remote ()
   (interactive)
   (defun find-angg (fname &rest rest)
@@ -196,16 +257,13 @@
   (interactive)
   (ee-use-bullets)
   (ee-use-eshell)
-  (delete-file eshell-aliases-file)    ; workaround for a bug
-  (eshell/alias "wget"          "~/bin/wget.exe $*")
-  (setq ee-wget-program         "~/bin/wget.exe")
+  (ee-use-wget-exe)
   (setq ee-pdftotext-program    "~/bin/pdftotext.exe")
   (setq ee-firefox-program      "$FIREFOXDIR/firefox.exe")
   (setq ee-googlechrome-program "$GOOGLECHROMEDIR/chrome.exe")
   (setq ee-mpv-program          "$MPVDIR/mpv.exe")
   (defalias 'find-pdf-page 'find-googlechrome-page)
   (ee-use-find-angg-es-remote)
-  ;; (ee-use-find-youtube-video)
   (ee-use-youtube-videos)
   )
 
@@ -213,15 +271,12 @@
   (interactive)
   (ee-use-red-stars)
   (ee-use-shell)
-  (delete-file eshell-aliases-file)
-  (eshell/alias "wget"          "wget $*")
-  (setq ee-wget-program         "wget")
+  (ee-use-exe)
   (setq ee-pdftotext-program    "pdftotext")
   (setq ee-firefox-program      "firefox")
   (setq ee-googlechrome-program "google-chrome")
   (setq ee-mpv-program          "mpv")
   (ee-use-find-angg-es-local)
-  ;; (ee-use-find-eevvideo-links)
   (ee-use-local-videos)
   )
 
@@ -229,15 +284,12 @@
   (interactive)
   (ee-use-bullets)
   (ee-use-eshell)
-  (delete-file eshell-aliases-file)
-  (eshell/alias "wget"          "wget $*")
-  (setq ee-wget-program         "wget")
+  (ee-use-wget)
   (setq ee-pdftotext-program    "pdftotext")
   (setq ee-firefox-program      "firefox")
   (setq ee-googlechrome-program "google-chrome")
   (setq ee-mpv-program          "mpv")
   (ee-use-find-angg-es-remote)
-  ;; (ee-use-find-youtube-video)
   (ee-use-youtube-videos)
   )
 
diff --git a/eev-tlinks.el b/eev-tlinks.el
index a7563ab..4b444d5 100644
--- a/eev-tlinks.el
+++ b/eev-tlinks.el
@@ -95,7 +95,7 @@
 ;; «.find-red-star-links»              (to "find-red-star-links")
 ;; «.find-eepitch-bullet-links»                (to "find-eepitch-bullet-links")
 ;; «.find-angg-es-links»               (to "find-angg-es-links")
-;; «.find-eevvideo-1stclass-links»     (to "find-eevvideo-1stclass-links")
+;; «.find-1stclassvideo-links» (to "find-1stclassvideo-links")
 
 
 (require 'eev-env)
@@ -2666,22 +2666,22 @@ This function is used by `ee-0x0-upload-region'."
 
 
 
-;; «find-eevvideo-1stclass-links»  (to ".find-eevvideo-1stclass-links")
+;; «find-1stclassvideo-links»  (to ".find-1stclassvideo-links")
 ;; Skel: (find-find-links-links-new "eevvideo-1stclass" "c" "")
 ;;  See: (find-eev "eev-videolinks.el" "first-class-videos")
 ;;       (find-eev "eev-videolinks.el" "second-class-videos")
-;; Tests: (find-eevvideo-1stclass-links "eev2019")
-;;        (find-eevvideo-1stclass-links "eev2020")
+;; Tests: (find-1stclassvideo-links "eev2019")
+;;        (find-1stclassvideo-links "eev2020")
 ;;
-(defun find-eevvideo-1stclass-links (&optional c &rest pos-spec-list)
+(defun find-1stclassvideo-links (&optional c &rest pos-spec-list)
 "Visit a temporary buffer containing hyperlinks for a first-class video."
   (interactive)
   (setq c (or c "{c}"))
   (apply
    'find-elinks-elisp
-   `((find-eevvideo-1stclass-links ,c ,@pos-spec-list)
+   `((find-1stclassvideo-links ,c ,@pos-spec-list)
      ;; Convention: the first sexp always regenerates the buffer.
-     (find-efunction 'find-eevvideo-1stclass-links)
+     (find-efunction 'find-1stclassvideo-links)
      ""
      ,(ee-template0 "\
 ;; Definition of the function:
diff --git a/eev-videolinks.el b/eev-videolinks.el
index 7ff549e..ba3a63f 100644
--- a/eev-videolinks.el
+++ b/eev-videolinks.el
@@ -96,7 +96,7 @@
         (fname (ee-shorten-file-name (ee-url-to-fname url))))
     (if (ee-psne-downloaded-p url)
        (find-mpv-video fname time)
-      (find-eevlocal-links stem hash time))))
+      (find-eevlocal-links mp4stem hash time))))
 
 (defun find-eevlinks-video (mp4stem hash &optional time &rest rest)
   (find-eevlocal-links mp4stem hash time))
@@ -253,13 +253,13 @@ of the videos and play them with mpv. Compare with
 ;; docstrings and `find-efunction' wouldn't be able to find their
 ;; definitions.
 
-;; (find-eevvideo-1stclass-links "eev2019")
-;; (find-eevvideo-1stclass-links "eev2020")
-;; (find-eevvideo-1stclass-links "eevnav")
-;; (find-eevvideo-1stclass-links "eevtempl")
-;; (find-eevvideo-1stclass-links "eevfherel")
-;; (find-eevvideo-1stclass-links "eevtestbls")
-;; (find-eevvideo-1stclass-links "eevvlinks")
+;; (find-1stclassvideo-links "eev2019")
+;; (find-1stclassvideo-links "eev2020")
+;; (find-1stclassvideo-links "eevnav")
+;; (find-1stclassvideo-links "eevtempl")
+;; (find-1stclassvideo-links "eevfherel")
+;; (find-1stclassvideo-links "eevtestbls")
+;; (find-1stclassvideo-links "eevvlinks")
 
 ;; «find-eev2019video»  (to ".find-eev2019video")
 ;; Skel: (find-eevshortvideo-links "eev2019" "emacsconf2019" "86yiRG8YJD0")
diff --git a/eev.el b/eev.el
index dff7521..d3c830f 100644
--- a/eev.el
+++ b/eev.el
@@ -6,7 +6,7 @@
 ;; Package-Requires: ((emacs "24.4"))
 ;; Keywords: lisp e-scripts
 ;; URL: http://angg.twu.net/#eev
-;; Version: 20211108
+;; Version: 20211109
 
 ;; This program is free software; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by



reply via email to

[Prev in Thread] Current Thread [Next in Thread]