By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,952 Members | 1,732 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,952 IT Pros & Developers. It's quick & easy.

* Need help Implementing a script (or macro)

P: n/a
ern
My command-line application must be able to run text scripts (macros).
The scripts have commands, comments, and flags. Comments are ignored
(maybe they are any line beginning with " ; ") Commands are executed
as if the user *manually* typed them in the console. Flags are special
commands that tell the program where to BREAK, LOOP, START. A typical
script may look like this:

; This is my script. It will test my mp3 player...
START:

set battery voltage 1.5
begin thread

LOOP: ; here I will test individual tracks
play
skip track

BREAK: ; at this point, I go back up to find "LOOP"

To launch the script, the user will type:

"script <pathname>"

where pathname is where the script lives. So far, I have the entire
text file in a char * buffer.

Now I need to do several things....

1. After the script begins, the USER needs a way to halt execution of
the script. I was thinking any key press would do. Pseudocode looks
like this:

while("user hasn't pressed any key"){ //continue executing script...

I want the script to stop immediately after the user presses a key, so
I 'm not sure a while loop is the best way... perhaps some kind of
thread...

Need help implementing that logic....

2. I need a way to seperate each line in the text file. I was
thinking of putting each line in an element of an array. I could have
two arrays:

char * start[SIZE];
char * loop[SIZE];

The first holds the commands to execute once, and the second holds the
commands to repeat (not sure if the syntax is correct there... ? I
need an array of strings...). Once I have the commands, I can just
execute them one at a time until I get the flag to stop (#1). But how
would I parse the commands into the arrays from the "buffer" ?

Jan 17 '06 #1
Share this Question
Share on Google+
2 Replies


P: n/a
On 17 Jan 2006 06:42:51 -0800, in comp.lang.c , "ern"
<er*******@gmail.com> wrote:
My command-line application must be able to run text scripts (macros). 1. After the script begins, the USER needs a way to halt execution of
the script.
Suspend or terminate? The latter is easy...
I was thinking any key press would do.
you can't do this in standard C, as there's no way to do a continuous
background check for something else happening in parallel to your main
thread. Ask in a newsgroup specific to your platform for information
on threading.
2. I need a way to seperate each line in the text file.


read up on strtok and sscanf.

Mark McIntyre
--

----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==----
http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups
----= East and West-Coast Server Farms - Total Privacy via Encryption =----
Jan 17 '06 #2

P: n/a
ern wrote:

My command-line application must be able to run text scripts
(macros). The scripts have commands, comments, and flags.
Comments are ignored (maybe they are any line beginning with
";") Commands are executed as if the user *manually* typed them
in the console. Flags are special commands that tell the
program where to BREAK, LOOP, START. A typical script may look
like this:


Just use the innate script ability of your shell. In on Linux you
probably need to read up on bash. If on Windoze read up on batch
language, or better install 4dos for a better system.

This is all OT on c.l.c.

--
"If you want to post a followup via groups.google.com, don't use
the broken "Reply" link at the bottom of the article. Click on
"show options" at the top of the article, then click on the
"Reply" at the bottom of the article headers." - Keith Thompson
More details at: <http://cfaj.freeshell.org/google/>
Jan 17 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.