eqStr ; pipe to system

This commit is contained in:
aarne
2005-10-06 13:21:33 +00:00
parent c2aeb9ae16
commit bf2fdeb22e
5 changed files with 55 additions and 21 deletions

View File

@@ -5,9 +5,9 @@
-- Stability : (stable)
-- Portability : (portable)
--
-- > CVS $Date: 2005/10/06 10:02:34 $
-- > CVS $Date: 2005/10/06 14:21:34 $
-- > CVS $Author: aarne $
-- > CVS $Revision: 1.15 $
-- > CVS $Revision: 1.16 $
--
-- Help on shell commands. Generated from HelpFile by 'make help'.
-- PLEASE DON'T EDIT THIS FILE.
@@ -93,16 +93,19 @@ txtHelpFile =
"\ndc, define_command Name Anything" ++
"\n Add a new defined command. The Name must star with '%'. Later," ++
"\n if 'Name X' is used, it is replaced by Anything where #1 is replaced" ++
"\n by X. Currently at most one argument is possible. To see" ++
"\n definitions in scope, use help -defs." ++
"\n by X. " ++
"\n Restrictions: Currently at most one argument is possible, and a defined" ++
"\n command cannot appear in a pipe. " ++
"\n To see what definitions are in scope, use help -defs." ++
"\n examples:" ++
"\n dc %tnp p -cat=NP -lang=Eng #1 | l -lang=Swe -- translate NPs" ++
"\n %tnp \"this man\" | p -lang=Swe -- translate and parse" ++
"\n %tnp \"this man\" -- translate and parse" ++
"\n" ++
"\ndt, define_term Name Tree" ++
"\n Add a constant for a tree. The constant can later be called by" ++
"\n prefixing it with '$'. It is not yet usable as a subterm. To see" ++
"\n definitions in scope, use help -defs." ++
"\n prefixing it with '$'. " ++
"\n Restriction: These terms are not yet usable as a subterm. " ++
"\n To see what definitions are in scope, use help -defs." ++
"\n examples:" ++
"\n p -cat=NP \"this man\" | dt tm -- define tm as parse result" ++
"\n l -all $tm -- linearize tm in all forms" ++
@@ -476,6 +479,12 @@ txtHelpFile =
"\n example:" ++
"\n ! ls" ++
"\n" ++
"\n?, system_command: ? String" ++
"\n Issues a system command that receives its arguments from GF pipe" ++
"\n and returns a value to GF." ++
"\n example:" ++
"\n h | ? 'wc -l' | p -cat=Num" ++
"\n" ++
"\n" ++
"\n-- Flags. The availability of flags is defined separately for each command." ++
"\n" ++

View File

@@ -5,9 +5,9 @@
-- Stability : (stable)
-- Portability : (portable)
--
-- > CVS $Date: 2005/10/06 10:02:34 $
-- > CVS $Date: 2005/10/06 14:21:34 $
-- > CVS $Author: aarne $
-- > CVS $Revision: 1.27 $
-- > CVS $Revision: 1.28 $
--
-- parsing GF shell commands. AR 11\/11\/2001
-----------------------------------------------------------------------------
@@ -62,6 +62,7 @@ unquote (x:xs@(_:_)) | x `elem` "\"'" && x == last xs = init xs
unquote s = s
pCommandLine :: HState -> [String] -> CommandLine
pCommandLine st (c@('%':_):args) = pCommandLine st $ resolveShMacro st c args
pCommandLine st (dc:c:def) | abbrevCommand dc == "dc" = ((CDefineCommand c def, noOptions),AUnit,[])
pCommandLine st s = pFirst (chks s) where
pFirst cos = case cos of
@@ -73,7 +74,6 @@ pCommandLine st s = pFirst (chks s) where
chks = map (pCommandOpt st) . chunks "|"
pCommandOpt :: HState -> [String] -> (Command, Options, [CommandArg])
pCommandOpt st (c@('%':_):args) = pCommandOpt st $ resolveShMacro st c args
pCommandOpt _ (w:ws) = let
(os, co) = getOptions "-" ws
(comm, args) = pCommand (abbrevCommand w:co)
@@ -136,6 +136,7 @@ pCommand ws = case ws of
"ps" : s -> aString CPutString s
"st" : s -> aTerm CShowTerm s
"!" : s -> aUnit (CSystemCommand (unwords s))
"?" : s : x -> aString (CSystemCommand (unquote s)) x
"sc" : s -> aUnit (CSystemCommand (unwords s))
"g" : f : s -> aString (CGrep (unquote f)) s