コード例 #1
0
ファイル: xmpp_commands.py プロジェクト: ga2arch/skyscraper
 def _translate_in_all_languages(self, language_o, words):
     for language in Language.list_all_languages().split('\n'):
         try:
             t = Translate(Language(language_o.upper()), Language(language))
             t.translate(words.encode('utf-8')).addCallback(self._success, jid, prot, language) \
                                               .addErrback(self._error, jid, prot) 
         except Exception:
             pass
コード例 #2
0
    def get(self):
        for m in Language.all():
            m.delete()
        for m in Phrase.all():
            m.delete()
        for m in Translation.all():
            m.delete()

        LANGUAGES = [
            (u'en_US', u'English'),
            (u'sv_SE', u'Svenska'),
            (u'ro_SE', u'Rövarspråket'),
            (u'fi_FI', u'Suomi'),
        ]
        for lang in LANGUAGES:
            m = Language(code=lang[0], label=lang[1], enabled_on_site=True, enabled_in_tool=True)
            m.put()

        self.response.headers['Content-Type'] = 'text/plain'

        for lang_code in old_translations:
            diff = set(old_translations['en_US'].keys()) - set(old_translations[lang_code].keys());
            #logging.info("Diff for %s is %s" % (lang_code, diff))
            self.response.out.write("Diff for %s is %s\n\n" % (lang_code, diff))
            language = Language.all().filter('code =', lang_code).get()
            for i in old_translations[lang_code].items():
                text = i[0]
                translation = i[1]
                p = Phrase.all().filter('text =', text).get()
                if p is None:
                    p = Phrase(text=text)
                    p.put()
                if translation:
                    t = Translation(phrase=p, text=translation)
                    t.put()
                    language.translations.append(t.key())
                    language.save()

        init_cached_languages()
        init_cached_translations()
コード例 #3
0
def process_file(table, options, language_stats, totals, filename, stream):
    lang = Language.from_filename(filename)

    if not lang:
        return False
    
    result = count_file(stream, lang)
    
    add_results(totals, result)
    
    if options.by_language:
        if lang not in language_stats:
            language_stats[lang] = Result()
            
        add_results(language_stats[lang], result)
    else:
        print_result_set(table, filename, result)

    return True
コード例 #4
0
    def get(self):
        for m in Language.all():
            m.delete()
        for m in Phrase.all():
            m.delete()
        for m in Translation.all():
            m.delete()

        LANGUAGES = [
            (u'en_US', u'English'),
            (u'sv_SE', u'Svenska'),
            (u'ro_SE', u'Rövarspråket'),
            (u'fi_FI', u'Suomi'),
        ]
        for lang in LANGUAGES:
            m = Language(code=lang[0],
                         label=lang[1],
                         enabled_on_site=True,
                         enabled_in_tool=True)
            m.put()

        self.response.headers['Content-Type'] = 'text/plain'

        for lang_code in old_translations:
            diff = set(old_translations['en_US'].keys()) - set(
                old_translations[lang_code].keys())
            #logging.info("Diff for %s is %s" % (lang_code, diff))
            self.response.out.write("Diff for %s is %s\n\n" %
                                    (lang_code, diff))
            language = Language.all().filter('code =', lang_code).get()
            for i in old_translations[lang_code].items():
                text = i[0]
                translation = i[1]
                p = Phrase.all().filter('text =', text).get()
                if p is None:
                    p = Phrase(text=text)
                    p.put()
                if translation:
                    t = Translation(phrase=p, text=translation)
                    t.put()
                    language.translations.append(t.key())
                    language.save()

        init_cached_languages()
        init_cached_translations()
コード例 #5
0
import sys
from os.path import dirname, join, abspath
sys.path.insert(0, abspath(join(dirname(__file__), '..')))
from languages import Language

from base import Base, Session, engine
Base.metadata.create_all(engine)
session = Session()

languages = [{
    "name": "English",
    "id": "en"
}, {
    "name": "Hindi",
    "id": "hi"
}, {
    "name": "Malayalam",
    "id": "ml"
}]

for l in languages:
    v = Language(name=l['name'], code=l['id'])
    session.add(v)
    session.commit()
コード例 #6
0
ファイル: kwrl_build.py プロジェクト: kwrl/kwrl_build
                    makedirs(dst)
                else:
                    os.remove(dst)

            if os.path.isdir(src):
                make_css(src, theme, dst)
            else:
                if asset.endswith('.css'):
                    with codecs.open(src,"r", "utf-8") as src_fh, \
                            codecs.open(dst, "w", "utf-8") as dst_fh:
                        template = string.Template(src_fh.read())
                        dst_fh.write(template.substitute(theme.css_variables))
                else:
                    shutil.copy(src, output_dir)

THEMES = Theme.load_themes(theme_base)
LANGUAGES = Language.load_languages(language_base)

if __name__ == '__main__':
    args = sys.argv[1::]
    if len(args) < 3:
        print_error("usage: %s <region> <input repository directories> <output directory>")
        sys.exit(-1)
    theme = THEMES[args[0]]
    languages = LANGUAGES
    args = [os.path.abspath(a) for a in args[1:]]
    repositories, output_dir = args[:-1], args[-1]
    build(repositories, theme, languages, output_dir)
    sys.exit(0)

コード例 #7
0
        default=[scripture.value for scripture in ScriptureType],
        help=
        "list of scriptures to download; allowed values: bofm, dc-testament, pgp",
    )
    parser.add_argument("-o",
                        "--overwrite",
                        action="store_true",
                        help="overwrite files if they exist")
    parser.add_argument(
        "-t",
        "--threads",
        type=int,
        default=30,
        help="number of threads to download in parallel",
    )
    parser.add_argument("destination", help="path to save JSON files")
    args = parser.parse_args()

    pool = concurrent.futures.ThreadPoolExecutor(max_workers=args.threads)
    languages = [Language(lang) for lang in args.languages]
    scriptures = [ScriptureType(scripture) for scripture in args.scriptures]
    overwrite = args.overwrite
    output_dir = pathlib.Path(args.destination)
    main(
        scriptures=scriptures,
        languages=languages,
        output_dir=output_dir,
        pool=pool,
        overwrite=overwrite,
    )
コード例 #8
0
    parser.add_argument("--language", default = 'en',
                        help = 'the corpus language (en, de, ...)')
    parser.add_argument('-p', '--plot', action="store_true",
                        help = 'provide a bar plot of the results')
    parser.add_argument("--version", action='version',
                        version='%(prog)s version ' + __version__,
                        help = 'output version information and exit')
    parser.add_argument("file", nargs='*',
                        help = 'the file(s) to process')
    args = parser.parse_args()

    # initialize the language object (language of the corpus
    # determines number separators (1,000 vs. 1.000), assume English
    # if not given
    try:
        language = Language.create(args.language)
    except LookupError:
        print("error: language \"{}\" is not supported.".
              format(args.language), file=sys.stderr)
        sys.exit(1)

    # now do the processing ...
    processor = Processor(language, min=args.min, max=args.max)
    processor.verbosity = 2
    if not args.file:
        processor.processFile(sys.stdin)
    for name in args.file:
        if name == '-':
            processor.processFile(sys.stdin)
            continue