docs
docs copied to clipboard
Word order in Japanese translation is corrupted if links or inline codes are mixed
Describe the issue or suggestion
This problem exists in the documentation of many Microsoft products.
The current Japanese documents is super difficult to be read due to the broken word order. Japanese have to visit English document pages and translate them using a machine translator.
Example:
https://learn.microsoft.com/en-us/dotnet/api/system.lazy-1.isvaluecreated?view=net-8.0
English original text:
When lazy initialization occurs for a Lazy<T> instance, it may result in either a value being created or an exception being thrown. If an exception is thrown, subsequent behavior of the Lazy<T> instance depends on whether exception caching is in effect. If the Lazy<T> instance was created by using a constructor that does not specify an initialization function, then exception caching is not in effect. A subsequent attempt to initialize the Lazy<T> might succeed, and after successful initialization the IsValueCreated property returns true. If the Lazy<T> instance was created with an initialization function (specified by the valueFactory parameter of the Lazy<T> constructor), then exception caching is controlled by the thread safety mode.
current Japanese translation:
インスタンスに対して Lazy<T> 遅延初期化が発生すると、値が作成されるか、例外がスローされる可能性があります。 例外がスローされた場合、インスタンスの後続の Lazy<T> 動作は、例外キャッシュが有効かどうかによって異なります。 初期化関数を Lazy<T> 指定しないコンストラクターを使用してインスタンスが作成された場合、例外キャッシュは有効になりません。 その後、 Lazy<T> を初期化しようとすると成功する可能性があり、初期化が成功した後、プロパティは を IsValueCreated 返します true。 インスタンスがLazy<T>初期化関数 (コンストラクターの Lazy<T> パラメーターで指定) でvalueFactory作成された場合、例外キャッシュはスレッド セーフ モードによって制御されます。
Word order in Japanese should be:
Lazy<T> インスタンスに対して遅延初期化が発生すると、値が作成されるか、例外がスローされる可能性があります。 例外がスローされた場合、Lazy<T> インスタンスの後続の動作は、例外キャッシュが有効かどうかによって異なります。 初期化関数を指定しないコンストラクターを使用して Lazy<T> インスタンスが作成された場合、例外キャッシュは有効になりません。 その後、 Lazy<T> を初期化しようとすると成功する可能性があり、初期化が成功した後、IsValueCreated プロパティは true を返します。Lazy<T> インスタンスが初期化関数 (Lazy<T> コンストラクターの valueFactory パラメーターで指定) で作成された場合、例外キャッシュはスレッド セーフ モードによって制御されます。
Current Japanese translation is looked like by natives:
When Lazy<T> lazy initialization occurs for an instance, it may result in either a value being created or an exception being thrown. If an exception is thrown, subsequent Lazy<T> behavior of the instance depends on whether exception caching is in effect. If the instance was created by using a constructor that does not Lazy<T>-specify an initialization function, then exception caching is not in effect. A subsequent attempt to initialize the Lazy<T> might succeed, and after successful initialization the property true IsValueCreated-returns. If the instance was valueFactory-created with a Lazy<T> initialization function (specified by the Lazy<T> parameter of the constructor), then exception caching is controlled by the thread safety mode.
Example 2:
https://learn.microsoft.com/ja-jp/dotnet/api/system.double.isnan?view=net-8.0#system-double-isnan(system-double)
English original text:
IsNaN returns false if a Double value is either PositiveInfinity or NegativeInfinity. To test for these values, use the IsInfinity, IsPositiveInfinity, and IsNegativeInfinity methods.
Current Japanese:
IsNaN値が false または NegativeInfinityのPositiveInfinity場合Doubleは を返します。 これらの値をテストするには、および メソッドをIsNegativeInfinity使用IsInfinityIsPositiveInfinityします。
Word order in Japanese should be:
Doubleの値がPositiveInfinityまたは NegativeInfinityの場合IsNaNは false を返します。 これらの値をテストするには、IsInfinity、IsPositiveInfinity、およびIsNegativeInfinityメソッドを使用します。
Current Japanese translation is looked like by natives:
Double returns if an IsNaN value is either false or PositiveInfinity of NegativeInfinity. To test for these values, IsInfinity-use-IsPositiveInfinity-IsNegativeInfinity and the methods.