kopia lustrzana https://github.com/backface/turtlestitch
Merge branch 'master' of https://github.com/jmoenig/Snap--Build-Your-Own-Blocks into newer-cloud
commit
55d70380ac
31
gui.js
31
gui.js
|
@ -71,11 +71,11 @@ fontHeight, hex_sha512, sb, CommentMorph, CommandBlockMorph, BooleanSlotMorph,
|
||||||
BlockLabelPlaceHolderMorph, Audio, SpeechBubbleMorph, ScriptFocusMorph,
|
BlockLabelPlaceHolderMorph, Audio, SpeechBubbleMorph, ScriptFocusMorph,
|
||||||
XML_Element, WatcherMorph, BlockRemovalDialogMorph, saveAs, TableMorph,
|
XML_Element, WatcherMorph, BlockRemovalDialogMorph, saveAs, TableMorph,
|
||||||
isSnapObject, isRetinaEnabled, disableRetinaSupport, enableRetinaSupport,
|
isSnapObject, isRetinaEnabled, disableRetinaSupport, enableRetinaSupport,
|
||||||
isRetinaSupported, SliderMorph, Animation, BoxMorph*/
|
isRetinaSupported, SliderMorph, Animation, BoxMorph, MediaRecorder*/
|
||||||
|
|
||||||
// Global stuff ////////////////////////////////////////////////////////
|
// Global stuff ////////////////////////////////////////////////////////
|
||||||
|
|
||||||
modules.gui = '2018-January-25';
|
modules.gui = '2018-February-05';
|
||||||
|
|
||||||
// Declarations
|
// Declarations
|
||||||
|
|
||||||
|
@ -2321,7 +2321,10 @@ IDE_Morph.prototype.recordNewSound = function () {
|
||||||
soundRecorder = new SoundRecorderDialogMorph(
|
soundRecorder = new SoundRecorderDialogMorph(
|
||||||
function (sound) {
|
function (sound) {
|
||||||
if (sound) {
|
if (sound) {
|
||||||
myself.currentSprite.addSound(sound, myself.newSoundName('recording'));
|
myself.currentSprite.addSound(
|
||||||
|
sound,
|
||||||
|
myself.newSoundName('recording')
|
||||||
|
);
|
||||||
myself.spriteBar.tabBar.tabTo('sounds');
|
myself.spriteBar.tabBar.tabTo('sounds');
|
||||||
myself.hasChangedMedia = true;
|
myself.hasChangedMedia = true;
|
||||||
}
|
}
|
||||||
|
@ -3440,7 +3443,7 @@ IDE_Morph.prototype.aboutSnap = function () {
|
||||||
module, btn1, btn2, btn3, btn4, licenseBtn, translatorsBtn,
|
module, btn1, btn2, btn3, btn4, licenseBtn, translatorsBtn,
|
||||||
world = this.world();
|
world = this.world();
|
||||||
|
|
||||||
aboutTxt = 'Snap! 4.1.1 - dev -\nBuild Your Own Blocks\n\n'
|
aboutTxt = 'Snap! 4.1.1\nBuild Your Own Blocks\n\n'
|
||||||
+ 'Copyright \u24B8 2018 Jens M\u00F6nig and '
|
+ 'Copyright \u24B8 2018 Jens M\u00F6nig and '
|
||||||
+ 'Brian Harvey\n'
|
+ 'Brian Harvey\n'
|
||||||
+ 'jens@moenig.org, bh@cs.berkeley.edu\n\n'
|
+ 'jens@moenig.org, bh@cs.berkeley.edu\n\n'
|
||||||
|
@ -8934,15 +8937,17 @@ SoundRecorderDialogMorph.prototype.buildContents = function () {
|
||||||
audioChunks.push(event.data);
|
audioChunks.push(event.data);
|
||||||
};
|
};
|
||||||
myself.mediaRecorder.onstop = function (event) {
|
myself.mediaRecorder.onstop = function (event) {
|
||||||
myself.audioElement.src =
|
var buffer = new Blob(audioChunks),
|
||||||
window.URL.createObjectURL(
|
reader = new window.FileReader();
|
||||||
new Blob(
|
reader.readAsDataURL(buffer);
|
||||||
audioChunks,
|
reader.onloadend = function() {
|
||||||
{'type': 'audio/ogg; codecs=opus'}
|
var base64 = reader.result;
|
||||||
)
|
base64 = 'data:audio/ogg;base64,' +
|
||||||
);
|
base64.split(',')[1];
|
||||||
myself.audioElement.load();
|
myself.audioElement.src = base64;
|
||||||
audioChunks = [];
|
myself.audioElement.load();
|
||||||
|
audioChunks = [];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
18
history.txt
18
history.txt
|
@ -3877,7 +3877,22 @@ Fixes:
|
||||||
* new Sound Recorder, yay!! Thanks, Bernat!
|
* new Sound Recorder, yay!! Thanks, Bernat!
|
||||||
* Blocks: fixed a glitch in the error-bubble handling mechanism
|
* Blocks: fixed a glitch in the error-bubble handling mechanism
|
||||||
|
|
||||||
|
180201
|
||||||
|
------
|
||||||
|
* GUI: encode recorded sounds to base64
|
||||||
|
* snap.html: added version queries to script urls
|
||||||
|
|
||||||
|
180202
|
||||||
|
------
|
||||||
|
* Libraries: Crayons library, thanks, Brian!
|
||||||
|
|
||||||
|
180205
|
||||||
|
------
|
||||||
|
* Russian translation update, thanks, temap!
|
||||||
|
* release
|
||||||
|
|
||||||
|
|
||||||
|
=== v4.1.1 minor release ===
|
||||||
|
|
||||||
v4.1.1 New Features:
|
v4.1.1 New Features:
|
||||||
* translation support for custom blocks
|
* translation support for custom blocks
|
||||||
|
@ -3888,6 +3903,7 @@ v4.1.1 New Features:
|
||||||
* new dial widget POINT IN DIRECTION's drop-down menu
|
* new dial widget POINT IN DIRECTION's drop-down menu
|
||||||
* new "rotate" option for sprite context menu
|
* new "rotate" option for sprite context menu
|
||||||
* new sound recorder, thanks, Bernat!
|
* new sound recorder, thanks, Bernat!
|
||||||
|
* new "Crayons" library, thanks, Brian!
|
||||||
|
|
||||||
Notable Changes:
|
Notable Changes:
|
||||||
* global and local variables are now separat in the palette, each sorted alphabetically, local vars marked with location pin (only in palette)
|
* global and local variables are now separat in the palette, each sorted alphabetically, local vars marked with location pin (only in palette)
|
||||||
|
@ -3904,6 +3920,7 @@ Notable Fixes:
|
||||||
* paint editor flood fill alpha issue, thanks, Bernat!
|
* paint editor flood fill alpha issue, thanks, Bernat!
|
||||||
* implicit parameter binding in visible stepping, thanks, Joan!
|
* implicit parameter binding in visible stepping, thanks, Joan!
|
||||||
* when deleting a temporary clone, detach all its parts and delete the temporary ones
|
* when deleting a temporary clone, detach all its parts and delete the temporary ones
|
||||||
|
* new release protocol to avoid browser caching related version conflicts
|
||||||
|
|
||||||
|
|
||||||
Translation Updates:
|
Translation Updates:
|
||||||
|
@ -3912,3 +3929,4 @@ Translation Updates:
|
||||||
* Turkish
|
* Turkish
|
||||||
* Chinese
|
* Chinese
|
||||||
* Spanish
|
* Spanish
|
||||||
|
* Russian
|
||||||
|
|
299
lang-ru.js
299
lang-ru.js
|
@ -182,7 +182,7 @@ SnapTranslator.dict.ru = {
|
||||||
'translator_e-mail':
|
'translator_e-mail':
|
||||||
'svetlanap@berkeley.edu, tema@school830.ru', // optional
|
'svetlanap@berkeley.edu, tema@school830.ru', // optional
|
||||||
'last_changed':
|
'last_changed':
|
||||||
'2017-09-01', // this, too, will appear in the Translators tab
|
'2017-12-29', // this, too, will appear in the Translators tab
|
||||||
|
|
||||||
// GUI
|
// GUI
|
||||||
// control bar:
|
// control bar:
|
||||||
|
@ -247,9 +247,9 @@ SnapTranslator.dict.ru = {
|
||||||
|
|
||||||
// tab help
|
// tab help
|
||||||
'costumes tab help':
|
'costumes tab help':
|
||||||
'импортируйте изображение с другого веб-сайта\nили со своего компьютера, скопировав его сюда',
|
'Вы можете перенести и бросить сюда изображение со своего компьютера',
|
||||||
'import a sound from your computer\nby dragging it into here':
|
'import a sound from your computer\nby dragging it into here':
|
||||||
'импортируйте звук со своего компьютера\nскопировав его сюда',
|
'Вы можете перенести и бросить сюда звуковой файл со своего компьютера',
|
||||||
|
|
||||||
// primitive blocks:
|
// primitive blocks:
|
||||||
|
|
||||||
|
@ -375,19 +375,37 @@ SnapTranslator.dict.ru = {
|
||||||
'stop all sounds':
|
'stop all sounds':
|
||||||
'остановить все звуки',
|
'остановить все звуки',
|
||||||
'rest for %n beats':
|
'rest for %n beats':
|
||||||
'пауза %n тактов',
|
'пауза в тактах %n',
|
||||||
'play note %n for %n beats':
|
'play note %note for %n beats':
|
||||||
'сыграть ноту %n %n тактов',
|
'играть ноту %note длит. %n',
|
||||||
'change tempo by %n':
|
'change tempo by %n':
|
||||||
'изменить темп на %n',
|
'изменить темп на %n',
|
||||||
'set tempo to %n bpm':
|
'set tempo to %n bpm':
|
||||||
'устан. темп %n ударов в мин.',
|
'уст. темп %n такт/мин',
|
||||||
|
'set instrument to %inst':
|
||||||
|
'инструмент %inst',
|
||||||
'tempo':
|
'tempo':
|
||||||
'темп',
|
'темп',
|
||||||
|
'sine':
|
||||||
|
'синус (sine)',
|
||||||
|
'square':
|
||||||
|
'квадрат (square)',
|
||||||
|
'sawtooth':
|
||||||
|
'пила (sawtooth)',
|
||||||
|
'triangle':
|
||||||
|
'треугольник (triangle)',
|
||||||
|
'(1) sine':
|
||||||
|
'(1) синус (sine)',
|
||||||
|
'(2) square':
|
||||||
|
'(2) квадрат (square)',
|
||||||
|
'(3) sawtooth':
|
||||||
|
'(3) пила (sawtooth)',
|
||||||
|
'(4) triangle':
|
||||||
|
'(4) треугольник (triangle)',
|
||||||
|
|
||||||
// pen:
|
// pen:
|
||||||
'clear':
|
'clear':
|
||||||
'убрать все',
|
'очистить всё',
|
||||||
'pen down':
|
'pen down':
|
||||||
'опустить перо',
|
'опустить перо',
|
||||||
'pen up':
|
'pen up':
|
||||||
|
@ -473,21 +491,27 @@ SnapTranslator.dict.ru = {
|
||||||
'other scripts in sprite':
|
'other scripts in sprite':
|
||||||
'все другие мои скрипты',
|
'все другие мои скрипты',
|
||||||
'run %cmdRing %inputs':
|
'run %cmdRing %inputs':
|
||||||
'выполнять %cmdRing %inputs',
|
'выполнить %cmdRing %inputs',
|
||||||
'launch %cmdRing %inputs':
|
'launch %cmdRing %inputs':
|
||||||
'запустить %cmdRing %inputs',
|
'запустить %cmdRing %inputs',
|
||||||
'call %repRing %inputs':
|
'call %repRing %inputs':
|
||||||
'вызвать %repRing %inputs',
|
'вызвать %repRing %inputs',
|
||||||
'run %cmdRing w/continuation':
|
'run %cmdRing w/continuation':
|
||||||
'выполнять %cmdRing с продолжением',
|
'выполнить %cmdRing с продолжением',
|
||||||
'call %cmdRing w/continuation':
|
'call %cmdRing w/continuation':
|
||||||
'вызвать %cmdRing с продолжением',
|
'вызвать %cmdRing с продолжением',
|
||||||
|
'tell %spr to %cmdRing %inputs':
|
||||||
|
'передать %spr команды %cmdRing %inputs',
|
||||||
|
'ask %spr for %repRing %inputs':
|
||||||
|
'запросить у %spr информацию %cmdRing %inputs',
|
||||||
'warp %c':
|
'warp %c':
|
||||||
'сразу %c',
|
'сразу %c',
|
||||||
'when I start as a clone':
|
'when I start as a clone':
|
||||||
'когда я создан как клон',
|
'когда я создан как клон',
|
||||||
'create a clone of %cln':
|
'create a clone of %cln':
|
||||||
'клонировать %cln',
|
'клонировать %cln',
|
||||||
|
'a new clone of %cln':
|
||||||
|
'новый клон %cln',
|
||||||
'myself':
|
'myself':
|
||||||
'меня',
|
'меня',
|
||||||
'delete this clone':
|
'delete this clone':
|
||||||
|
@ -601,6 +625,8 @@ SnapTranslator.dict.ru = {
|
||||||
'спрятать переменную %var',
|
'спрятать переменную %var',
|
||||||
'script variables %scriptVars':
|
'script variables %scriptVars':
|
||||||
'переменные скрипта %scriptVars',
|
'переменные скрипта %scriptVars',
|
||||||
|
'inherit %shd':
|
||||||
|
'наследовать %shd',
|
||||||
|
|
||||||
// lists:
|
// lists:
|
||||||
'list %exp':
|
'list %exp':
|
||||||
|
@ -631,15 +657,17 @@ SnapTranslator.dict.ru = {
|
||||||
// other
|
// other
|
||||||
'Make a block':
|
'Make a block':
|
||||||
'Новый блок',
|
'Новый блок',
|
||||||
|
'find blocks...':
|
||||||
|
'Найти блоки...',
|
||||||
|
|
||||||
// menus
|
// menus
|
||||||
// snap menu
|
// snap menu
|
||||||
'About...':
|
'About...':
|
||||||
'Snap! Реквизиты',
|
'О программе...',
|
||||||
'Snap! website':
|
'Snap! website':
|
||||||
'Snap! веб-сайт',
|
'Веб-сайт программы Snap!',
|
||||||
'Download source':
|
'Download source':
|
||||||
'Загрузить материалы источника',
|
'Загрузить исходники программы',
|
||||||
'Switch back to user mode':
|
'Switch back to user mode':
|
||||||
'Вернуться в режим пользователя',
|
'Вернуться в режим пользователя',
|
||||||
'disable deep-Morphic\ncontext menus\nand show user-friendly ones':
|
'disable deep-Morphic\ncontext menus\nand show user-friendly ones':
|
||||||
|
@ -704,6 +732,12 @@ SnapTranslator.dict.ru = {
|
||||||
'Увеличение блоков кода...',
|
'Увеличение блоков кода...',
|
||||||
'Stage size...':
|
'Stage size...':
|
||||||
'Размер сцены...',
|
'Размер сцены...',
|
||||||
|
'Retina display support':
|
||||||
|
'Поддержка технологии Retina display',
|
||||||
|
'uncheck for lower resolution,\nsaves computing resources':
|
||||||
|
'снимите флажок для использования низкого разрешения\nэто уменьшит нагрузку на ресурсы компьютера',
|
||||||
|
'check for higher resolution,\nuses more computing resources':
|
||||||
|
'отметьте, чтобы использовать высокое разрешение\nэто увеличит нагрузку на ресурсы компьютера',
|
||||||
'Stage size':
|
'Stage size':
|
||||||
'Размер сцены',
|
'Размер сцены',
|
||||||
'Stage width':
|
'Stage width':
|
||||||
|
@ -713,57 +747,57 @@ SnapTranslator.dict.ru = {
|
||||||
'Blurred shadows':
|
'Blurred shadows':
|
||||||
'Контрастность тени',
|
'Контрастность тени',
|
||||||
'uncheck to use solid drop\nshadows and highlights':
|
'uncheck to use solid drop\nshadows and highlights':
|
||||||
'убрать метку - использовать сплошные\nтени и подсветки',
|
'снимите флажок, чтобы использовать сплошные\nтени и подсветки',
|
||||||
'check to use blurred drop\nshadows and highlights':
|
'check to use blurred drop\nshadows and highlights':
|
||||||
'поставить метку - использовать размытые\nтени и подсветки',
|
'отметьте, чтобы использовать размытые\nтени и подсветки',
|
||||||
'Zebra coloring':
|
'Zebra coloring':
|
||||||
'Использование альтернативных цветов',
|
'Использование альтернативных цветов',
|
||||||
'check to enable alternating\ncolors for nested blocks':
|
'check to enable alternating\ncolors for nested blocks':
|
||||||
'поставить метку - разрешить использование\nперемежающихся цветов для вложенных блоков',
|
'отметьте, чтобы разрешить использование\nперемежающихся цветов для вложенных блоков',
|
||||||
'uncheck to disable alternating\ncolors for nested block':
|
'uncheck to disable alternating\ncolors for nested block':
|
||||||
'убрать метку - отключить использование\nперемежающихся цветов для вложенных блоков',
|
'снимите флажок, чтобы отключить использование\nперемежающихся цветов для вложенных блоков',
|
||||||
'Dynamic input labels':
|
'Dynamic input labels':
|
||||||
'Использование динамических обозначений',
|
'Использование динамических обозначений',
|
||||||
'uncheck to disable dynamic\nlabels for variadic inputs':
|
'uncheck to disable dynamic\nlabels for variadic inputs':
|
||||||
'убрать метку - отключить использование динамических обозначений\nпри вводе с переменным числом аргументов',
|
'снимите флажок, чтобы отключить использование динамических обозначений\nпри вводе с переменным числом аргументов',
|
||||||
'check to enable dynamic\nlabels for variadic inputs':
|
'check to enable dynamic\nlabels for variadic inputs':
|
||||||
'поставить метку - разрешить использование динамических обозначений\nпри вводе с переменным числом аргументов',
|
'отметьте, чтобы разрешить использование динамических обозначений\nпри вводе с переменным числом аргументов',
|
||||||
'Prefer empty slot drops':
|
'Prefer empty slot drops':
|
||||||
'Использование незанятых ячеек ввода',
|
'Использование незанятых ячеек ввода',
|
||||||
'settings menu prefer empty slots hint':
|
'settings menu prefer empty slots hint':
|
||||||
'поставить метку - помещать генераторы значений\nтолько в незанятые ячейки ввода',
|
'отметьте, чтобы помещать генераторы значений\nтолько в незанятые ячейки ввода',
|
||||||
'uncheck to allow dropped\nreporters to kick out others':
|
'uncheck to allow dropped\nreporters to kick out others':
|
||||||
'убрать метку - разрешить помещать генераторы значений\nв занятые ячейки ввода',
|
'снимите флажок, чтобы разрешить помещать генераторы значений\nв занятые ячейки ввода',
|
||||||
'Long form input dialog':
|
'Long form input dialog':
|
||||||
'Расширенная форма диалога ввода',
|
'Расширенная форма диалога ввода',
|
||||||
'check to always show slot\ntypes in the input dialog':
|
'check to always show slot\ntypes in the input dialog':
|
||||||
'поставить метку - указывать типы ячеек ввода\nв диалоге ввода',
|
'отметьте, чтобы указывать типы ячеек ввода\nв диалоге ввода',
|
||||||
'uncheck to use the input\ndialog in short form':
|
'uncheck to use the input\ndialog in short form':
|
||||||
'убрать метку - использовать краткую форму\nдиалога ввода',
|
'снимите флажок, чтобы использовать краткую форму\nдиалога ввода',
|
||||||
'Virtual keyboard':
|
'Virtual keyboard':
|
||||||
'Виртуальная клавиатура',
|
'Виртуальная клавиатура',
|
||||||
'uncheck to disable\nvirtual keyboard support\nfor mobile devices':
|
'uncheck to disable\nvirtual keyboard support\nfor mobile devices':
|
||||||
'убрать метку - отключить использование виртуальной клавиатуры\nдля мобильных устройств',
|
'снимите флажок, чтобы отключить использование виртуальной клавиатуры\nдля мобильных устройств',
|
||||||
'check to enable\nvirtual keyboard support\nfor mobile devices':
|
'check to enable\nvirtual keyboard support\nfor mobile devices':
|
||||||
'поставить метку - разрешить использование виртуальной клавиатуры\nдля мобильных устройств',
|
'отметьте, чтобы разрешить использование виртуальной клавиатуры\nдля мобильных устройств',
|
||||||
'Input sliders':
|
'Input sliders':
|
||||||
'Использование бегунков ввода',
|
'Использование бегунков ввода',
|
||||||
'uncheck to disable\ninput sliders for\nentry fields':
|
'uncheck to disable\ninput sliders for\nentry fields':
|
||||||
'убрать метку - отключить использование бегунков\nпри заполнении полей ввода',
|
'снимите флажок, чтобы отключить использование бегунков\nпри заполнении полей ввода',
|
||||||
'check to enable\ninput sliders for\nentry fields':
|
'check to enable\ninput sliders for\nentry fields':
|
||||||
'поставить метку - разрешить использование бегунков\nпри заполнении полей ввода',
|
'отметьте, чтобы разрешить использование бегунков\nпри заполнении полей ввода',
|
||||||
'Clicking sound':
|
'Clicking sound':
|
||||||
'Звук щелчка',
|
'Звук щелчка',
|
||||||
'uncheck to turn\nblock clicking\nsound off':
|
'uncheck to turn\nblock clicking\nsound off':
|
||||||
'убрать метку - выключить звук\nпри щелчке на блок',
|
'снимите флажок, чтобы выключить звук\nпри щелчке на блок',
|
||||||
'check to turn\nblock clicking\nsound on':
|
'check to turn\nblock clicking\nsound on':
|
||||||
'поставить метку - включить звук\nпри щелчке на блок',
|
'отметьте, чтобы включить звук\nпри щелчке на блок',
|
||||||
'Animations':
|
'Animations':
|
||||||
'Aнимация',
|
'Aнимация',
|
||||||
'uncheck to disable\nIDE animations':
|
'uncheck to disable\nIDE animations':
|
||||||
'убрать метку - отключить\nIDE aнимацию',
|
'снимите флажок, чтобы отключить\nIDE aнимацию',
|
||||||
'check to enable\nIDE animations':
|
'check to enable\nIDE animations':
|
||||||
'поставить метку - разрешить\nIDE aнимацию',
|
'отметьте, чтобы разрешить\nIDE aнимацию',
|
||||||
'Turbo mode':
|
'Turbo mode':
|
||||||
'Режим Турбо',
|
'Режим Турбо',
|
||||||
'check to prioritize\nscript execution':
|
'check to prioritize\nscript execution':
|
||||||
|
@ -797,17 +831,41 @@ SnapTranslator.dict.ru = {
|
||||||
'check for higher contrast\ntable views':
|
'check for higher contrast\ntable views':
|
||||||
'отметьте, чтобы линии таблицы в окне отображения таблиц\nстали более контрасными',
|
'отметьте, чтобы линии таблицы в окне отображения таблиц\nстали более контрасными',
|
||||||
'Visible stepping':
|
'Visible stepping':
|
||||||
'Отбражение шагов выполнения',
|
'Отображение шагов выполнения',
|
||||||
'check to turn on\n visible stepping (slow)':
|
'check to turn on\n visible stepping (slow)':
|
||||||
'отметьте, чтобы отображались\nшаги выполнения скрипта (медленно)',
|
'отметьте, чтобы отображались\nшаги выполнения скрипта (медленно)',
|
||||||
'uncheck to turn off\nvisible stepping':
|
'uncheck to turn off\nvisible stepping':
|
||||||
'снимите флажок, чтобы отключить отображение\nшагов выполнения скрипта',
|
'снимите флажок, чтобы отключить отображение\nшагов выполнения скрипта',
|
||||||
'Thread safe scripts':
|
'Thread safe scripts':
|
||||||
'Защищенность скрипта в многопоточном режиме',
|
'Защищенность скрипта в многопоточном режиме',
|
||||||
'uncheck to allow\nscript reentrancy':
|
'uncheck to allow\nscript reentrance':
|
||||||
'убрать метку - разрешить\nповторное вхождение в скрипт',
|
'снимите флажок, чтобы разрешить\nповторный вход в скрипт',
|
||||||
'check to disallow\nscript reentrancy':
|
'check to disallow\nscript reentrance':
|
||||||
'поставить метку - отключить\nповторное вхождение в скрипт',
|
'отметьте, чтобы отключить\nповторный вход в скрипт',
|
||||||
|
'Plain prototype labels':
|
||||||
|
'Простые заголовки блоков',
|
||||||
|
'uncheck to always show (+) symbols\nin block prototype labels':
|
||||||
|
'снимите флажок, чтобы показывать (+)\nпри редактировании заголовка в редакторе блоков',
|
||||||
|
'check to hide (+) symbols\nin block prototype labels':
|
||||||
|
'отметьте, чтобы отключить (+)\nпри редактировании заголовка в редакторе блоков',
|
||||||
|
'Flat line ends':
|
||||||
|
'Прямоугольные завершения линий',
|
||||||
|
'uncheck for round ends of lines':
|
||||||
|
'снимите флажок, чтобы\nконцы нарисованных линий закруглялись',
|
||||||
|
'check for flat ends of lines':
|
||||||
|
'отметьте, чтобы отключить\nзакругления на концах нарисованных линий',
|
||||||
|
'Codification support':
|
||||||
|
'Поддержка кодификации блоков',
|
||||||
|
'uncheck to disable\nblock to text mapping features':
|
||||||
|
'снимите флажок, чтобы убрать блоки\nтрансляции в текст на другой язык программирования',
|
||||||
|
'check for block\nto text mapping features':
|
||||||
|
'отметьте, чтобы добавить блоки\nтрансляции в текст на другой язык программирования',
|
||||||
|
'Inheritance support':
|
||||||
|
'Поддержка наследования',
|
||||||
|
'uncheck to disable\nsprite inheritance features':
|
||||||
|
'снимите флажок, чтобы отключить\nнаследование свойств спрайтов',
|
||||||
|
'check for sprite\ninheritance features':
|
||||||
|
'отметьте, чтобы включить\nнаследование свойств спрайтов',
|
||||||
|
|
||||||
// inputs
|
// inputs
|
||||||
'with inputs':
|
'with inputs':
|
||||||
|
@ -844,6 +902,12 @@ SnapTranslator.dict.ru = {
|
||||||
'обвести',
|
'обвести',
|
||||||
'unringify':
|
'unringify':
|
||||||
'убрать обводку',
|
'убрать обводку',
|
||||||
|
'find blocks':
|
||||||
|
'найти блоки',
|
||||||
|
'hide primitives':
|
||||||
|
'скрыть стандартные блоки',
|
||||||
|
'show primitives':
|
||||||
|
'отобразить стандартные блоки',
|
||||||
|
|
||||||
// custom blocks:
|
// custom blocks:
|
||||||
'delete block definition...':
|
'delete block definition...':
|
||||||
|
@ -854,12 +918,38 @@ SnapTranslator.dict.ru = {
|
||||||
// sprites:
|
// sprites:
|
||||||
'edit':
|
'edit':
|
||||||
'редактировать',
|
'редактировать',
|
||||||
|
'move':
|
||||||
|
'переместить',
|
||||||
|
'clone':
|
||||||
|
'клонировать',
|
||||||
'export...':
|
'export...':
|
||||||
'экспорт...',
|
'экспорт...',
|
||||||
|
'parent...':
|
||||||
|
'родитель...',
|
||||||
|
'release':
|
||||||
|
'освободить',
|
||||||
|
'make temporary and\nhide in the sprite corral':
|
||||||
|
'сделать временным и\nубрать отдельный спрайт',
|
||||||
|
'current parent':
|
||||||
|
'родитель спрайта',
|
||||||
|
'add a new Turtle sprite':
|
||||||
|
'создать новый стандартный спрайт',
|
||||||
|
'paint a new sprite':
|
||||||
|
'нарисовать новый спрайт',
|
||||||
|
'take a camera snapshot and\nimport it as a new sprite':
|
||||||
|
'сделать фотографию камерой и\nиспользовать изображение как новый спрайт',
|
||||||
|
'pivot':
|
||||||
|
'центр вращения',
|
||||||
|
'edit the costume\'s\nrotation center':
|
||||||
|
'указать центр вращения для костюма',
|
||||||
|
|
||||||
// stage:
|
// stage:
|
||||||
'show all':
|
'show all':
|
||||||
'показать все',
|
'показать все',
|
||||||
|
'pic...':
|
||||||
|
'картинка...',
|
||||||
|
'open a new window\nwith a picture of the stage':
|
||||||
|
'преобразовать вид текущей сцены\nв картинку',
|
||||||
|
|
||||||
// scripting area
|
// scripting area
|
||||||
'clean up':
|
'clean up':
|
||||||
|
@ -868,8 +958,22 @@ SnapTranslator.dict.ru = {
|
||||||
'размещать скрипты\nвертикально',
|
'размещать скрипты\nвертикально',
|
||||||
'add comment':
|
'add comment':
|
||||||
'добавить комментарий',
|
'добавить комментарий',
|
||||||
|
'scripts pic...':
|
||||||
|
'скрипты в картинку...',
|
||||||
|
'open a new window\nwith a picture of all scripts':
|
||||||
|
'преобразовать скрипты на листе\nв картинку',
|
||||||
'make a block...':
|
'make a block...':
|
||||||
'новый блок...',
|
'новый блок...',
|
||||||
|
'use the keyboard\nto enter blocks':
|
||||||
|
'использовать клавиатуру\nдля работы с блоками',
|
||||||
|
'undrop':
|
||||||
|
'отменить',
|
||||||
|
'undo the last\nblock drop\nin this pane':
|
||||||
|
'отменить последнее\nдействие с блоком',
|
||||||
|
'redrop':
|
||||||
|
'вернуть',
|
||||||
|
'redo the last undone\nblock drop\nin this pane':
|
||||||
|
'повторить отменённое\nдействие с блоком',
|
||||||
|
|
||||||
// costumes
|
// costumes
|
||||||
'rename':
|
'rename':
|
||||||
|
@ -877,7 +981,7 @@ SnapTranslator.dict.ru = {
|
||||||
'export':
|
'export':
|
||||||
'экспорт',
|
'экспорт',
|
||||||
'rename costume':
|
'rename costume':
|
||||||
'переименовать маску',
|
'переименовать костюм',
|
||||||
|
|
||||||
// sounds
|
// sounds
|
||||||
'Play sound':
|
'Play sound':
|
||||||
|
@ -923,6 +1027,8 @@ SnapTranslator.dict.ru = {
|
||||||
'Открыть',
|
'Открыть',
|
||||||
'Empty':
|
'Empty':
|
||||||
'Пусто',
|
'Пусто',
|
||||||
|
'Import':
|
||||||
|
'Импортировать',
|
||||||
|
|
||||||
// help
|
// help
|
||||||
'Help':
|
'Help':
|
||||||
|
@ -973,16 +1079,14 @@ SnapTranslator.dict.ru = {
|
||||||
'У этого проекта пока нет глобальных\nпользовательских блоков',
|
'У этого проекта пока нет глобальных\nпользовательских блоков',
|
||||||
'select':
|
'select':
|
||||||
'выделить',
|
'выделить',
|
||||||
'all':
|
|
||||||
'все',
|
|
||||||
'none':
|
'none':
|
||||||
'ничего',
|
'ничего',
|
||||||
|
|
||||||
// variable dialog
|
// variable dialog
|
||||||
'for all sprites':
|
'for all sprites':
|
||||||
'применительно ко всем Образам',
|
'для всех спрайтов',
|
||||||
'for this sprite only':
|
'for this sprite only':
|
||||||
'применительно только к данному Образу',
|
'только для текущего спрайта',
|
||||||
|
|
||||||
// block dialog
|
// block dialog
|
||||||
'Change block':
|
'Change block':
|
||||||
|
@ -999,6 +1103,18 @@ SnapTranslator.dict.ru = {
|
||||||
'Редактор Блоков',
|
'Редактор Блоков',
|
||||||
'Apply':
|
'Apply':
|
||||||
'Применить',
|
'Применить',
|
||||||
|
'translations...':
|
||||||
|
'переводы',
|
||||||
|
'block variables...':
|
||||||
|
'переменные блока...',
|
||||||
|
'rename all...':
|
||||||
|
'переименовать все...',
|
||||||
|
'block variables':
|
||||||
|
'переменные блока',
|
||||||
|
'Block variable name':
|
||||||
|
'Имя переменной блока',
|
||||||
|
'remove block variables...':
|
||||||
|
'убрать переменные блока',
|
||||||
|
|
||||||
// block deletion dialog
|
// block deletion dialog
|
||||||
'Delete Custom Block':
|
'Delete Custom Block':
|
||||||
|
@ -1050,7 +1166,7 @@ SnapTranslator.dict.ru = {
|
||||||
|
|
||||||
// About Snap
|
// About Snap
|
||||||
'About Snap':
|
'About Snap':
|
||||||
'О Snap!',
|
'О программе',
|
||||||
'Back...':
|
'Back...':
|
||||||
'Bозврат...',
|
'Bозврат...',
|
||||||
'License...':
|
'License...':
|
||||||
|
@ -1069,6 +1185,8 @@ SnapTranslator.dict.ru = {
|
||||||
'Участники',
|
'Участники',
|
||||||
'Translations':
|
'Translations':
|
||||||
'Переводы',
|
'Переводы',
|
||||||
|
'Reference manual':
|
||||||
|
'Инструкция пользователя',
|
||||||
|
|
||||||
// variable watchers
|
// variable watchers
|
||||||
'normal':
|
'normal':
|
||||||
|
@ -1091,6 +1209,14 @@ SnapTranslator.dict.ru = {
|
||||||
// list watchers
|
// list watchers
|
||||||
'length: ':
|
'length: ':
|
||||||
'длина: ',
|
'длина: ',
|
||||||
|
'list view...':
|
||||||
|
'в виде списка...',
|
||||||
|
'table view...':
|
||||||
|
'в виде таблицы...',
|
||||||
|
'open in dialog...':
|
||||||
|
'открыть в отдельном окне...',
|
||||||
|
'open in another dialog...':
|
||||||
|
'открыть в ещё одном окне...',
|
||||||
|
|
||||||
// coments
|
// coments
|
||||||
'add comment here...':
|
'add comment here...':
|
||||||
|
@ -1117,11 +1243,43 @@ SnapTranslator.dict.ru = {
|
||||||
|
|
||||||
// costumes
|
// costumes
|
||||||
'Turtle':
|
'Turtle':
|
||||||
'Черепашка',
|
'Стрела',
|
||||||
|
'Opening Costumes...':
|
||||||
|
'Загрузка костюмов...',
|
||||||
|
'pen':
|
||||||
|
'перо',
|
||||||
|
'tip':
|
||||||
|
'на острие',
|
||||||
|
'middle':
|
||||||
|
'посередине',
|
||||||
|
'Paint a new costume':
|
||||||
|
'Нарисовать новый костюм',
|
||||||
|
'Import a new costume from your webcam':
|
||||||
|
'Сделать костюм из фотографии вебкамерой',
|
||||||
|
|
||||||
// graphical effects
|
// graphical effects
|
||||||
'ghost':
|
'ghost':
|
||||||
'прозрачность',
|
'прозрачность',
|
||||||
|
'color':
|
||||||
|
'цвет',
|
||||||
|
'fisheye':
|
||||||
|
'рыбий глаз',
|
||||||
|
'whirl':
|
||||||
|
'вихрь',
|
||||||
|
'pixelate':
|
||||||
|
'пикселизация',
|
||||||
|
'mosaic':
|
||||||
|
'мозаика',
|
||||||
|
'negative':
|
||||||
|
'негатив',
|
||||||
|
'comic':
|
||||||
|
'комикс',
|
||||||
|
'confetti':
|
||||||
|
'конфетти',
|
||||||
|
'saturation':
|
||||||
|
'насыщенность',
|
||||||
|
'brightness':
|
||||||
|
'яркость',
|
||||||
|
|
||||||
// keys
|
// keys
|
||||||
'space':
|
'space':
|
||||||
|
@ -1268,6 +1426,10 @@ SnapTranslator.dict.ru = {
|
||||||
'предикат',
|
'предикат',
|
||||||
'sprite':
|
'sprite':
|
||||||
'спрайт',
|
'спрайт',
|
||||||
|
'costume':
|
||||||
|
'костюм',
|
||||||
|
'sound':
|
||||||
|
'звук',
|
||||||
|
|
||||||
// list indices
|
// list indices
|
||||||
'last':
|
'last':
|
||||||
|
@ -1275,7 +1437,7 @@ SnapTranslator.dict.ru = {
|
||||||
'any':
|
'any':
|
||||||
'любой',
|
'любой',
|
||||||
'now connected':
|
'now connected':
|
||||||
'вы вошли в систему',
|
'соединение установлено',
|
||||||
'undo':
|
'undo':
|
||||||
'отменить',
|
'отменить',
|
||||||
|
|
||||||
|
@ -1312,7 +1474,56 @@ SnapTranslator.dict.ru = {
|
||||||
'имя',
|
'имя',
|
||||||
'stage':
|
'stage':
|
||||||
'сцена',
|
'сцена',
|
||||||
|
'costumes':
|
||||||
|
'костюмы',
|
||||||
|
'sounds':
|
||||||
|
'звуки',
|
||||||
|
|
||||||
|
//Paint editor
|
||||||
|
'Paint Editor':
|
||||||
|
'Графический редактор',
|
||||||
|
'flip \u2194':
|
||||||
|
'отраж. \u2194',
|
||||||
|
'flip \u2195':
|
||||||
|
'отраж. \u2195',
|
||||||
|
'grow':
|
||||||
|
'увел.',
|
||||||
|
'shrink':
|
||||||
|
'умен.',
|
||||||
|
'Brush size':
|
||||||
|
'Размер кисти',
|
||||||
|
'Constrain proportions of shapes?\n(you can also hold shift)':
|
||||||
|
'Сохранять пропорции фигур (круг, квадрат)?\nТак же можно использовать Shift',
|
||||||
|
'Paintbrush tool\n(free draw)':
|
||||||
|
'Кисть (свободное рисование)',
|
||||||
|
'Stroked Rectangle\n(shift: square)':
|
||||||
|
'Прямоугольник\n(shift: квадрат)',
|
||||||
|
'Stroked Ellipse\n(shift: circle)':
|
||||||
|
'Эллипс\n(shift: окружность)',
|
||||||
|
'Eraser tool':
|
||||||
|
'Ластик',
|
||||||
|
'Set the rotation center':
|
||||||
|
'Установка центра вращения',
|
||||||
|
'Line tool\n(shift: vertical/horizontal)':
|
||||||
|
'Линия\n(shift: вертикальная/горизонтальная)',
|
||||||
|
'Filled Rectangle\n(shift: square)':
|
||||||
|
'Закрашенный прямоугольник\n(shift: квадрат)',
|
||||||
|
'Filled Ellipse\n(shift: circle)':
|
||||||
|
'Закрашенный эллипс\n(shift: окружность)',
|
||||||
|
'Fill a region':
|
||||||
|
'Заливка',
|
||||||
|
'Pipette tool\n(pick a color anywhere)':
|
||||||
|
'Пипетка\n(взять цвет кликом на любую точку)',
|
||||||
|
|
||||||
//Переводы найденых в программе, но не в файле перевода
|
//Переводы найденых в программе, но не в файле перевода
|
||||||
|
'experimental -\nunder construction':
|
||||||
|
'экспериментальная возможность -\nв разработке',
|
||||||
|
'Camera':
|
||||||
|
'Камера',
|
||||||
|
'Camera not supported':
|
||||||
|
'Камера не поддерживается',
|
||||||
|
'Please make sure your web browser is up to date\nand your camera is properly configured. \n\nSome browsers also require you to access Snap!\nthrough HTTPS to use the camera.\n\nPlase replace the "http://" part of the address\nin your browser by "https://" and try again.':
|
||||||
|
'Пожалуйста, проверьте, что Ваш браузер обновлён до последней версии\nи Ваша камера правильно сконфигурирована. \n\nНекоторые браузеры требуют протокола HTTPS\nдля доступа к СНАП к камере.\n\nПопробуйте заменить "http://" в адресной строке\nВашего браузера на "https://" и попробуйте ещё раз.',
|
||||||
'current %dates':
|
'current %dates':
|
||||||
'сейчас %dates',
|
'сейчас %dates',
|
||||||
'year':
|
'year':
|
||||||
|
|
|
@ -12,6 +12,7 @@ try-catch.xml Catch errors in a script Run a script; if an error happens, instea
|
||||||
multiline.xml Allow multi-line text input to a block In general, text inputs allow only a single line. The MULTILINE block accepts multi-line text input and can be used in text input slots of other blocks.
|
multiline.xml Allow multi-line text input to a block In general, text inputs allow only a single line. The MULTILINE block accepts multi-line text input and can be used in text input slots of other blocks.
|
||||||
Eisenbergification.xml Provide getters and setters for all GUI-controlled global settings Eisenberg's Law: Anything that can be done from the GUI should be doable from the programming language, and vice versa.
|
Eisenbergification.xml Provide getters and setters for all GUI-controlled global settings Eisenberg's Law: Anything that can be done from the GUI should be doable from the programming language, and vice versa.
|
||||||
bignumbers.xml Infinite precision integers, exact rationals, complex The full Scheme numeric tower. "USE BIGNUMS <True>" to enable.
|
bignumbers.xml Infinite precision integers, exact rationals, complex The full Scheme numeric tower. "USE BIGNUMS <True>" to enable.
|
||||||
|
crayons.xml Provide 100 selected colors to use instead of hue for better selection
|
||||||
animation_module.xml Animation glide, grow and rotate using easing functions.
|
animation_module.xml Animation glide, grow and rotate using easing functions.
|
||||||
pixel_module.xml Pixels manipulate costumes pixel-wise.
|
pixel_module.xml Pixels manipulate costumes pixel-wise.
|
||||||
audioComp_module.xml Audio Comp analyze, manipulate and generate sound samples.
|
audioComp_module.xml Audio Comp analyze, manipulate and generate sound samples.
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -42,7 +42,7 @@
|
||||||
|
|
||||||
/*global modules, contains*/
|
/*global modules, contains*/
|
||||||
|
|
||||||
modules.locale = '2018-January-25';
|
modules.locale = '2018-February-5';
|
||||||
|
|
||||||
// Global stuff
|
// Global stuff
|
||||||
|
|
||||||
|
@ -281,7 +281,7 @@ SnapTranslator.dict.ru = {
|
||||||
'translator_e-mail':
|
'translator_e-mail':
|
||||||
'svetlanap@berkeley.edu, tema@school830.ru',
|
'svetlanap@berkeley.edu, tema@school830.ru',
|
||||||
'last_changed':
|
'last_changed':
|
||||||
'2017-09-01'
|
'2018-02-05'
|
||||||
};
|
};
|
||||||
|
|
||||||
SnapTranslator.dict.es = {
|
SnapTranslator.dict.es = {
|
||||||
|
|
36
snap.html
36
snap.html
|
@ -2,25 +2,25 @@
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||||
<title>Snap! Build Your Own Blocks</title>
|
<title>Snap! Build Your Own Blocks 4.1.1</title>
|
||||||
<link rel="shortcut icon" href="favicon.ico">
|
<link rel="shortcut icon" href="favicon.ico">
|
||||||
<script type="text/javascript" src="morphic.js"></script>
|
<script type="text/javascript" src="morphic.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="widgets.js"></script>
|
<script type="text/javascript" src="widgets.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="blocks.js"></script>
|
<script type="text/javascript" src="blocks.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="threads.js"></script>
|
<script type="text/javascript" src="threads.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="objects.js"></script>
|
<script type="text/javascript" src="objects.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="gui.js"></script>
|
<script type="text/javascript" src="gui.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="paint.js"></script>
|
<script type="text/javascript" src="paint.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="lists.js"></script>
|
<script type="text/javascript" src="lists.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="byob.js"></script>
|
<script type="text/javascript" src="byob.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="tables.js"></script>
|
<script type="text/javascript" src="tables.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="symbols.js"></script>
|
<script type="text/javascript" src="symbols.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="xml.js"></script>
|
<script type="text/javascript" src="xml.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="store.js"></script>
|
<script type="text/javascript" src="store.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="locale.js"></script>
|
<script type="text/javascript" src="locale.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="cloud.js"></script>
|
<script type="text/javascript" src="cloud.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="sha512.js"></script>
|
<script type="text/javascript" src="sha512.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript" src="FileSaver.min.js"></script>
|
<script type="text/javascript" src="FileSaver.min.js?version=2018-02-05"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var world;
|
var world;
|
||||||
window.onload = function () {
|
window.onload = function () {
|
||||||
|
|
Ładowanie…
Reference in New Issue