All Projects → moigagoo → loco

moigagoo / loco

Licence: MIT license
Loco: Localization Package for Nim Apps

Programming Languages

nim
578 projects

Projects that are alternatives of or similar to loco

Flutter.cn
Flutter CN docs translation plan, get started from the wiki: https://github.com/cfug/flutter.cn/wiki
Stars: ✭ 213 (+965%)
Mutual labels:  localization
Iscloam
Intensity Scan Context based full SLAM implementation for autonomous driving. ICRA 2020
Stars: ✭ 232 (+1060%)
Mutual labels:  localization
React Native Globalize
Internationalization (i18n) for React Native
Stars: ✭ 246 (+1130%)
Mutual labels:  localization
Language Manager Ios
Language Manager iOS
Stars: ✭ 222 (+1010%)
Mutual labels:  localization
Lang.js
🎭 Laravel Translator class in JavaScript!
Stars: ✭ 232 (+1060%)
Mutual labels:  localization
Counterpart
A translation and localization library for Node.js and the browser.
Stars: ✭ 239 (+1095%)
Mutual labels:  localization
Flutter sheet localization
Generate Flutter localization from a simple online Google Sheets.
Stars: ✭ 212 (+960%)
Mutual labels:  localization
koi
Immediate mode UI for Nim
Stars: ✭ 27 (+35%)
Mutual labels:  nim-lang
L10ns
Internationalization workflow and formatting
Stars: ✭ 234 (+1070%)
Mutual labels:  localization
Flutter translate
Flutter Translate is a fully featured localization / internationalization (i18n) library for Flutter.
Stars: ✭ 245 (+1125%)
Mutual labels:  localization
Languagetest
Changing the language on Android
Stars: ✭ 223 (+1015%)
Mutual labels:  localization
Laravel Auth
Laravel 8 with user authentication, registration with email confirmation, social media authentication, password recovery, and captcha protection. Uses offical [Bootstrap 4](http://getbootstrap.com). This also makes full use of Controllers for the routes, templates for the views, and makes use of middleware for routing. The project can be stood u…
Stars: ✭ 2,692 (+13360%)
Mutual labels:  localization
Laravel Multilingual Routes
A package to handle multilingual routes in your Laravel application.
Stars: ✭ 241 (+1105%)
Mutual labels:  localization
Iris lama
LaMa - A Localization and Mapping library
Stars: ✭ 217 (+985%)
Mutual labels:  localization
Localize
Localize is a framework writed in swift to localize your projects easier improves i18n, including storyboards and strings.
Stars: ✭ 253 (+1165%)
Mutual labels:  localization
Serge
Continuous localization platform
Stars: ✭ 212 (+960%)
Mutual labels:  localization
Tonav
Implementation of Multi-State Constraint Kalman Filter (MSCKF) for Vision-aided Inertial Navigation. This is my master's thesis.
Stars: ✭ 235 (+1075%)
Mutual labels:  localization
opensource
Collection of Open Source packages by Otherwise
Stars: ✭ 21 (+5%)
Mutual labels:  localization
Localization.AspNetCore.TagHelpers
Asp.Net Core Tag Helpers to use when localizing Asp.Net Core application instead of manually injecting IViewLocator
Stars: ✭ 25 (+25%)
Mutual labels:  localization
Ttag
📙 simple approach for javascript localization
Stars: ✭ 243 (+1115%)
Mutual labels:  localization

Loco: Localization Package for Nim

Build Status Nimble

Loco helps localize Nim apps. Uses classic declaratively defined "zero-one-few-many" language variables, but thanks to Nim's superpowers, you also have code completion and compilation checks for language variables.

Quickstart

  1. Install Loco with Nimble:
$ nimble install loco
  1. Define localizations with loco macro:
# en_US.nim

import loco

loco en:
  hello: "hello"
  users:
    zero: "no users"
    one: "{n} user"
    many: "{n} users"

Argument en is the name of a pluralizer. Pluralizer is a module in loco that defines pluralization rules for a particural language.

  1. Use them in your code as regular functions:
# app.nim

import en_US

echo hello() & " world"     # → "hello world"
echo "there's " & 0.users   # → "there's no users"
echo "there's " & 1.users   # → "there's 1 user"
echo "there's " & 12.users  # → "there's 12 users"

Contributing

Any contributions are welcome, be it pull requests, code reviews, documentation improvements, bug reports, or feature requests.

If you decide to contribute through code, please run the tests after you change the code:

$ docker-compose run tests                  # run all tests in Docker
$ docker-compose run test tests/testen.nim  # run a single test suite in Docker
$ nimble test                               # run all tests natively
$ nim c -r tests/testen.nim                 # run a single test suite natively

Contributors

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].