Fixed multiple %s replacements.
This commit is contained in:
parent
b6b9def375
commit
8b0e6c8cee
3 changed files with 34 additions and 10 deletions
|
@ -171,11 +171,11 @@ class App extends Spine.Controller
|
||||||
|
|
||||||
# define translation helper
|
# define translation helper
|
||||||
params.T = ( item, args... ) ->
|
params.T = ( item, args... ) ->
|
||||||
App.i18n.translateContent( item, args )
|
App.i18n.translateContent( item, args... )
|
||||||
|
|
||||||
# define translation inline helper
|
# define translation inline helper
|
||||||
params.Ti = ( item, args... ) ->
|
params.Ti = ( item, args... ) ->
|
||||||
App.i18n.translateInline( item, args )
|
App.i18n.translateInline( item, args... )
|
||||||
|
|
||||||
# define linkify helper
|
# define linkify helper
|
||||||
params.L = ( item ) ->
|
params.L = ( item ) ->
|
||||||
|
|
|
@ -214,11 +214,11 @@ class _i18nSingleton extends Spine.Module
|
||||||
App.Event.trigger('i18n:language:change')
|
App.Event.trigger('i18n:language:change')
|
||||||
)
|
)
|
||||||
|
|
||||||
translateInline: ( string, args... ) =>
|
translateInline: ( string, args ) =>
|
||||||
App.Utils.htmlEscape( @translate( string, args... ) )
|
App.Utils.htmlEscape( @translate( string, args ) )
|
||||||
|
|
||||||
translateContent: ( string, args... ) =>
|
translateContent: ( string, args ) =>
|
||||||
translated = App.Utils.htmlEscape( @translate( string, args... ) )
|
translated = App.Utils.htmlEscape( @translate( string, args ) )
|
||||||
# replace = '<span class="translation" contenteditable="true" data-text="' + App.Utils.htmlEscape(string) + '">' + translated + '<span class="icon-edit"></span>'
|
# replace = '<span class="translation" contenteditable="true" data-text="' + App.Utils.htmlEscape(string) + '">' + translated + '<span class="icon-edit"></span>'
|
||||||
if App.Config.get( 'translation_inline' )
|
if App.Config.get( 'translation_inline' )
|
||||||
replace = '<span class="translation" contenteditable="true" data-text="' + App.Utils.htmlEscape(string) + '">' + translated + ''
|
replace = '<span class="translation" contenteditable="true" data-text="' + App.Utils.htmlEscape(string) + '">' + translated + ''
|
||||||
|
@ -228,10 +228,10 @@ class _i18nSingleton extends Spine.Module
|
||||||
else
|
else
|
||||||
translated
|
translated
|
||||||
|
|
||||||
translatePlain: ( string, args... ) =>
|
translatePlain: ( string, args ) =>
|
||||||
@translate( string, args... )
|
@translate( string, args )
|
||||||
|
|
||||||
translate: ( string, args... ) =>
|
translate: ( string, args ) =>
|
||||||
|
|
||||||
# type convertation
|
# type convertation
|
||||||
if typeof string isnt 'string'
|
if typeof string isnt 'string'
|
||||||
|
|
|
@ -262,6 +262,18 @@ test( "i18n", function() {
|
||||||
var translated = App.i18n.translateContent('yes');
|
var translated = App.i18n.translateContent('yes');
|
||||||
equal( translated, 'ja', 'de-de - yes / ja translated correctly' );
|
equal( translated, 'ja', 'de-de - yes / ja translated correctly' );
|
||||||
|
|
||||||
|
translated = App.i18n.translatePlain('yes');
|
||||||
|
equal( translated, 'ja', 'de-de - yes / ja translated correctly' );
|
||||||
|
|
||||||
|
translated = App.i18n.translateInline('yes');
|
||||||
|
equal( translated, 'ja', 'de-de - yes / ja translated correctly' );
|
||||||
|
|
||||||
|
translated = App.i18n.translateContent('%s ago', 123);
|
||||||
|
equal( translated, 'vor 123', 'de-de - %s' );
|
||||||
|
|
||||||
|
translated = App.i18n.translateContent('%s %s test', 123, 'xxx');
|
||||||
|
equal( translated, '123 xxx test', 'de-de - %s %s' );
|
||||||
|
|
||||||
translated = App.i18n.translateContent('<test&now>//*äöüß');
|
translated = App.i18n.translateContent('<test&now>//*äöüß');
|
||||||
equal( translated, '<test&now>//*äöüß', 'de - <test&now>//*äöüß' );
|
equal( translated, '<test&now>//*äöüß', 'de - <test&now>//*äöüß' );
|
||||||
|
|
||||||
|
@ -275,6 +287,18 @@ test( "i18n", function() {
|
||||||
translated = App.i18n.translateContent('yes');
|
translated = App.i18n.translateContent('yes');
|
||||||
equal( translated, 'yes', 'en-us - yes translated correctly' );
|
equal( translated, 'yes', 'en-us - yes translated correctly' );
|
||||||
|
|
||||||
|
translated = App.i18n.translatePlain('yes');
|
||||||
|
equal( translated, 'yes', 'en-us - yes translated correctly' );
|
||||||
|
|
||||||
|
translated = App.i18n.translateInline('yes');
|
||||||
|
equal( translated, 'yes', 'en-us - yes translated correctly' );
|
||||||
|
|
||||||
|
translated = App.i18n.translateContent('%s ago', 123);
|
||||||
|
equal( translated, '123 ago', 'en-us - %s' );
|
||||||
|
|
||||||
|
translated = App.i18n.translateContent('%s %s test', 123, 'xxx');
|
||||||
|
equal( translated, '123 xxx test', 'en-us - %s %s' );
|
||||||
|
|
||||||
translated = App.i18n.translateContent('<test&now>');
|
translated = App.i18n.translateContent('<test&now>');
|
||||||
equal( translated, '<test&now>', 'en-us - <test&now>' );
|
equal( translated, '<test&now>', 'en-us - <test&now>' );
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue