jed-users mailing list

[2003 Date Index] [2003 Thread Index] [Other years]
[Thread Prev] [Thread Next]      [Date Prev] [Date Next]

Re: Re: some jedmodes


Romano Giannetti <romano@xxxxxxxxxxxxxxxx> wrote:
>Really nice, thank you! May I propose a more general version? This one works
>for jed and xjed and is i18n wise :-), and it will not jump to bob() every

I have a somewhat more general solution that you may want to try.  In
jed/lib/runpgm.sl, you will find:

#ifdef XWINDOWS
custom_variable ("XTerm_Pgm", "xterm");
define _jed_run_program_hook (s)
{
   s = strtrim_end (s, " \t&");
   return system (sprintf ("%s -e %s &", XTerm_Pgm, s));
}
#endif

Try changing it to:

static variable Run_Pgm_In_Fg = 0;
#ifdef XWINDOWS
custom_variable ("XTerm_Pgm", "xterm");
define _jed_run_program_hook (s)
{
   s = strtrim_end (s, " \t&");
   variable bg = "&";
   if (Run_Pgm_In_Fg) bg = "";
   return system (sprintf ("%s -e %s %s", XTerm_Pgm, s, bg));
}
#endif

Then in the same file, change:

public define vrun_program ()
{
   variable args = __pop_args (_NARGS);
   return run_program (sprintf (__push_args (args)));
}

to:

public define vrun_program ()
{
   variable args = __pop_args (_NARGS);
   Run_Pgm_In_Fg = 0;
   return run_program (sprintf (__push_args (args)));
}
public define vrun_program_fg ()
{
   variable args = __pop_args (_NARGS);
   Run_Pgm_In_Fg = 1;
   return run_program (sprintf (__push_args (args)));
}

With the above changes to runpgm.sl, you should be replace the ispell
code

>#ifndef XWINDOWS
>        cmd = strcat("stty opost icrnl; clear; ", command, tmp,
>                     "; echo press ENTER; read dummy;", % prompt
>                     "stty -opost -icrnl");
>#else
>        flush(strcat("Calling ", command));
>        cmd = strcat("xterm -e ", command, tmp);
>#endif
>        () = system(cmd);

to the more simpler version:

         () = vrun_program_fg ("%s %s", command, tmp);

You will probably need to add
 
         autoload ("vrun_program_fg", "runpgm");

to the top of ispell.sl.

If something like this proves useful, I will add it to the next release.
Thanks,
--John

--------------------------
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]