[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/geiser-kawa e0fd1de 084/119: Refactor geiser-kawa-devutil-
From: |
Philip Kaludercic |
Subject: |
[nongnu] elpa/geiser-kawa e0fd1de 084/119: Refactor geiser-kawa-devutil-exprtree.el |
Date: |
Sun, 1 Aug 2021 18:30:43 -0400 (EDT) |
branch: elpa/geiser-kawa
commit e0fd1de6b14b3d0f008a4c349fd01149cecb279b
Author: spellcard199 <spellcard199@protonmail.com>
Commit: spellcard199 <spellcard199@protonmail.com>
Refactor geiser-kawa-devutil-exprtree.el
---
elisp/geiser-kawa-devutil-exprtree.el | 40 ++++++++++++++++++++++-------------
elisp/tests/test-geiser-kawa.el | 2 +-
2 files changed, 26 insertions(+), 16 deletions(-)
diff --git a/elisp/geiser-kawa-devutil-exprtree.el
b/elisp/geiser-kawa-devutil-exprtree.el
index 6cb2728..361f33b 100644
--- a/elisp/geiser-kawa-devutil-exprtree.el
+++ b/elisp/geiser-kawa-devutil-exprtree.el
@@ -33,25 +33,35 @@
(view-buffer-other-window
geiser-kawa-devutil-exprtree-buffer))
-(defun geiser-kawa-devutil-exprtree--for-expression (code-str)
- "Get the Expression tree CODE-STR."
+(defun geiser-kawa-devutil-exprtree--for (code-str)
+ "Get the Expression tree for CODE-STR."
(geiser-kawa-util--eval-to-res
`(geiser:kawa-devutil-expr-tree-formatted ,code-str)))
-(defun geiser-kawa-devutil-exprtree-sexp ()
- "If region is active send region, otherwise send last expression."
+(defun geiser-kawa-devutil-exprtree--view-for (code-str)
+ "Get and view Expression tree for CODE-STR."
+ (geiser-kawa-devutil-exprtree--view
+ (geiser-kawa-devutil-exprtree--for
+ code-str)))
+
+(defun geiser-kawa-devutil-exprtree-region (reg-beg reg-end)
+ "View Exprtree for region.
+Argument REG-BEG is beginning of region.
+Argument REG-END is end of region."
+ (interactive "r")
+ (let ((code-str (buffer-substring-no-properties
+ reg-beg reg-end)))
+ (geiser-kawa-devutil-exprtree--view-for code-str)))
+
+(defun geiser-kawa-devutil-exprtree-last-sexp ()
+ "View Exprtree for sexp before (point)."
(interactive)
- (let* ((code-str
- (if (region-active-p)
- (buffer-substring-no-properties (region-beginning)
- (region-end))
- (save-excursion
- (let ((sexp-beg (progn (backward-sexp) (point)))
- (sexp-end (progn (forward-sexp) (point))))
- (buffer-substring-no-properties sexp-beg sexp-end)))))
- (expr-tree (geiser-kawa-devutil-exprtree--for-expression
- code-str)))
- (geiser-kawa-devutil-exprtree--view expr-tree)))
+ (let ((code-str
+ (save-excursion
+ (let ((sexp-beg (progn (backward-sexp) (point)))
+ (sexp-end (progn (forward-sexp) (point))))
+ (buffer-substring-no-properties sexp-beg sexp-end)))))
+ (geiser-kawa-devutil-exprtree--view-for code-str)))
(provide 'geiser-kawa-devutil-exprtree)
diff --git a/elisp/tests/test-geiser-kawa.el b/elisp/tests/test-geiser-kawa.el
index 62e593a..3a7eacc 100644
--- a/elisp/tests/test-geiser-kawa.el
+++ b/elisp/tests/test-geiser-kawa.el
@@ -90,7 +90,7 @@
(it "can `geiser-kawa-devutil-exprtree--for-expression'"
(expect
(string-suffix-p "SimpleSymbol)))"
- (geiser-kawa-devutil-exprtree--for-expression
+ (geiser-kawa-devutil-exprtree--for
"(display 'foobar)")))
:to-equal t)
- [nongnu] elpa/geiser-kawa 266413b 038/119: Refactor: replace Kawa procedures with primitive methods + update kawa-devutil dep, (continued)
- [nongnu] elpa/geiser-kawa 266413b 038/119: Refactor: replace Kawa procedures with primitive methods + update kawa-devutil dep, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 281d27c 028/119: Add COPYING, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 72dbb50 036/119: Refactor: rename classes, move static field between classes, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 91929a6 013/119: Small naming change, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 8451f3b 017/119: README.org - Small reword, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa ed8d954 055/119: Rename funcs, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa e4679f7 066/119: pom.xml update kawa-devutil dep + fix code accordingly, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 80ed3e7 068/119: Update geiser version + remove geiser workaround for Cask, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa f258b9a 073/119: TODO.org: add notes to self on how to make the melpa recipe, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa da47cd7 082/119: Fix broken name, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa e0fd1de 084/119: Refactor geiser-kawa-devutil-exprtree.el,
Philip Kaludercic <=
- [nongnu] elpa/geiser-kawa 4750e5c 021/119: Update README, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa c9c493e 006/119: Add pom.xml for kawa-geiser dependency, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 8d04e27 032/119: Update kawa-devutil dep, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 84eea5c 008/119: Add quickstart.el, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 86ef157 020/119: Join projects: kawa-geiser is now part of geiser-kawa, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 29d4f87 015/119: pom.xml - Update kawa-geiser SHA, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 0eab288 018/119: README.org - Small reword, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 11c8415 037/119: Fix (workaround) autodoc for certain symbol names, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa aad27bb 039/119: Small reword in comment, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-kawa 95e3f4a 010/119: Fix error when requiring geiser-kawa and kawa binary is not in PATH, Philip Kaludercic, 2021/08/01