Skip to content

Conversation

@AndreM222
Copy link

What is it

I am bringing the capability for all the UI and prints to be translated depending on your neovim configuration. Meaning if you where using Japanese, then if a Japanese translation exists, then it will translate the output in the UI.

Story

Since I was learning Japanese, I adventured to make my own dotfile to have internationalization for other users to not get affected by the translations since I wanted to keep using the language so I wouldn't forget what I was taught.

But as I kept using it and searched neovim stuff in Japanese, I noticed that there is a number of people which still are not proficient in english and struggle using many of the plugins.

So I decided to translate many plugins UI, but more specifically add translations capabilities for the whole community to add their own language and open the doors to the whole world.

What is included

  • Capability of translation
  • Auto generator of translation PO's
  • Japanese
  • Runs the tests in english by default so no breaks will happen due to different terminal language
  • Portable

Tests

It passed all the tests

Preview

Japanese

スクリーンショット 2025-06-24 17 59 11 スクリーンショット 2025-06-24 17 59 59

English

スクリーンショット 2025-06-24 18 00 32 スクリーンショット 2025-06-24 18 00 42

@shadmansaleh
Copy link
Member

I don't think you're supposed to have the built files in the pr. +4k change for this, I don't see that being the direction for lualine. Also internationalization is interesting. But it's hard to maintain since I don't really know Japanese.. And people may want more and more languages. For a small plugin like lualine I don't see that to be the direction.

@AndreM222
Copy link
Author

I don't think you're supposed to have the built files in the pr. +4k change for this, I don't see that being the direction for lualine. Also internationalization is interesting. But it's hard to maintain since I don't really know Japanese.. And people may want more and more languages. For a small plugin like lualine I don't see that to be the direction.

I understand, and you’re right that Lualine is a small plugin — but it’s also one of the most widely used ones in the community. Its simplicity and usefulness are exactly why I thought it could be a good starting point for introducing internationalization.

Tip

I also agree that maintaining translations can be difficult, but it doesn’t necessarily have to fall on the core maintainers. The community could help by contributing translations for their own languages.

To make that easier, I wrote a small CMake script that automatically collects new strings and generates the necessary PO files for any new language. That way, contributors can easily add or update translations without adding maintenance overhead for you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants