Skip to content

Commit

Permalink
Merge pull request #2288 from opral/vs-code-extension-renaming-to-she…
Browse files Browse the repository at this point in the history
…rlock

visual studio code extension renaming to sherlock
  • Loading branch information
felixhaeberle authored Feb 27, 2024
2 parents 29b0f6d + 6ead052 commit 2bfe3e5
Show file tree
Hide file tree
Showing 40 changed files with 100 additions and 79 deletions.
12 changes: 12 additions & 0 deletions .changeset/happy-walls-accept.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
"@inlang/plugin": patch
"@inlang/plugin-m-function-matcher": patch
"@inlang/plugin-t-function-matcher": patch
"@inlang/paraglide-js": patch
"@inlang/plugin-next-intl": patch
"@inlang/plugin-i18next": patch
"vs-code-extension": patch
"@inlang/plugin-json": patch
---

rename the vscode extension to "Sherlock"
6 changes: 3 additions & 3 deletions .github/workflows/publish-ide-extension.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Publish ide extension
name: Publish Sherlock (VS Code extension)

on:
workflow_dispatch:
Expand Down Expand Up @@ -46,12 +46,12 @@ jobs:
env:
DOPPLER_TOKEN: ${{ secrets.DOPPLER_PRODUCTION_ENV_TOKEN }}

- name: Build VSCode extension package
- name: Build Visual Studio Code extension (Sherlock) package
run: doppler run -- pnpm --filter vs-code-extension package
env:
DOPPLER_TOKEN: ${{ secrets.DOPPLER_PRODUCTION_ENV_TOKEN }}

- name: Publish to VSCode Marketplace
- name: Publish to Visual Studio Code Marketplace
run: pnpm --filter vs-code-extension run publish -p ${{secrets.VSCODE_MARKETPLACE_TOKEN}}
working-directory: ./inlang/source-code/ide-extension
env:
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -305,7 +305,7 @@ dist
# TernJS port file
.tern-port

# Stores VSCode versions used for testing VSCode extensions
# Stores Visual Studio Code versions used for testing Visual Studio Code extension (Sherlock)s
.vscode-test

