Merge pull request #2 from triska/get_single_char

New feature: RET can now be used as a synonym for "." in the interaction
This commit is contained in:
notoria
2020-04-18 18:51:37 +02:00
committed by GitHub
2 changed files with 8 additions and 10 deletions

View File

@@ -168,8 +168,8 @@ predicates it defines. For example, with the program shown above:
; What = pure_world.
```
Press `SPACE` to show further answers, if any exist. Press `.` to
abort the search and return to the toplevel prompt.
Press `SPACE` to show further answers, if any exist. Press `RETURN` or
 `.` to abort the search and return to the toplevel prompt.
Press `h` to show a help message.
To quit Scryer Prolog, use the standard predicate `halt/0`:

View File

@@ -146,24 +146,22 @@
'$read_input'(ThreadedGoals, NewVarList) :-
get_single_char(C),
( C == w ->
( C = w ->
nl,
write(' '),
'$write_eq'(ThreadedGoals, NewVarList, 0),
'$read_input'(ThreadedGoals, NewVarList)
; C == p ->
; C = p ->
nl,
write(' '),
'$write_eq'(ThreadedGoals, NewVarList, 20),
'$read_input'(ThreadedGoals, NewVarList)
; C == (';') ->
; member(C, [';', ' ', n]) ->
nl, write('; '), false
; C == (' ') ->
nl, write('; '), false
; C == h ->
; C = h ->
'$help_message',
'$read_input'(ThreadedGoals, NewVarList)
; C == '.' ->
; member(C, ['\n', .]) ->
nl, write('; ...'), nl
; '$read_input'(ThreadedGoals, NewVarList)
).
@@ -171,7 +169,7 @@
'$help_message' :-
nl, nl,
write('SPACE, "n" or ";": next solution, if any\n'),
write('".": stop enumeration\n'),
write('RETURN or ".": stop enumeration\n'),
write('"h": display this help message\n'),
write('"w": write terms without depth limit\n'),
write('"p": print terms with depth limit\n\n').