- Subject: Re: pop_spot(0)
- From: "Klaus Schmid" <klaus.schmid@xxxxxx>
- Date: Mon, 7 Jul 2003 19:39:12 +0200
Joerg Sommer <joerg@xxxxxxxxxxxx> wrote:
>This part will be called very often, so I need the best(tm) way.
>Background: I need somewhat like find the left or right parenthesis of
>the block I'm in.
The functions find_matching_delimiter() and parse_to_point() -- both
refer to the current syntax -- seem to be best suited for this kind of
tasks.
Nevertheless, for parsing html I found it easier to use the elementary
functions like fsearch() and skip_chars(). To keep track of the buffer
positions I 'invented' the following three functions:
% buffer position
static define pos_cur() % %{{{
{
return [what_line(),_get_point()];
}
%}}}
static define pos_set( p) % %{{{
{
goto_line( p[0]);
_set_point( p[1]);
}
%}}}
static define pos_cmp( a, b) % %{{{
{
if ( a[0] == b[0]) return ( a[1] -b[1]);
return ( a[0] -b[0]);
}
%}}}
With narrow/widen I encountered a small problem when used
with buffers visible in two windows: the current position in the
other window got lost. Maybe there is a solution for that, I did
not investigate it further.
Finally I am not sure whether my approach with these pos_*()
functions could be realised easier or faster. In any case I would
appreciate to have such a functionality built in.
Just my € 0.02.
-- Klaus
--------------------------
To unsubscribe send email to <jed-users-request@xxxxxxxxxxx> with
the word "unsubscribe" in the message body.
Need help? Email <jed-users-owner@xxxxxxxxxxx>.
[2003 date index]
[2003 thread index]
[Thread Prev] [Thread Next]
[Date Prev] [Date Next]