* [BUG]: function looking-back (XEmacs incompatibility)
@ 2009-12-02 0:37 Richard KLINDA
2009-12-02 5:34 ` Carsten Dominik
0 siblings, 1 reply; 3+ messages in thread
From: Richard KLINDA @ 2009-12-02 0:37 UTC (permalink / raw)
To: emacs-orgmode
XEmacs and older Emacs (22 and below) don't have the function LOOKING-BACK.
I've found a definiton of it here: http://moinmo.in/EmacsForMoinMoin
,----
| (or (fboundp 'looking-back)
| ; taken straight out of http://cvs.savannah.gnu.org/viewcvs/emacs/emacs/lisp/subr.el?rev=1.530&view=auto
| (defun looking-back (regexp &optional limit greedy)
| "Return non-nil if text before point matches regular expression REGEXP.
| Like `looking-at' except matches before point, and is slower.
| LIMIT if non-nil speeds up the search by specifying a minimum
| starting position, to avoid checking matches that would start
| before LIMIT.
| If GREEDY is non-nil, extend the match backwards as far as possible,
| stopping when a single additional previous character cannot be part
| of a match for REGEXP."
| (let ((start (point))
| (pos
| (save-excursion
| (and (re-search-backward (concat "\\(?:" regexp "\\)\\=") limit t)
| (point)))))
| (if (and greedy pos)
| (save-restriction
| (narrow-to-region (point-min) start)
| (while (and (> pos (point-min))
| (save-excursion
| (goto-char pos)
| (backward-char 1)
| (looking-at (concat "\\(?:" regexp "\\)\\'"))))
| (setq pos (1- pos)))
| (save-excursion
| (goto-char pos)
| (looking-at (concat "\\(?:" regexp "\\)\\'")))))
| (not (null pos)))))
`----
--
Richard
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [BUG]: function looking-back (XEmacs incompatibility)
2009-12-02 0:37 [BUG]: function looking-back (XEmacs incompatibility) Richard KLINDA
@ 2009-12-02 5:34 ` Carsten Dominik
2009-12-02 12:32 ` Richard KLINDA
0 siblings, 1 reply; 3+ messages in thread
From: Carsten Dominik @ 2009-12-02 5:34 UTC (permalink / raw)
To: Richard KLINDA; +Cc: emacs-orgmode
Hi RIchard,
this code is already (and has been for a few weeks) in org-compat.el
- Carsten
On Dec 2, 2009, at 1:37 AM, Richard KLINDA wrote:
> XEmacs and older Emacs (22 and below) don't have the function
> LOOKING-BACK.
>
> I've found a definiton of it here: http://moinmo.in/EmacsForMoinMoin
>
> ,----
> | (or (fboundp 'looking-back)
> | ; taken straight out of http://cvs.savannah.gnu.org/viewcvs/emacs/emacs/lisp/subr.el?rev=1.530&view=auto
> | (defun looking-back (regexp &optional limit greedy)
> | "Return non-nil if text before point matches regular
> expression REGEXP.
> | Like `looking-at' except matches before point, and is slower.
> | LIMIT if non-nil speeds up the search by specifying a minimum
> | starting position, to avoid checking matches that would start
> | before LIMIT.
> | If GREEDY is non-nil, extend the match backwards as far as possible,
> | stopping when a single additional previous character cannot be part
> | of a match for REGEXP."
> | (let ((start (point))
> | (pos
> | (save-excursion
> | (and (re-search-backward (concat "\\(?:" regexp "\\)
> \\=") limit t)
> | (point)))))
> | (if (and greedy pos)
> | (save-restriction
> | (narrow-to-region (point-min) start)
> | (while (and (> pos (point-min))
> | (save-excursion
> | (goto-char pos)
> | (backward-char 1)
> | (looking-at (concat "\\(?:" regexp "\
> \)\\'"))))
> | (setq pos (1- pos)))
> | (save-excursion
> | (goto-char pos)
> | (looking-at (concat "\\(?:" regexp "\\)\\'")))))
> | (not (null pos)))))
> `----
>
> --
> Richard
>
>
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
- Carsten
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-12-02 12:30 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-02 0:37 [BUG]: function looking-back (XEmacs incompatibility) Richard KLINDA
2009-12-02 5:34 ` Carsten Dominik
2009-12-02 12:32 ` Richard KLINDA
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
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).