diff options
author | Patrick Simianer <p@simianer.de> | 2013-12-05 07:56:38 +0100 |
---|---|---|
committer | Patrick Simianer <p@simianer.de> | 2013-12-05 07:56:38 +0100 |
commit | db6a6ecfa350cae29739c59df1210d8f76a479c9 (patch) | |
tree | f137a001f57f170455c28ce97b5abb2726006cf6 /rule_shapes |
init
Diffstat (limited to 'rule_shapes')
-rwxr-xr-x | rule_shapes | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/rule_shapes b/rule_shapes new file mode 100755 index 0000000..039b0dc --- /dev/null +++ b/rule_shapes @@ -0,0 +1,29 @@ +#!/usr/bin/env ruby + +STDIN.set_encoding 'utf-8' +STDOUT.set_encoding 'utf-8' + +def shape s + res = [] + in_t = false + s.split.each { |i| + if i.match /\A\[X,\d\]\z/ + if in_t + in_t = false + end + res << "NT" + next + else + res << "T" if not in_t + in_t = true + end + } + return res +end + +while line = STDIN.gets + f,e = line.split "\t" + f.strip!; e.strip! + puts shape(f).join('_')+"-"+shape(e).join('_') +end + |