Giter Site home page Giter Site logo

kimwash / easy-i18n Goto Github PK

View Code? Open in Web Editor NEW

This project forked from marhali/easy-i18n

0.0 0.0 0.0 1.29 MB

This is a IntelliJ IDE based plugin for internationalization. Supports the most common translation file types.

License: MIT License

Java 98.22% Kotlin 1.78%

easy-i18n's Introduction

Build Version Downloads Donate


This is a plugin for easier management of translation files for projects that need to be translated into different languages. Translating large projects has never been so easy with your favorite IDE!

This plugin can be used for any project based on one of the formats and structures listed below.

Features

  • UI Tool-Window which supports tree-view and table-view
  • Easily Add / Edit / Delete translations
  • Filter all translations with full-text-search support
  • Editor Assistance: translation intention, completion-contributor, key-annotation and -folding
  • Translation key sorting and nesting can be configured
  • Extensive configuration options: locales directory, preferred locale, key delimiters
  • Missing language translations will be indicated red
  • Automatically reloads translation data if any locale file was changed

Builtin Support

File Types

JSON - JSON5 - YAML - Properties

Folder Structure

  • Single Directory: All translation files are within one directory
  • Modularized (Locale \ Namespace)
  • Modularized (Namespace \ Locale)

Language Support

JavaScript / TypeScript - Vue - Java - Kotlin - PHP

Installation

  • Using IDE built-in plugin system:

    Settings/Preferences > Plugins > Marketplace > Search for "easy-i18n" > Install Plugin

  • Manually:

    Download the latest release and install it manually using Settings/Preferences > Plugins > ⚙️ > Install plugin from disk...

Configuration

  • Install plugin. See Installation section
  • Create a directory that will contain all translation files
  • Create your individual translation files (e.g. en.json, de.json). See examples if you need assistance.
  • Click on the Settings action inside the EasyI18n Tool-Window (View > Tool Windows > Easy I18n)
  • Specify locales directory
  • Select folder structure and file parser to apply to your translation files
  • Translations can now be created / edited or deleted

Screenshots

Tree View TableView KeyCompletion KeyAnnotation KeyEdit Settings

For more examples, please refer to the Examples Directory.

Roadmap

  • JSON5 Support
  • Configurable namespace and section separators
  • Define default namespace to use if none was provided
  • Enhance editor code assistance
  • XML Support
  • Mark duplicate translation values
  • Python language assistance

See the open issues for a full list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Marcel Haßlinger - @marhali_de - Portfolio Website

Project Link: https://github.com/marhali/easy-i18n

Donation

If the project helps you to reduce development time, you can give me a cup of coffee :)


Plugin based on the IntelliJ Platform Plugin Template.

easy-i18n's People

Contributors

marhali avatar actions-user avatar dependabot[bot] avatar sunarya-thito avatar simulatan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.