Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/opral/inlang-sherlock
Issue tracker for Sherlock
https://github.com/opral/inlang-sherlock
i18n inlang l10n localization vscode vscode-extension
Last synced: 1 day ago
JSON representation
Issue tracker for Sherlock
- Host: GitHub
- URL: https://github.com/opral/inlang-sherlock
- Owner: opral
- Created: 2024-03-12T14:28:28.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-03-12T16:39:29.000Z (8 months ago)
- Last Synced: 2024-05-17T16:22:10.157Z (6 months ago)
- Topics: i18n, inlang, l10n, localization, vscode, vscode-extension
- Homepage: https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension
- Size: 13.7 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Sherlock โ i18n inspector for Visual Studio Code
> The code of this project is in the monorepo [https://github.com/opral/monorepo/tree/main/inlang/source-code/ide-extension](https://github.com/opral/monorepo/tree/main/inlang/source-code/ide-extension)
โ Streamline the i18n translation process.
โ Visualize, edit, and lint translations.
โ Extract new translations with a simple click.
# Installation
Install the extension: https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension
# Getting Started
1. Add a `project.inlang` folder to your repository
2. Create a `settings.json` file to that new dir `project.inlang/settings.json`
3. Install a plugin that reads and writes your messages from the [inlang marketplace](https://inlang.com/c/plugins)
4. Install a installing a syntax matcher/function matcher from the [inlang marketplace](https://inlang.com/c/plugins)
---
1. **Optional**: Install lint rules to find errors in your translations from the [inlang marketplace](https://inlang.com/c/lint-rules)## Manage Translations directly from your Code
See translations and edit them directly in your code. No more back-and-forth looking into the translation files themselves.
๐ Inline Annotations
See translations directly in your code. No more back-and-forth looking into the translation files themselves.
โ๏ธ Extract Messages (translations)
Extract new strings with a simple click, making localization tasks more intuitive and efficient. Visualize, edit, and lint translated strings effortlessly using Inline Decorations & Hover Support.
โ Message Linting
Get notified about missing translations and other issues directly in your IDE.
## Inlang Tab - Transparent & Fast
๐ฆ Monorepo support
You can have multiple projects in your repository. The inlang tab makes it easy to switch from one to another.
๐ Update Translations
Translations from the resource files are automatically updated when you change the source text.
โ Transparent Errors
In the tab menu, you can see project errors if the setup is broken.
## Quick start
Install the extension and click `Getting Started` in the `Inlang Tab`.
### Manual setup
#### 1. Create a `project.inlang/settings.json` in the **root** of your project
You can use the following template when using JSON files as translation files. If not, please look for other [supported resource file types](https://inlang.com/):
```json
{
// official schema ensures that your project file is valid
"$schema": "https://inlang.com/schema/project-settings",
// the "source" language tag that is used in your project
"sourceLanguageTag": "en",
// all the language tags you want to support in your project
"languageTags": ["en", "de"],
"modules": [
"https://cdn.jsdelivr.net/npm/@inlang/plugin-json@4/dist/index.js"
], // or use another storage module: https://inlang.com/c/plugins (i18next, json, inlang message format)
"settings": {}
}
```#### 2. Decide on a **syntax matcher**
You should continue with **installing a syntax matcher**. There are multiple syntax matcher available:
- m function matcher: https://inlang.com/m/632iow21/plugin-inlang-mFunctionMatcher
- t function matcher: https://inlang.com/m/698iow33/plugin-inlang-tFunctionMatcher
- *if you are using the i18next module, everything is already built-in*#### 3. โจ Recommended
If you want to add lint rules to your experience, you can add them from https://inlang.com/c/lint-rules
#### Requirements:
- VS Code version 1.84.0 or higher.
- Node.js version v18 or higher.#### Troubleshooting
If you are having trouble with the **loading icon** not disappearing, this is a known issue & we are working with Visual Studio Code to fix it. In the meantime, you can right-click the Inlang icon to hide it:
## Support: Join our Discord / Open an issue on GitHub!
If something isn't working as expected or you have a feature suggestion, please join our [Discord](https://discord.gg/DEHKgmx2) or [create an issue](<[https](https://github.com/opral/monorepo/issues/new/choose)>). We are happy to help!
.flex-container {
display: flex;
flex-wrap: wrap;
align-items: center;
}
.flex-item {
width: 100%;
}
@media (min-width: 600px) {
.flex-item {
width: calc(50% - 16px); /* Two columns with a small gap between them */
margin-bottom: 0;
padding: 0 8px;
}
}
.flex-item .bold {
font-weight: bold;
font-size: 20px;
}