diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1999-12-20 11:03:20 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 1999-12-20 11:03:20 -0200 |
commit | de65253f2d927603b6becf87b4d177aa96a54fc2 (patch) | |
tree | 8e505c04db895e6ca15893290363cd17eaf3e460 | |
parent | 12b45c2df21beac17d49a92a4e098cb212238c1a (diff) | |
download | lua-de65253f2d927603b6becf87b4d177aa96a54fc2.tar.gz lua-de65253f2d927603b6becf87b4d177aa96a54fc2.tar.bz2 lua-de65253f2d927603b6becf87b4d177aa96a54fc2.zip |
new way to handle _PROMPT
-rw-r--r-- | lua.c | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lua.c,v 1.27 1999/11/22 13:12:07 roberto Exp roberto $ | 2 | ** $Id: lua.c,v 1.28 1999/12/06 11:41:28 roberto Exp roberto $ |
3 | ** Lua stand-alone interpreter | 3 | ** Lua stand-alone interpreter |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -15,6 +15,10 @@ | |||
15 | #include "lualib.h" | 15 | #include "lualib.h" |
16 | 16 | ||
17 | 17 | ||
18 | #ifndef PROMPT | ||
19 | #define PROMPT "> " | ||
20 | #endif | ||
21 | |||
18 | #ifdef _POSIX_SOURCE | 22 | #ifdef _POSIX_SOURCE |
19 | #include <unistd.h> | 23 | #include <unistd.h> |
20 | #else | 24 | #else |
@@ -119,8 +123,11 @@ static void manual_input (int prompt) { | |||
119 | char buffer[BUFSIZ]; | 123 | char buffer[BUFSIZ]; |
120 | int i = 0; | 124 | int i = 0; |
121 | lua_beginblock(); | 125 | lua_beginblock(); |
122 | if (prompt) | 126 | if (prompt) { |
123 | printf("%s", lua_getstring(lua_getglobal("_PROMPT"))); | 127 | const char *s = lua_getstring(lua_getglobal("_PROMPT")); |
128 | if (!s) s = PROMPT; | ||
129 | printf("%s", s); | ||
130 | } | ||
124 | for(;;) { | 131 | for(;;) { |
125 | int c = getchar(); | 132 | int c = getchar(); |
126 | if (c == EOF) { | 133 | if (c == EOF) { |
@@ -149,7 +156,6 @@ static void manual_input (int prompt) { | |||
149 | int main (int argc, char *argv[]) { | 156 | int main (int argc, char *argv[]) { |
150 | int i; | 157 | int i; |
151 | lua_state = lua_newstate("stack", 1024, "builtin", 1, NULL); | 158 | lua_state = lua_newstate("stack", 1024, "builtin", 1, NULL); |
152 | lua_pushstring("> "); lua_setglobal("_PROMPT"); | ||
153 | lua_userinit(); | 159 | lua_userinit(); |
154 | getargs(argc, argv); | 160 | getargs(argc, argv); |
155 | if (argc < 2) { /* no arguments? */ | 161 | if (argc < 2) { /* no arguments? */ |