Sujet : Re: Can C #includes like this be made to work onVMS?
De : arne (at) *nospam* vajhoej.dk (Arne Vajhøj)
Groupes : comp.os.vmsDate : 16. Oct 2024, 23:44:44
Autres entêtes
Organisation : SunSITE.dk - Supporting Open source
Message-ID : <671041dd$0$716$14726298@news.sunsite.dk>
References : 1 2 3 4 5
User-Agent : Mozilla Thunderbird
On 10/15/2024 7:48 PM, Arne Vajhøj wrote:
$ type bc.eve
all replace "#include ""b/" "#include ""c/"
exit
$ type cd.tpu
eve_all_replace("#include ""c/", "#include ""d/");
eve_exit();
Just realized that one is custom not standard.
!
! Replace all occurences of string with another string (without
! confirm).
!
! High-level.
!
procedure eve_all_replace(fndstr,rplstr)
local fnd_string,
rpl_string,
pos_mark,
count_integer;
if not (eve$prompt_string(fndstr,fnd_string,"Old string: ",
"No old string given")) then
return;
endif;
if not (eve$prompt_string(rplstr,rpl_string,"New string ",
"No new string given")) then
return;
endif;
pos_mark:=mark(none);
set (screen_update, off);
eve$all_replace(fnd_string,rpl_string,count_integer);
position (pos_mark);
set (screen_update, on);
delete (pos_mark);
message("Total of "+str(count_integer)+" replaces");
endprocedure;
!
! Replace all occurences of string with another string (without
! confirm).
!
! Low-level.
!
procedure eve$all_replace(fndstr,rplstr,count)
local find_mark;
position (beginning_of(current_buffer));
count:=0;
loop
find_mark:=search_quietly(fndstr, forward);
exitif find_mark = 0;
count:=count+1;
position (find_mark);
copy_text (rplstr);
erase_character (length(fndstr));
endloop;
endprocedure;
Arne