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

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

[elpa] externals/eev c95d15a 06/20: Added `eepitch-vterm'.


From: Stefan Monnier
Subject: [elpa] externals/eev c95d15a 06/20: Added `eepitch-vterm'.
Date: Mon, 4 Jan 2021 01:01:48 -0500 (EST)

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

    Added `eepitch-vterm'.
---
 ChangeLog     | 20 ++++++++++++++++++++
 VERSION       |  4 ++--
 eepitch.el    | 51 ++++++++++++++++++++++++++++++++++++++++++++-------
 eev-code.el   |  6 ++++--
 eev-elinks.el |  1 +
 eev-intro.el  |  2 +-
 eev-mode.el   |  3 ++-
 eev-tlinks.el |  2 ++
 8 files changed, 76 insertions(+), 13 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 706bee5..4d54ae9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2020-11-29  Eduardo Ochs  <eduardoochs@gmail.com>
+
+       * eepitch.el (eepitch-line): new variable.
+       (eepitch-line): when the value in the variable `eepitch-line' is
+       non-nil then run `(funcall eepitch-line line)' instead of the
+       default behavior.
+       (eepitch): setq eepitch-line to nil.
+       (eepitch-vterm): new function.
+       (eepitch-line-vterm): new function.
+
+2020-11-26  Eduardo Ochs  <eduardoochs@gmail.com>
+
+       * eev-code.el (ee-code-c-d-base): added a link to
+       `find-eev-quick-intro'.
+
+2020-11-16  Eduardo Ochs  <eduardoochs@gmail.com>
+
+       * eepitch.el (eepitch-python2): new function.
+       (eepitch-python): make it use python3.
+
 2020-11-01  Eduardo Ochs  <eduardoochs@gmail.com>
 
        * eev-elinks.el (find-grep-links): rewrote using
diff --git a/VERSION b/VERSION
index bb1436d..dc34e49 100644
--- a/VERSION
+++ b/VERSION
@@ -1,2 +1,2 @@
-Mon Nov  2 07:19:36 GMT 2020
-Mon Nov  2 04:19:36 -03 2020
+Mon Nov 30 01:52:09 GMT 2020
+Sun Nov 29 22:52:09 -03 2020
diff --git a/eepitch.el b/eepitch.el
index 04cecbc..7dd1648 100644
--- a/eepitch.el
+++ b/eepitch.el
@@ -1,6 +1,6 @@
 ;; eepitch.el - record interactions with shells as readable notes, redo tasks.
 
-;; Copyright (C) 2012,2015,2018,2019 Free Software Foundation, Inc.
+;; Copyright (C) 2012,2015,2018,2019,2020 Free Software Foundation, Inc.
 ;;
 ;; This file is part of GNU eev.
 ;;
@@ -19,7 +19,7 @@
 ;;
 ;; Author:     Eduardo Ochs <eduardoochs@gmail.com>
 ;; Maintainer: Eduardo Ochs <eduardoochs@gmail.com>
-;; Version:    2019sep28
+;; Version:    2020nov29
 ;; Keywords:   e-scripts
 ;;
 ;; Latest version: <http://angg.twu.net/eev-current/eepitch.el>
@@ -44,6 +44,7 @@
 ;; «.set-glyphs»               (to "set-glyphs")
 ;; «.set-keys»                 (to "set-keys")
 ;;
+;; «.eepitch-vterm»            (to "eepitch-vterm")
 ;; «.eepitch-langs»            (to "eepitch-langs")
 
 ;;; Commentary:
@@ -271,6 +272,7 @@ Note that `eepitch-buffer-create' sets this variable!")
 (defvar eepitch-window-show    '(eepitch-window-show))  ; cheap indirection
 (defvar eepitch-kill           '(eepitch-kill-buffer))  ; cheap indirection
 (defvar eepitch-kill-windows   'nil)                   ; cheap indirection
+(defvar eepitch-line           'nil)                   ; cheap indirection
 (defun eepitch-buffer-exists () (get-buffer        eepitch-buffer-name))
 (defun eepitch-window-exists () (get-buffer-window eepitch-buffer-name))
 (defun eepitch-target-buffer () (get-buffer        eepitch-buffer-name))
@@ -357,6 +359,7 @@ which does all the hard work."
       '(eepitch-window-show))   ; default two-window setting
   (setq eepitch-kill           ; set the behavior of `eepitch-kill'
       '(eepitch-kill-buffer))   ; to just kill the target buffer
