def recode(args): """Assign a new glottocode to an existing languoid. glottolog recode <code> """ lang = find_languoid(glottocode=args.args[0]) if not lang: raise ParserError('languoid not found') lang.id = Glottocode.from_name(lang.name) new_dir = lang.dir.parent.joinpath(lang.id) copytree(lang.dir, new_dir) lang.write_info(new_dir) remove(new_dir.joinpath('%s.ini' % args.args[0])) rmtree(lang.dir) print("%s -> %s" % (args.args[0], lang.id))
def test_find_languoid(self): from pyglottolog.languoids import find_languoid self.assertEqual( find_languoid(tree=self.tree, glottocode='abcd1234').name, 'family')