[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/smalltalk-mode 12cf1d9 19/34: more smalltalk mode impro
From: |
Stefan Monnier |
Subject: |
[elpa] externals/smalltalk-mode 12cf1d9 19/34: more smalltalk mode improvements from Mathieu |
Date: |
Tue, 9 Apr 2019 22:30:44 -0400 (EDT) |
branch: externals/smalltalk-mode
commit 12cf1d989b271f14783771472e0e392b0badf26c
Author: Mathieu Suen <address@hidden>
Commit: Paolo Bonzini <address@hidden>
more smalltalk mode improvements from Mathieu
---
smalltalk-mode.el | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/smalltalk-mode.el b/smalltalk-mode.el
index fc5b7a3..66593ae 100644
--- a/smalltalk-mode.el
+++ b/smalltalk-mode.el
@@ -948,7 +948,7 @@ Whitespace is defined as spaces, tabs, and comments."
curr-hit-point curr-hit new-hit-point new-hit)
(save-excursion
(if (setq curr-hit-point
- (search-backward-regexp "^![ \t]*\\(\\(\\w+\\.\\)*\\w+)[ \t]+"
nil t))
+ (search-backward-regexp "^![ \t]*\\(\\(\\w+\\.\\)*\\w+\\)[
\t]+" nil t))
(setq curr-hit (buffer-substring
(match-beginning 1)
(match-end 1)))))
@@ -969,7 +969,7 @@ Whitespace is defined as spaces, tabs, and comments."
(save-excursion
(if (setq new-hit-point
(search-backward-regexp
- "^[ \t]*\\(\\w+\\)[ \t]+extend[ \t]+\\[" nil t))
+ "^[ \t]*\\(\\w+\\.\\)*\\(\\w+\\)[ \t]+extend[ \t]+\\[" nil t))
(setq new-hit (buffer-substring
(match-beginning 1)
(match-end 1)))))
@@ -991,23 +991,23 @@ Whitespace is defined as spaces, tabs, and comments."
(setq curr-hit new-hit)))
(cons curr-hit curr-hit-point)))
+
+
(defun smalltalk-current-scope-point ()
- (let ((curr-hit-point (smalltalk-current-class-point))
- new-hit-point)
- (save-excursion
- (setq new-hit-point
- (search-backward-regexp "^[ \t]*Eval[ \t]+\\[" nil t)))
- (if (and new-hit-point
- (or (not curr-hit-point) (> new-hit-point curr-hit-point)))
- (setq curr-hit-point new-hit-point))
-
+ (defun smalltalk-update-hit-point (current search)
(save-excursion
- (setq new-hit-point
- (search-backward-regexp "^[ \t]*Namespace[ \t]+current:[
\t]+[A-Za-z0-9_.]+[ \t]+\\[" nil t)))
- (if (and new-hit-point
- (or (not curr-hit-point) (> new-hit-point curr-hit-point)))
- (setq curr-hit-point new-hit-point))
-
+ (let ((new-hit-point (funcall search)))
+ (if (and new-hit-point
+ (or (not current) (> new-hit-point current)))
+ (new-hit-point)
+ current))))
+ (let ((curr-hit-point (smalltalk-current-class-point)))
+ (setq curr-hit-point
+ (smalltalk-update-hit-point curr-hit-point
+ #'(lambda ()(search-backward-regexp "^[
\t]*Eval[ \t]+\\[" nil t))))
+ (setq curr-hit-point
+ (smalltalk-update-hit-point curr-hit-point
+ #'(lambda ()(search-backward-regexp "^[
\t]*Namespace[ \t]+current:[ \t]+[A-Za-z0-9_.]+[ \t]+\\[" nil t))))
curr-hit-point))
(defun smalltalk-current-class-point ()
- [elpa] externals/smalltalk-mode c95682c 24/34: correct defun* -> defun patch, (continued)
- [elpa] externals/smalltalk-mode c95682c 24/34: correct defun* -> defun patch, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 57c7cfa 20/34: fix smalltalk-mode.el to work in emacs 22, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 4160554 12/34: simplify installation of Emacs modes, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 90f07e6 32/34: Move smalltalk-mode autoloads to smalltalk-mode, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 453b7f5 34/34: smalltalk-mode: Fix version and author in header, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode d7f4421 28/34: emacs: Fix the smalltalk-mode mode for emacs 24.2 and later, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 7706ca9 22/34: merge smalltalk-mode bugfixes and tags support, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 83e5fa6 03/34: more updates to the FSF address, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 81dda06 10/34: fix Emacs mode glitches reported by Jeronimo Pellegrini, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode f5a8ddb 13/34: update copyright notices for 2009, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 12cf1d9 19/34: more smalltalk mode improvements from Mathieu,
Stefan Monnier <=
- [elpa] externals/smalltalk-mode aaa7cb0 17/34: improve smalltalk.el detection of a new method's indent, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode a5a661a 30/34: Silence byte-compiler warnings, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode f5845a2 06/34: Emacs interactor mode refinements, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 1521656 01/34: initial import, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode c81b497 21/34: Fix smalltalk-mode.el, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode cd36013 26/34: smalltalk-mode fixes, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 58ef6fd 05/34: improvements to the Emacs mode, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode a1e76a8 27/34: new smalltalk-mode navigational shortcuts, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode d3cea5f 25/34: fix typo, Stefan Monnier, 2019/04/09
- [elpa] externals/smalltalk-mode 99e6910 33/34: smalltalk-mode: Fix issues spotted by Emacs' checkdoc, Stefan Monnier, 2019/04/09