+  (setq eepitch-line nil)      ; use the default `eepitch-line'
   (eepitch-prepare)
   (list 'Target: eepitch-buffer-name)) ; feedback (for <f8> and `M-e')
 
@@ -381,11 +384,15 @@ which does all the hard work."
 
 (defun eepitch-line (line)
   "Send LINE to the target window and run the key binding for RET there.
+If the value in the variable `eepitch-line' is non-nil then call
+the function in that variable instead of running the default code.
 This is a low-level function used by `eepitch-this-line'."
-  (eepitch-eval-at-target-window
-   '(progn (goto-char (point-max))                    ; at the end of buffer
-          (insert line)                               ; "type" the line
-          (call-interactively (key-binding "\r")))))  ; then do a RET
+  (if eepitch-line
+      (funcall eepitch-line line)
+    (eepitch-eval-at-target-window                      ; Default behavior:
+     '(progn (goto-char (point-max))                    ; at the end of buffer
+            (insert line)                               ; "type" the line
+            (call-interactively (key-binding "\r")))))) ; then do a RET
 
 (defun eepitch-this-line ()
 "Pitch this line to the target buffer, or eval it as lisp if it starts with 
`'.
@@ -764,6 +771,33 @@ This is useful for for running processes that use pagers 
like
 
 
 
+;;;   ___  _   _                 _                          
+;;;  / _ \| |_| |__   ___ _ __  | |_ ___ _ __ _ __ ___  ___ 
+;;; | | | | __| '_ \ / _ \ '__| | __/ _ \ '__| '_ ` _ \/ __|
+;;; | |_| | |_| | | |  __/ |    | ||  __/ |  | | | | | \__ \
+;;;  \___/ \__|_| |_|\___|_|     \__\___|_|  |_| |_| |_|___/
+;;;                                                         
+;; «eepitch-vterm»  (to ".eepitch-vterm")
+;; 2020nov29: new code. Experimental.
+
+(defun eepitch-vterm ()
+  "(This function is a prototype that only works in a controlled setting!)"
+  (interactive)
+  ;; (eepitch '(vterm))
+  (eepitch '(if (get-buffer "*vterm*")
+               (set-buffer "*vterm*")
+             (vterm "*vterm*")))
+  (setq eepitch-line 'eepitch-line-vterm))
+
+;; Thanks to Gabriele Bozzola for helping me with this.
+(defun eepitch-line-vterm (line)
+  "Send LINE to the vterm buffer and run the key binding for RET there."
+  (eepitch-eval-at-target-window
+    '(progn (vterm-send-string line)   ; "type" the line
+           (vterm-send-return))))  ; then do a RET
+
+
+
 
 ;;;  _                                                  
 ;;; | |    __ _ _ __   __ _ _   _  __ _  __ _  ___  ___ 
@@ -793,8 +827,9 @@ This is useful for for running processes that use pagers 
like
 (defun eepitch-lua52  () (interactive) (eepitch-comint "lua52"  "lua5.2"))
 (defun eepitch-lua53  () (interactive) (eepitch-comint "lua53"  "lua5.3"))
 (defun eepitch-julia  () (interactive) (eepitch-comint "julia"  "julia"))
-(defun eepitch-python  () (interactive) (eepitch-comint "python"  "python"))
+(defun eepitch-python2 () (interactive) (eepitch-comint "python2" "python2"))
 (defun eepitch-python3 () (interactive) (eepitch-comint "python3" "python3"))
+(defun eepitch-python  () (interactive) (eepitch-comint "python3" "python3"))
 (defun eepitch-ruby   () (interactive) (eepitch-comint "ruby"   "irb"))
 (defun eepitch-ruby   () (interactive) (eepitch-comint "ruby"   "irb 
--simple-prompt"))
 (defun eepitch-perl () (interactive) (eepitch-comint "perl" "perl -d -e 42"))
@@ -889,6 +924,8 @@ This is useful for for running processes that use pagers 
like
 
 
 
+
+
 (provide 'eepitch)
 
 
diff --git a/eev-code.el b/eev-code.el
index ef9b638..260d029 100644
--- a/eev-code.el
+++ b/eev-code.el
@@ -1,6 +1,6 @@
 ;;; eev-code.el -- `code-c-d', that generates and evaluates Lisp defuns.
 
-;; Copyright (C) 2012-2019 Free Software Foundation, Inc.
+;; Copyright (C) 2012-2020 Free Software Foundation, Inc.
 ;;
 ;; This file is part of GNU eev.
 ;;
@@ -19,7 +19,7 @@
 ;;
 ;; Author:     Eduardo Ochs <eduardoochs@gmail.com>
 ;; Maintainer: Eduardo Ochs <eduardoochs@gmail.com>
-;; Version:    2019apr01
+;; Version:    2020nov26
 ;; Keywords:   e-scripts
 ;;
 ;; Latest version: <http://angg.twu.net/eev-current/eev-code.el>
@@ -197,6 +197,8 @@ Try this: (find-code-c-d \"CODE\" \"/DIR/\" :info \"INFO\")"
   (ee-template0 "\
    ;; {(ee-S `(find-code-c-d ,c ,d ,@rest))} 
    ;; {(ee-S `(ee-code-c-d-base ,c ,d))} 
+   ;; See: (find-eev-quick-intro \"9.1. `code-c-d'\")
+   ;;
    (setq ee-{c}dir \"{d}\")
    (setq ee-{c}tagsfile \"{d}TAGS\")
    (defun ee-{c}file (str)
diff --git a/eev-elinks.el b/eev-elinks.el
index 8362018..1894850 100644
--- a/eev-elinks.el
+++ b/eev-elinks.el
@@ -382,6 +382,7 @@ This is an internal function used by `find-efunction-links' 
and
 ;; Moved to eev-mode.el:
 ;; (define-key eev-mode-map "\M-h\M-k" 'find-ekey-links)
 
+;; Test: (ee-format-kbd-macro [down])
 (defun ee-format-kbd-macro (key)
   "Example: (ee-format-kbd-macro [down])  --> \"<down>  ;; next-line\""
   (replace-regexp-in-string "[ \t][ \t]+" "  " (format-kbd-macro key t)))
diff --git a/eev-intro.el b/eev-intro.el
index d62b009..f478b45 100644
--- a/eev-intro.el
+++ b/eev-intro.el
@@ -3145,7 +3145,7 @@ To rebind `M-h M-h' to its original function, run this:
 
 or restart Emacs.
 
-The big figure below shows all the keys sequences:
+The big figure below shows all the key sequences:
 
    _______________________________________
   |                 |                     |
diff --git a/eev-mode.el b/eev-mode.el
index a897a22..147211b 100644
--- a/eev-mode.el
+++ b/eev-mode.el
@@ -64,11 +64,12 @@ and: (find-eval-intro \"`M-k'\")"
 ;;;           |___/                |_|    
 ;;;
 ;; «eev-mode-map-set» (to ".eev-mode-map-set")
+;; Test: (find-eminorkeymapdescr 'eev-mode)
 
 (defvar eev-mode-map nil)
 
 (defun eev-mode-map-set ()
-  "Add the standard keybindings for eev to `eev-mode-keymap'."
+  "Add the standard keybindings for eev to `eev-mode-map'."
   ;;
   ;; Keys for following hyperlinks and for going back.
   ;; See: (find-eev-quick-intro "2. Evaluating Lisp" "When you type `M-e'")
diff --git a/eev-tlinks.el b/eev-tlinks.el
index fac810d..90d1e0d 100644
--- a/eev-tlinks.el
+++ b/eev-tlinks.el
@@ -928,6 +928,8 @@ emacs    -fg bisque -bg black                  eev-readme.el
      (setq ee-youtubedl-dirs ',ee-youtubedl-dirs)
      (setq ee-youtubedl-dir   ,ee-youtubedl-dir)
      ""
+     (find-audiovideo-intro "6. Youtube-dl")
+     ""
      ,(ee-template0 "\
  (eepitch-shell2)
  (eepitch-kill)



reply via email to

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