# yarn v2
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ To work on Windows, you will need to [change](https://pnpm.io/cli/run#script-she
## Debugging

1. Run `doppler run -- pnpm dev`.
2. Several debug launch configs can be found in the VSCode side menu. Select the correct one depending on the subject of your contribution and launch Debug mode.
2. Several debug launch configs can be found in the Visual Studio Code side menu. Select the correct one depending on the subject of your contribution and launch Debug mode.

## Tips for running tests locally

Expand Down
2 changes: 1 addition & 1 deletion inlang/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
**inlang is a whole ecosystem** of building blocks for your globalization (internationalization / i18n) efforts with the goal of helping companies enter new markets in no time. For example:

- use [inlang Paraglide.js](https://inlang.com/m/gerre34r/library-inlang-paraglideJs) to have a fully translated, typesafe & fast app in minutes
- use the [inlang VSCode extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension) to translate your app right in the editor
- use the [inlang Visual Studio Code extension (Sherlock)](https://inlang.com/m/r7kp499g/app-inlang-ideExtension) to translate your app right in the editor
- use the [inlang Fink](https://inlang.com/m/tdozzpar/app-inlang-finkLocalizationEditor) to translate your app in the browser & invite collaborators to help you
- use the [inlang CLI](https://inlang.com/m/2qj2w8pu/app-inlang-cli) to lint your messsages with lint rules or machine translate them & have quality control in CI/CD
- *build your own app / plugin / lint rule* with the [inlang SDK](https://inlang.com/documentation)
Expand Down
2 changes: 1 addition & 1 deletion inlang/blog/inlang-refactor.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
- Realtime linting and message update
- Autosaving for faster workflows

## VS Code Extension
## Visual Studio Code extension (Sherlock)

- Faster startup time & Realtime linting and message update
- Auto migration of inlang.config.js to project.inlang.json
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,11 +66,11 @@ The default path for translation files are `./messages/{lang}.json`. You can cha
You can add messages in two ways:

1. Manually editing the translation files
2. Using the [inlang IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)
2. Using [Sherlock (VS Code extension)](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)

### Add messages through ide extension (recommended)
### Add messages through Sherlock (VS Code extension) - recommended

- Install the ide extension from the vs-code marketplace.
- Install the Sherlock (VS Code extension) from the VS Code marketplace.
[See extension on inlang.com](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)
[vs-code marketplace](https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,11 @@ The default path for translation files are `./messages/{lang}.json`. You can cha
You can add messages in two ways:

1. Manually editing the translation files
2. Using the [inlang IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)
2. Using [Sherlock (VS Code extension)](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)

### Add messages through ide extension (recommended)
### Add messages through Sherlock (VS Code extension) - recommended

- Install the ide extension from the vs-code marketplace.
- Install the Sherlock (VS Code extension) from the VS Code marketplace.
[See extension on inlang.com](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)
[vs-code marketplace](https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ The default path for translation files is `./messages/{lang}.json`. You can chan
You can add messages in two ways:

1. Manually editing the translation files
2. Using the [inlang IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)
2. Using [Sherlock (VS Code extension)](https://inlang.com/m/r7kp499g/app-inlang-ideExtension)

## Using Messages

Expand Down Expand Up @@ -125,7 +125,7 @@ import { languageTag } from "../paraglide/runtime.js"
That's it. The message functions will now return the correct language on the client and the server.

## Translating the Page Shell
Now it's really just a matter of going through your app and extracting any hard-coded strings into messages. This is easiest to do with the [inlang IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension).
Now it's really just a matter of going through your app and extracting any hard-coded strings into messages. This is easiest to do with [Sherlock (VS Code extension)](https://inlang.com/m/r7kp499g/app-inlang-ideExtension).

Then you just import the messages and use them in your components.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ export default function Home() {

You should now see the message "Hello World!" on your homepage!

> Note: If you are using VSCode, you should install the [inlang IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension). It will give you inline previews of messages and allow you to edit them right in your source code.
> Note: If you are using Visual Studio Code, you should install [Sherlock (VS Code extension)](https://inlang.com/m/r7kp499g/app-inlang-ideExtension). It will give you inline previews of messages and allow you to edit them right in your source code.
## Adding more languages

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ export default function Home() {

You should now see the message "Hello World!" on your homepage!

> Note: If you are using VSCode, you should install the accompanying [IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension). It will give you inline message previews & allow you to edit them right from your code.
> Note: If you are using Visual Studio Code, you should install the accompanying [IDE Extension](https://inlang.com/m/r7kp499g/app-inlang-ideExtension). It will give you inline message previews & allow you to edit them right from your code.
## Adding more languages

Expand Down
4 changes: 2 additions & 2 deletions inlang/rfcs/core-architecture/RFC.md
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@ import Translated from 'i18n-library';

#### Decision

Develop a CLI and VSCode extension to extract and validate resources and messages.
Develop a CLI and Visual Studio Code extension (Sherlock) to extract and validate resources and messages.

{% Figure
src="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/rfcs/core-architecture/assets/001-ide-extension.gif"
Expand Down Expand Up @@ -274,7 +274,7 @@ Single-user editors are displaced by cloud-based editors for _simple_ string loc

#### Proposal

A git-based editor that combines the collaboration of cloud-based solutions with the simplicity of a local-first solution. Think of a combination of Figma and VSCode: VSCode brings out-of-the-box git and local file support while Figma brings ease of use to the table by running in the browser. A working proof of concept can be found [here](https://inlang-web-app-demo-5kw9a.ondigitalocean.app/git/https://github.com/inlang/demo/in-editor).
A git-based editor that combines the collaboration of cloud-based solutions with the simplicity of a local-first solution. Think of a combination of Figma and Visual Studio Code: Visual Studio Code brings out-of-the-box git and local file support while Figma brings ease of use to the table by running in the browser. A working proof of concept can be found [here](https://inlang-web-app-demo-5kw9a.ondigitalocean.app/git/https://github.com/inlang/demo/in-editor).

##### Pros

Expand Down
2 changes: 1 addition & 1 deletion inlang/rfcs/git-sdk-requirements/RFC.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ The inlang editor currently uses the git JS implementation. The JS implementatio

### Not coupled to the browser [High Confidence]

The git-sdk must run on the server, in a VSCode extension, in CI/CD, in the browser. In short, everywhere.
The git-sdk must run on the server, in a Visual Studio Code extension (Sherlock), in CI/CD, in the browser. In short, everywhere.

The model to run the git-sdk everywhere is simple: have a filesystem. All environments except for the browser have a filesystem concept. Thus, we need to build a filesystem implementation for the browser.

Expand Down
6 changes: 3 additions & 3 deletions inlang/rfcs/tech-stack/RFC.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,17 +42,17 @@ Markdown: [Markdoc](https://markdoc.dev/)
- One-click "ready to use" ✅
- Compatible with local and remote files ❔

The requirements above resemble a fusion of VSCode and Figma. VSCode due to the tight git integration that localization of software requires, and Figma due to the browser-based architecture. Figma does not need to be downloaded, installed and opened. Open a link in the browser and get started. A similar "one click ready to use" experience is desired for the inlang editor. VSCode recently released their effort to bring VSCode into the browser, see https://vscode.dev/. VSCode.dev brings another feature that the inlang editor requires: Local repositories and remote repositories can be used. Local repositories would allow developers to easily use the inlang editor, while remote repositories would make life easy for translators.
The requirements above resemble a fusion of Visual Studio Code and Figma. Visual Studio Code due to the tight git integration that localization of software requires, and Figma due to the browser-based architecture. Figma does not need to be downloaded, installed and opened. Open a link in the browser and get started. A similar "one click ready to use" experience is desired for the inlang editor. Visual Studio Code recently released their effort to bring Visual Studio Code into the browser, see https://vscode.dev/. Visual Studio Code.dev brings another feature that the inlang editor requires: Local repositories and remote repositories can be used. Local repositories would allow developers to easily use the inlang editor, while remote repositories would make life easy for translators.

- Real-time collaboration ❔

Git's async collaboration features are expected to be sufficient for the start. Product usage and feedback will reveal whether real-time collaboration is required.

- Embeddable ❔

Making the editor embeddable, like Microsoft's Monaco that powers VSCode could lead to interesting usecases.
Making the editor embeddable, like Microsoft's Monaco that powers Visual Studio Code could lead to interesting usecases.

For example, integrating the editor into an IDE or text editor like VSCode could streamline the experience for developers by removing the requirement for app/context switching. Furthermore, the editor could work with local repositories, removing the requirement for a backend entirely. Leveraging PWA (Progressive Web Application) features can achieve full offline support.
For example, integrating the editor into an IDE or text editor like Visual Studio Code could streamline the experience for developers by removing the requirement for app/context switching. Furthermore, the editor could work with local repositories, removing the requirement for a backend entirely. Leveraging PWA (Progressive Web Application) features can achieve full offline support.

Reasons against embeddability include runtime-dependent features like networking, web worker support, and more. For the sake of increasing development speed, embeddability is not focused on, but accounted for by the architecture. The metaframework vike allows the unbundling of the editor from a monolith architecture.

Expand Down
12 changes: 6 additions & 6 deletions inlang/source-code/ide-extension/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@

### Minor Changes

- b3090c279: fix env issues in vscode extension
- b3090c279: fix env issues in Visual Studio Code extension (Sherlock)

## 1.31.0

Expand Down Expand Up @@ -258,7 +258,7 @@

### Minor Changes

- 82ccb9e80: add quote stripping to extract messages in vs code extension
- 82ccb9e80: add quote stripping to extract messages in Visual Studio Code extension (Sherlock)
- cc3c17d8a: add resolve string escape for inline preview

## 1.20.0
Expand All @@ -271,7 +271,7 @@

### Minor Changes

- change logo of vs code extension
- change logo of Visual Studio Code extension (Sherlock)

## 1.18.0

Expand Down Expand Up @@ -358,7 +358,7 @@

### Minor Changes

- 9df069d11: quickfix: vs code extension config create
- 9df069d11: quickfix: Visual Studio Code extension (Sherlock) config create

## 1.6.0

Expand Down Expand Up @@ -520,9 +520,9 @@

### Minor Changes

- 9cd701a3: The VSCode extension should now work for the majority of projects.
- 9cd701a3: The Visual Studio Code extension (Sherlock) should now work for the majority of projects.

We fixed a problem that blocked the VSCode extension for months. The extension transpiles ESM under the hood to CJS now because Electron, and thus VSCode, do not support ESM.
We fixed a problem that blocked the Visual Studio Code extension (Sherlock) for months. The extension transpiles ESM under the hood to CJS now because Electron, and thus Visual Studio Code, do not support ESM.

## 0.5.9

Expand Down
14 changes: 7 additions & 7 deletions inlang/source-code/ide-extension/MARKETPLACE.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
[<img width="256px" height="auto" alt="VSCode install badge" src="https://cdn.jsdelivr.net/gh/opral/monorepo@latest/inlang/assets/marketplace/vscode-install-badge.svg" />](https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension)
[<img width="256px" height="auto" alt="Visual Studio Code install badge" src="https://cdn.jsdelivr.net/gh/opral/monorepo@latest/inlang/assets/marketplace/vscode-install-badge.svg" />](https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension)

<doc-image src="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/ide-extension-cover-small.png" alt="inlang VS Code extension header image"></doc-image>
<doc-image src="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/sherlock-cover-small.png" alt="Visual Studio Code extension (Sherlock) header image"></doc-image>

# Superchange your i18n dev workflow
# 🕵️‍♂️ i18n inspector for VS Code

#### Used by developers from:
<doc-proof organisations="calcom, appflowy, openassistant, listmonk, jitsi"></doc-proof>

<br />

Supercharge i18n within VS Code with powerful tools designed to streamline the translation process. Visualize, edit, and lint translated strings effortlessly using Inline Decorations & Hover Support. Extract new strings with a simple click, making localization tasks more intuitive and efficient.
Inspect i18n within VS Code with powerful tools designed to streamline the translation process. Visualize, edit, and lint translated strings effortlessly using Inline Decorations & Hover Support. Extract new strings with a simple click, making localization tasks more intuitive and efficient.

[Inlang](https://inlang.com) is a powerful [open-source](https://github.com/opral/monorepo/tree/main/inlang/source-code/ide-extension) extension for [Visual Studio Code](https://code.visualstudio.com/)

Expand All @@ -28,9 +28,9 @@ View translations within your code, extract new strings with a simple click, and
You can have multiple projects in your repository. By using the inlang tab, it's easy to switch between projects. Whenever you change the source text, translations from the resource files will be automatically updated. Additionally, the tab menu provides a quick overview of any project errors in the setup.

<doc-features>
<doc-feature text-color="#000000" color="#F7FAFC" title="Monorepo support" image="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/ide-monorepo-small.png"></doc-feature>
<doc-feature text-color="#000000" color="#F7FAFC" title="Update Translations" image="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/ide-update-small.png"></doc-feature>
<doc-feature text-color="#000000" color="#F7FAFC" title="Transparent Errors" image="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/ide-errors-small.png"></doc-feature>
<doc-feature text-color="#000000" color="#F7FAFC" title="Monorepo support" image="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/sherlock-monorepo.png"></doc-feature>
<doc-feature text-color="#000000" color="#F7FAFC" title="Update Translations" image="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/sherlock-update.png"></doc-feature>
<doc-feature text-color="#000000" color="#F7FAFC" title="Transparent Errors" image="https://cdn.jsdelivr.net/gh/opral/monorepo/inlang/source-code/ide-extension/assets/sherlock-errors.png"></doc-feature>
</doc-features>

## Usage
Expand Down
Loading

0 comments on commit 2bfe3e5

Please sign in to comment.