2

TinyMCE で使用されている言語ラベルを変更したいです。例: "ユーバーシュリフト 2" -> "ユーバーシュリフト"。

TinyMCE の jQuery プラグイン バージョンを使用しています。

ラベル ファイルを編集せずにこれらのラベルを上書きする方法はありますか?

4

3 に答える 3

1

はい、「langs」フォルダーを探して、de.js を編集します。

于 2010-04-16T08:47:22.807 に答える
1

可能です。tinymce.i18n プロパティを処理するヘルパーgeti18nstring()およびset18nstring( )を使用して、少なくとも自分のローカライズ文字列に対してテストしました。

ところで、これはプロパティの「完全な」ドキュメントhttp://www.tinymce.com/wiki.php/API3:property.tinymce.i18nです。:) スニペットの残りの部分は、よく知られたアジャイル パターン「trust-the-source-Luke」を使用して行われます。

// folder: plugins/mycustomtinymceplugin
//
// file: ./langs/en_dlg.js

tinyMCE.addI18n('en.mycustomtinymceplugin_dlg',{charts:"Some charts"});

// file: mycustomtinymceplugin.html <-- opened by ./editor_plugin.js#init ed.windowManager.open({file : url + '/mycustomtinymceplugin.html'
<script>

function geti18nstring( id )
{
    return tinymce.i18n[ tinymce.activeEditor.settings.language + '.mycustomtinymceplugin_dlg.' + id ];
}
function seti18nstring( id, i18nstring )
{
    //just for curiosity if you wan't to modify something in a plugin which is killed after modification
    if( geti18nString( id ) == i18nstring )
    {
    alert( 'id['+id+'] was replaced already with [' + i18nstring +'].' );
    }
    else
    {
    tinymce.i18n[ tinymce.activeEditor.settings.language + '.mycustomtinymceplugin_dlg.' + id ] = i18nstring;
    }
}

function dostuffonpluginstart()
{
    //to get localized strings
    var charts_text = geti18nstring('charts');
    $('#chartlist').append( charts_text );
    ...
    //to manipulate localized strings
    seti18nstring( 'charts', 'karamba' );
    charts_text = geti18nstring('charts');
    $('#chartlist').append( charts_text )
}
</script>
...

<div id"chartlist"></div>
于 2011-10-27T11:29:50.163 に答える