From: Tassilo Horn <tsdh@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: Problem using search-forward
Date: Sun, 07 Oct 2012 20:26:15 +0200 [thread overview]
Message-ID: <874nm6rveg.fsf@thinkpad.tsdh.de> (raw)
In-Reply-To: 9aed3b85-f743-4bd0-994f-c44304d8078a@googlegroups.com
Bob Shanley <rjshanley18@gmail.com> writes:
Hi Bob,
> ; These do not:
> ; (defun eol ( ) (end-of-line) (point))
> ; (search-forward ");" (eol))
> ; (let ( (n (eol)) ) (message "this is the value %d" n) (search-forward ");" n))
> ; They result in a Search failed: ");" and point moves to end of line
> ; What am I missing?
The `end-of-line' call already moves point to the end of line, thus you
bound the search to the same position where it starts. Try this
definition of `eol'.
(defun eol ()
(save-excursion
(end-of-line)
(point)))
,----[ C-h f save-excursion RET ]
| save-excursion is a special form in `C source code'.
|
| (save-excursion &rest BODY)
|
| Save point, mark, and current buffer; execute BODY; restore those things.
| Executes BODY just like `progn'.
| The values of point, mark and the current buffer are restored
| even in case of abnormal exit (throw or error).
| The state of activation of the mark is also restored.
|
| This construct does not save `deactivate-mark', and therefore
| functions that change the buffer will still cause deactivation
| of the mark at the end of the command. To prevent that, bind
| `deactivate-mark' with `let'.
|
| If you only want to save the current buffer but not point nor mark,
| then just use `save-current-buffer', or even `with-current-buffer'.
`----
Bye,
Tassilo
next prev parent reply other threads:[~2012-10-07 18:26 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-05 17:46 Problem using search-forward Bob Shanley
2012-10-07 18:26 ` Tassilo Horn [this message]
2012-10-08 4:10 ` Eric Abrahamsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=874nm6rveg.fsf@thinkpad.tsdh.de \
--to=tsdh@gnu.org \
--cc=help-gnu-emacs@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.