diff options
| author | aarne <unknown> | 2004-05-18 20:57:13 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2004-05-18 20:57:13 +0000 |
| commit | 8963681a3b821e85185877dd61b7804661fc5c24 (patch) | |
| tree | fc2f4dee924cccd3d46c4983d80bc7b9a755ef41 /src/GF/Shell | |
| parent | 086733a6fe03c5065002a8fb414af06c9cf67d51 (diff) | |
peel head i ; gt nometas ; gf2hs
Diffstat (limited to 'src/GF/Shell')
| -rw-r--r-- | src/GF/Shell/CommandL.hs | 2 | ||||
| -rw-r--r-- | src/GF/Shell/Commands.hs | 20 |
2 files changed, 13 insertions, 9 deletions
diff --git a/src/GF/Shell/CommandL.hs b/src/GF/Shell/CommandL.hs index 3fd64dd00..5945dd271 100644 --- a/src/GF/Shell/CommandL.hs +++ b/src/GF/Shell/CommandL.hs @@ -68,7 +68,7 @@ pCommand = pCommandWords . words where "r" : f : _ -> CRefineWithAtom f "w" : f:i : _ -> CWrapWithFun (f, readIntArg i) "ch": f : _ -> CChangeHead f - "ph": _ -> CPeelHead + "ph": f:i : _ -> CPeelHead (f, readIntArg i) "x" : ws -> CAlphaConvert $ unwords ws "s" : i : _ -> CSelectCand (readIntArg i) "f" : "unstructured" : _ -> CRemoveOption showStruct --- hmmm diff --git a/src/GF/Shell/Commands.hs b/src/GF/Shell/Commands.hs index 345e5cd02..25ef5607f 100644 --- a/src/GF/Shell/Commands.hs +++ b/src/GF/Shell/Commands.hs @@ -63,7 +63,7 @@ data Command = | CRefineParse String | CWrapWithFun (String,Int) | CChangeHead String - | CPeelHead + | CPeelHead (String,Int) | CAlphaConvert String | CRefineRandom | CSelectCand Int @@ -206,7 +206,7 @@ execECommand env c = case c of uniqueRefinements cgr s' CWrapWithFun (f,i) -> action2commandNext $ wrapWithFun cgr (qualif f, i) CChangeHead f -> action2commandNext $ changeFunHead cgr (qualif f) - CPeelHead -> action2commandNext $ peelFunHead cgr + CPeelHead (f,i) -> action2commandNext $ peelFunHead cgr (qualif f,i) CAlphaConvert s -> action2commandNext $ \x -> string2varPair s >>= \xy -> alphaConvert cgr xy x @@ -285,12 +285,12 @@ mkRefineMenuAll :: CEnv -> SState -> [(Command,(String,String))] mkRefineMenuAll env sstate = case (refinementsState cgr state, candsSState sstate, wrappingsState cgr state) of ([],[],wraps) -> - [(CWrapWithFun (prQIdent_ f, i), prWrap fit) + [(CWrapWithFun (prQIdent_ f, i), prWrap "w" "Wrap" fit) | fit@((f,i),_) <- wraps] ++ [(CChangeHead (prQIdent_ f), prChangeHead f) | f <- headChangesState cgr state] ++ - [(CPeelHead, (ifShort "ph" "PeelHead", "ph")) - | canPeelState cgr state] ++ + [(CPeelHead (prQIdent_ f, i), prPeel "ph" "PeelHead" fi) + | fi@(f,i) <- peelingsState cgr state] ++ [(CDelete, (ifShort "d" "Delete", "d"))] ++ [(CAddClip, (ifShort "ac" "AddClip", "ac"))] (refs,[],_) -> @@ -309,10 +309,14 @@ mkRefineMenuAll env sstate = prChangeHead f = (ifShort "ch" "ChangeHead" +++ prOrLinFun f, "ch" +++ prQIdent_ f) - prWrap ((f,i),t) = - (ifShort "w" "Wrap" +++ prOrLinFun f +++ ifTyped (":" +++ prt t) +++ + prWrap sh lg ((f,i),t) = + (ifShort sh lg +++ prOrLinFun f +++ ifTyped (":" +++ prt t) +++ ifShort (show i) (prBracket (show i)), - "w" +++ prQIdent_ f +++ show i) + sh +++ prQIdent_ f +++ show i) + prPeel sh lg (f,i) = + (ifShort sh lg +++ prOrLinFun f +++ + ifShort (show i) (prBracket (show i)), + sh +++ prQIdent_ f +++ show i) prCand (t,i) = (ifShort ("s" +++ prOrLinExp t) ("Select" +++ prOrLinExp t),"s" +++ show i) |
