ajardon / blockly Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/blockly
Automatically exported from code.google.com/p/blockly
This could be great and would be very usable if it had save / load, copy /
paste item and selected block (ctrl-c, ctrl-x, ctrl-v), undo / redo(ctrl-z,
ctrl-y).
Maybe this is in the plan already, but priority for these items should be above
adding further programming abilities.
Please provide any additional information below
Adding jsfiddle like forking and github integration would put it over the top.
Original issue reported on code.google.com by [email protected]
on 11 Jun 2012 at 3:39
To reproduce:
1/ Create a count loop block. Note default index variable is 'x'.
2/ Create another count loop block or for-each loop block as the action within
the first block. Note default index variable is 'x' for the new block.
3/ Rename the index variable for the inner loop using the rename variable
context menu to 'y'.
4/ The index variable for the inner AND outer loops as been renamed to 'y'.
This makes creating nested loops difficult. The simplest solution may be to
ensure that when adding a count or for-each loop block the default index
variable is unique to start with.
At present the only way to create nested loops is to drag on one loop block at
a time and rename the variable straight away before dragging on any other loop
blocks. Not end of the world but easy to forget.
This was seen using the source corresponding to svn revision 218.
Thanks
Gary
Original issue reported on code.google.com by [email protected]
on 7 Jun 2012 at 9:46
What steps will reproduce the problem?
1.download rev 226
2.run index.html in google-chrome
3.
What is the expected output? What do you see instead?
Please see video
http://youtu.be/IG28hl_HeG4
What version of the product are you using? On what operating system?
r. 226
linux mint 12
Please provide any additional information below.
please see video
http://youtu.be/IG28hl_HeG4
Original issue reported on code.google.com by [email protected]
on 9 Jun 2012 at 8:40
If Blockly designed for newbies to programming, you should pay attention to
this point: when I use the repeat unit (for example), it required to insert a
block of Logic (boolean), but may by I do not know about it and the program
will not to work.
When choosing a block can immediately insert required Blocks (Logic for Repeat
block), saving the user time and without confusing it later when the program
will not work.
Original issue reported on code.google.com by [email protected]
on 8 Jun 2012 at 9:45
Request that you move blockly_compressed.js out of the source directory, as it
makes grepping through the code very difficult. I'd suggest either putting it
in the demo directory, or in a separate "compressed" directory.
Thanks.
Original issue reported on code.google.com by [email protected]
on 2 Jun 2012 at 3:04
What steps will reproduce the problem?
1.
2.
3.
What is the expected output? What do you see instead?
What version of the product are you using? On what operating system?
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 9 Jun 2012 at 9:21
Hi,
This doensnt work in IE9,which is the browser used most in educational
Enviroments, This would be Great if it could
Thanks
John
Original issue reported on code.google.com by [email protected]
on 13 Jun 2012 at 10:57
What steps will reproduce the problem?
1. try to add two strings together
2.
3.
What is the expected output? What do you see instead?
concat strings / blocks don't glue
What version of the product are you using? On what operating system?
online
Please provide any additional information below.
http://youtu.be/hpQIabAppAA
Original issue reported on code.google.com by [email protected]
on 18 Jun 2012 at 9:30
What steps will reproduce the problem?
1. open blockly code demo app at
http://blockly-demo.appspot.com/blockly/demos/code/index.html
2. create block 'count with' block with x from 1 to 10
3. choose javascript tab and check "for" sentence is "for (x = 1; x <= 10; x++)"
4. choose python tab and check "for" sntence, and you will find "for x in
range(1, 10):"
What is the expected output? What do you see instead?
expected "for x in range(1, 10):"
What version of the product are you using? On what operating system?
latest on chrome browser
Please provide any additional information below.
it's critical bug :)
Original issue reported on code.google.com by [email protected]
on 1 Jun 2012 at 3:05
What steps will reproduce the problem?
1. set item "Hello, world!"
2. set item to UPPER CASE get item
3. print get item
What is the expected output? What do you see instead?
expected: HELLO, WORLD! but saw only blank window.
What version of the product are you using? On what operating system?
Code on r231-read-only (from svn). Ubuntu x86, Chrome 19.0.1084.56
Please provide any additional information below.
lower case isn't work too. but _no_ problem with Title Case, it works well and
prints Hello, World!
sorry for my english.
good luck, guys. it's really nice project.
Original issue reported on code.google.com by [email protected]
on 11 Jun 2012 at 7:24
What steps will reproduce the problem?
1. user close, refresh, or press back on browser
2. user lose their current work
What is the expected output? What do you see instead?
Use local storage to save and restore current work when user leave or refresh
current page
/**
* backup code blocks
*/
function backup_blocks() {
if(typeof(Storage)!=="undefined")
{
var xml = Blockly.Xml.workspaceToDom( Blockly.mainWorkspace );
localStorage.setItem('data',Blockly.Xml.domToText( xml ));
console.log("backuped");
} else {
// Sorry! No web storage support..
}
}
/**
* restore code blocks
*/
function restore_blocks() {
if(typeof(Storage)!=="undefined"){
if(localStorage.data!=null){
var xml = Blockly.Xml.textToDom(localStorage.data);
Blockly.Xml.domToWorkspace( Blockly.mainWorkspace, xml );
console.log("restored");
}
} else {
// Sorry! No web storage support..
}
}
then we can put restore_blocks() in init() method,
and backup_blocks() in unload event
$(window).unload(backup_blocks); (a jquery statement)
To make event handling simpler, I'd like to include jquery to simplifier the
works.
Is there any concern not to do it?
Original issue reported on code.google.com by gasolin
on 15 Jun 2012 at 2:12
What steps will reproduce the problem?
After r270 there's touch device support.
Here are the test results on Android browsers:
* Chrome android (can't use scrollbar to select block, blocks do not connect)
* Mozilla aurora (can't use scrollbar to select block, blocks do not connect),
* android 4.0 build-in browser (weird after select from menu)
What is the expected output? What do you see instead?
Work flawlessly on Tablet (Android >4.x or iPad)
Original issue reported on code.google.com by gasolin
on 22 Jun 2012 at 7:14
In the attached program the procedure 'do restore' contains a [get item at [0]
in list [call top]] which is translated into 'from = top2()[-1];' in
javascript. That seems wrong.
Original issue reported on code.google.com by [email protected]
on 11 Jun 2012 at 2:58
Attachments:
Unless I'm missing it, it doesn't appear that there is a way to call procedures
yet, or give them parameters ;)
Original issue reported on code.google.com by [email protected]
on 1 Jun 2012 at 5:15
Fix bug in conversion of operator "^" to python.
Original issue reported on code.google.com by [email protected]
on 3 Jun 2012 at 11:25
Attachments:
What steps will reproduce the problem?
1. Place a create list with on a create list with.
What is the expected output? What do you see instead?
It works fine for the first list added, but any other lists break it.
Expected:
item = [[0, 0], [0, 0]];
Actual:
item = [[0, 0], ];
What browser are you using?
Chrome and Firefox
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 28 Jun 2012 at 7:58
Trying to implement some algorithm in Blockly, I found out that the list has no
ability of stack.
For my quick hack. I use mathematics + symbol for joining lists and render it
in Python, but this doesn't work when render in JavaScript (I haven't try Dart
yet).
This happen because JS convert lists into string then concat it. So the output
from list + list is string.
My other approach for JS is to creating a counter, store length of the list to
it, increasing it by 1, and setting new item at that counter. Of cause, this
doesn't work in Python.
Popping item out of the list also difficult too. I have to create empty temp
list then looping for every item except the last one (Python). Or decreasing
the counter by 1, so the last item I should get will not be the last item
stored (JS).
Original issue reported on code.google.com by neizod
on 15 Jun 2012 at 11:10
What steps will reproduce the problem?
To localize Blocks list. once to translate 'Procedures' and 'Variables' in
category, I encounter:
category: null, // Procedures are handled specially.
What is the expected output? What do you see instead?
Able to localize Blocks category of 'Procedures' and 'Variables'
Original issue reported on code.google.com by gasolin
on 4 Jun 2012 at 11:21
Is there a way to run code, built in "code demo", and view result of program
execution?
Original issue reported on code.google.com by [email protected]
on 5 Jun 2012 at 6:40
What steps will reproduce the problem?
1. Load RTL demo.
2. Click on 'Game Over' text.
3. Click again.
What is the expected output? What do you see instead?
Expected, cursor should be a click position.
Actual, no cursor seen.
Please use labels and text to provide additional information.
WebKit only.
Original issue reported on code.google.com by [email protected]
on 4 Jun 2012 at 10:51
How to name parameter(s) in a function?
I was able to rename the function but not able to add parameter to the
function. Is it possible, if yes, then it is not working. If no, please
consider adding this functionality.
Please provide any additional information below.
linux mint 12/ G. Chrome 19.
http://youtu.be/nCY-bKbxLmg
Original issue reported on code.google.com by [email protected]
on 13 Jun 2012 at 2:41
Branch name:
maze with different start location
Purpose of code changes on this branch:
I'd like to bring mnagaku's patch from
http://fgj12.ecloud.nii.ac.jp/google-blockly/demos/maze/
(discussed in
https://groups.google.com/forum/?fromgroups#!topic/blockly/JqTXpiqT66I)
To add extra start locations for maze game, which add more fun to write and
test script if it works in more cases.
The working demo (en) is at
http://www.gasolin.idv.tw/public/blockly/demos/maze/index.html
Original issue reported on code.google.com by gasolin
on 19 Jun 2012 at 7:01
How change the ways of the maze?
In the Future?
Original issue reported on code.google.com by [email protected]
on 3 Jun 2012 at 10:51
Once a variable is created, there is currently no way to delete it.
- Need function in Blockly.Variables for programmatic interaction
- Need means of deleting a variable from the gui, possibly via an additional
item in Blockly.Variables.dropdownCreate().
This requires some thought, though. Should deleting a variable that is used
elsewhere cause it to disappear globally? Should the deletion be ignored until
all uses are removed?
Original issue reported on code.google.com by [email protected]
on 10 May 2012 at 5:23
What steps will reproduce the problem?
algorithm:
1. set item <- promt for text with message "some text"
2. set item <- to Title Case <- get item
3. print <- get item
runtime - input some text in russian, i.e. "текст для теста"
What is the expected output? What do you see instead?
expected - "Текст Для Теста". result - "текст для
теста"
What browser are you using?
Chrome 20.0.1132.34 beta-m.
Please provide any additional information below.
Upper case and lower case works. Problem only with Title Case.
I understand, that non-english support is not a priority. Just want to notice
of such a problem. Hello from Issue28 maker :D
p.s. sorry for my english.
Original issue reported on code.google.com by [email protected]
on 20 Jun 2012 at 4:10
Attachments:
Selecting from the block category menu, possibly scrolling, and dragging a
block to insert each block is unacceptably slow and even more unacceptably
tedious. I understand it is standard from Scratch and its descendants, but
there is such a better way.
Clicking in a region where an empty block can be placed should bring up a
context sensitive menu of the blocks which can be inserted in that region. If
there are too many of them for a particular context, then a cascading set of
menus should be displayed. In regions where single left-clicking might already
be defined, right-clicking or double-clicking could be used for such context
menus to insert new blocks.
This would eliminate more than 75% of unnecessary difficult mouse operations
spanning a large proportion of the window width, and very substantially improve
user experience.
Original issue reported on code.google.com by [email protected]
on 16 Jun 2012 at 8:03
What steps will reproduce the problem?
1.open chrome
2.try to run any example
3.nothing works
What is the command line to open chrome to get these examples working?
I am trying:
chromium-browser --allow-file-access --allow-file-access-from-files
google-blockly-read-only/demos/index.html
When i click on run program nothing happens, and i see this error in the
javascript console:
Uncaught ReferenceError: Audio is not defined
index.html:65Uncaught ReferenceError: Blockly is not defined
index.html:54Uncaught ReferenceError: Blockly is not defined
Resource interpreted as Image but transferred with MIME type
image/x-win-bitmap:
"file:///home/brett/google-blockly-read-only/media/handopen.cur".
Resource interpreted as Image but transferred with MIME type
image/x-win-bitmap:
"file:///home/brett/google-blockly-read-only/media/handclosed.cur".
index.html:65Uncaught ReferenceError: Blockly is not defined
index.html:54Uncaught ReferenceError: Blockly is not defined
Original issue reported on code.google.com by [email protected]
on 14 Jun 2012 at 1:50
What steps will reproduce the problem?
1. Fix it!
2. Fix it!
3. Fix it!!!!!!
Original issue reported on code.google.com by [email protected]
on 5 Jun 2012 at 2:41
blockly publish a aplication in appspot that can be used to program directly on
the site as a medium blockly.appspot.com develop, in the same place in the
Export button, js, etc.
that used to blockly's help you can simply create an application for appspot,
that is, to teach blockly work with google code appspot, that could be used to
create their own applications
Original issue reported on code.google.com by [email protected]
on 5 Jun 2012 at 7:39
Opera 10 was originally fully supported.
Opera 11 became unresponsive after a context menu was shown.
Opera 12 crashes on load.
Each version of Opera seems to be worse than the previous one. Google is
committed to supporting Opera, however at this point the next move is clearly
in Opera's hands. The current crasher bug is DSK-366610 within Opera's bug DB.
Once they resolve this and Opera 12 stops crashing, then we'll take another
look.
Original issue reported on code.google.com by [email protected]
on 15 Jun 2012 at 11:17
see attached diff
Original issue reported on code.google.com by [email protected]
on 9 May 2012 at 4:06
Attachments:
First off, great work! I'm enjoying this a lot.
I noticed that dragging blocks didn't work on the iPad. Wiring up some touch
events seems to fix it, more or less (there's some flakiness when the blocks
get near the bottom of the screen which *may* be related to scrolling, but I
haven't confirmed that).
In the init function in index.html:
// Touch event handler for Google Blockly.
// Tony Hursh. Based loosely on some code at: http://vetruvet.blogspot.com/2010/12/converting-single-touch-events-to-mouse.html
// Same license as Blockly itself.
Blockly.TouchEvents = {};
Blockly.TouchEvents.touchMapper = {
"touchstart" : "mousedown",
"touchmove" : "mousemove",
"touchend" : "mouseup"
};
Blockly.TouchEvents.touchHandler = function(event) {
if (event.touches.length > 1){
return; // Punt on multitouch events.
}
var touchPoint = event.changedTouches[0];
var mappedEvent = Blockly.TouchEvents.touchMapper[event.type];
if(mappedEvent == null){ // We don't handle this event type (whatever it is). Punt.
return;
}
var simulatedEvent = document.createEvent("MouseEvent");
simulatedEvent.initMouseEvent(mappedEvent, true, true, window, 1, touchPoint.screenX, touchPoint.screenY,
touchPoint.clientX, touchPoint.clientY, false, false, false, false, 0, null);
touchPoint.target.dispatchEvent(simulatedEvent);
event.preventDefault();
};
Blockly.svgDoc.ontouchstart = Blockly.TouchEvents.touchHandler;
Blockly.svgDoc.ontouchmove = Blockly.TouchEvents.touchHandler;
Blockly.svgDoc.ontouchend = Blockly.TouchEvents.touchHandler;
Original issue reported on code.google.com by [email protected]
on 14 Jun 2012 at 3:45
What steps will reproduce the problem?
1. Solve the maze https://blockly-demo.appspot.com/blockly/demos/maze/index.html
2. Try to save
3. Try to load
I created a Chrome extension that enables saving and loading on all the blockly
demos. It'd be nice if the examples on appspot supported save/load without an
extension.
https://github.com/bootstraponline/save_load_blockly_demos
Original issue reported on code.google.com by [email protected]
on 2 Jun 2012 at 8:31
What steps will reproduce the problem?
1. use some non-ASCII word as variable
2. the generated code shows '__' instead of the non-ASCII word
approach:
We can use 'encodeURI' to escape non-ASCII variables to ASCII code
== get ==
from
variableDB_.getName(this.getTitleText(1)
to
variableDB_.getName(encodeURI(this.getTitleText(1))
== set ==
from
variableDB_.getName(this.getTitleText(1)
to
variableDB_.getName(encodeURI(this.getTitleText(1))
Original issue reported on code.google.com by gasolin
on 9 Jun 2012 at 6:38
Clicking on the text box in a text or procedure block and then attempting to
place the cursor by clicking anywhere in the highlighted text does not work.
Instead, the block of text un-highlights and key based editing is disabled
until some text is highlighted.
The use case is trying to add more text at the begging or end, or replace just
a section text. The only way keyboard input is accepted is when one or more
characters is highlighted.
I am using chrome browser on Win7-64.
Original issue reported on code.google.com by [email protected]
on 16 Jun 2012 at 3:27
What steps will reproduce the problem?
1. Look at the available blocks
2. Think about how you would test whether you've reached the end of the maze.
3. Give it up as a bad job.
What is the expected output? What do you see instead?
I expected a block like, "At end point"
What version of the product are you using? On what operating system?
Chrome on OS/X.
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 1 Jun 2012 at 12:40
What steps will reproduce the problem?
1. Create a variable, rename it "length" (without quotes)
2. Click on the XML tab.
3. Click on the Blocks tab.
What is the expected output? What do you see instead?
I expect to return to the blocks tab, however it will no longer select.
What version of the product are you using? On what operating system?
OSX 10.7.4 - Chrome Version 19.0.1084.53
Original issue reported on code.google.com by [email protected]
on 15 Jun 2012 at 7:45
I don't see any comparison operators like >, >=, <, <= or =
Original issue reported on code.google.com by [email protected]
on 12 Jun 2012 at 4:31
request from salmodan in Issue 7
Hi,
I recommend that following changes:
Change "Clean" button to "New" and add "Do you want to save changes?"
"New" is a more standard english name for the function.
A warning dialog should be provided is any work is not saved that shows the
following:
Do you want to save changes?
Save Discard Cancel
Original issue reported on code.google.com by gasolin
on 16 Jun 2012 at 7:36
What steps will reproduce the problem?
1. Check out the code
2. Fire up chromium
3. Navigate to the maze demo via file://
You get a popup with the text:
Error: Unable to communicate between frames.
This may be due to a security restriction preventing
access when using the file:// protocol.
I think this is probably yet another instance of
http://code.google.com/p/chromium/issues/detail?id=47416
but with a dash of irony to spice it up.
Original issue reported on code.google.com by [email protected]
on 14 Jun 2012 at 12:52
May be showing menu on mouse hover will be more attractive than clicking on it?
With this fix will be saved user clicks and time.
Original issue reported on code.google.com by [email protected]
on 10 Jun 2012 at 10:00
Need user input for interactive programing.
I implement javascript & python version of prompt(input) block.
demo: http://www.gasolin.idv.tw/public/blockly/demos/code/index.html
in language/en/text.js
Blockly.Language.text_prompt = {
// Prompt statement.
category: 'Text',
helpUrl: 'http://www.liv.ac.uk/HPC/HTMLF90Course/HTMLF90CourseNotesnode92.html',
init: function() {
this.setColour(160);
this.addTitle('prompt');
this.appendInput('', Blockly.INPUT_VALUE, 'TEXT');
this.setOutput(true);
this.setTooltip('Prompt for user input with the specified text.');
}
};
in generator/python/text.js
Blockly.Python.text_prompt = function() {
// prompt a user input dialog.
var argument0 = Blockly.JavaScript.valueToCode(this, 'TEXT', true) || '\'\'';
return 'raw_input(' + argument0 + ');\n';
};
in generator/javascript/text.js
Blockly.JavaScript.text_prompt = function() {
// prompt a user input dialog.
var argument0 = Blockly.JavaScript.valueToCode(this, 'TEXT', true) || '\'\'';
return 'prompt(' + argument0 + ');\n';
};
in dart..
no idea, may be
http://stackoverflow.com/questions/10257744/is-it-possible-to-read-from-console-
in-dart
Original issue reported on code.google.com by gasolin
on 10 Jun 2012 at 5:47
What steps will reproduce the problem?
1. Click on "Procedures"
2. Notice there is not "Call" block
3. Spend time looking through every other block menu item until giving up and
going back to "Procedures" and find that a new "Call Procedure" item has been
magically added.
What is the expected behavior?
Users will expect "Call Procedure" and "Call Prodecure2" to be available
always. If there is concern about users not knowing they need to be used
together, then have them both drag onto the page when one of them is dragged.
Similar to how they both get deleted if one of them is dragged to the trash.
What version of the product are you using? On what operating system?
Can not tell what version it is. Using chrome on Win7-64
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 16 Jun 2012 at 3:06
I clicked the following simple program
<xml>
<block type="variables_set" inline="false" x="134" y="56">
<title i="1">item</title>
<value i="0">
<block type="math_number">
<title i="0">0</title>
</block>
</value>
<next>
<block type="procedures_callnoreturn">
<mutation name="procedure"></mutation>
<next>
<block type="text_print" inline="false">
<value i="0">
<block type="variables_get">
<title i="1">item</title>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
<block type="procedures_defnoreturn" x="348" y="69">
<title i="0">procedure</title>
<statement i="0">
<block type="variables_set" inline="false">
<title i="1">item</title>
<value i="0">
<block type="math_number">
<title i="0">1</title>
</block>
</value>
</block>
</statement>
</block>
</xml>
When running the JavaScript code the output is 1
When running the Python code the output is 0
Before running the Python code you have to move the function definition to the
top of the program or you will get an error.
Either at global item in the python or var item in JavaScript inside the
function definition would correct the Problem.
Or better let the user choose to have global or local variable.
Original issue reported on code.google.com by [email protected]
on 5 Jun 2012 at 8:29
What steps will reproduce the problem?
1. try to make a 'guess number' sample with issue 24 read/input block
the sample is :
number = 23
guess = int(raw_input('Enter an integer : '))
if guess == number:
print 'Congratulations, you guessed it.' # New block starts here
print '(but you do not win any prizes!)' # New block ends here
elif guess < number:
print 'No, it is higher than that.' # Another block
# You can do whatever you want in a block ...
else:
print 'No, it is lower than that.'
# you must have guess > number to reach this block
print 'Done'
What is the expected output? What do you see instead?
It works fine in javascript, but not for python output, since the generated
python code lack of 'int' to do the type conversion.
one way is to provide additional TYPE info while get user input, thus we'll
have one block.
another way is to provide a set of type conversion blocks, which might be break
the 'no need to learn formats' rule.
Original issue reported on code.google.com by gasolin
on 12 Jun 2012 at 12:21
Since (if I'm not mistaken) all Blockly variables are global, the generated
Python code incorrectly scopes variables locally if they are assigned.
What steps will reproduce the problem?
Build the following Blockly program:
procedure setx
set x "Hello"
procedure printx
print (get x)
call setx
call getx
Running this program displays "Hello".
What is the expected output? What do you see instead?
This generates the following Python program:
x = None
def setx():
x = 'Hello'
def printx():
print x
setx()
printx()
Running this code prints "None". That is because in setx, x is a local variable
because it is assigned. (Note that in printx, x is correctly treated as a
global variable because it is not assigned.)
The Python code generator needs to add the 'global' statement for any variable
assigned in a procedure. For example:
def setx():
global x
x = 'hello'
What version of the product are you using? On what operating system?
SVN r228. Mozilla Firefox 13.
Original issue reported on code.google.com by [email protected]
on 10 Jun 2012 at 4:03
http://youtu.be/2g_BOmm2_wU
I would really like to see a demo on blockly to create / solve math problems.
Most schools drill drill drill on math (which works) but the teachers rarely
connect math to logic and even less so math to coding logic and algorithms.
Blockly can fix the lack of tools issue.
Please consider making a demo for math problems... a couple of good reasons:
a)it will get more teachers to start using blockly in the classroom
b) it will solidify the connection between math / logic/ coding
further resources: khan academy
and
codecademy
example:
http://www.codecademy.com/courses/functions-in-javascript-2-0/4#!/exercises/2
var power = function (base, exponent) {
var result = 1;
for (var i = 0; i < exponent; i++) {
result = result * base;
}
return result;
};
power(prompt("Enter base"), prompt("Enter exponent"))
thank you
Dennis
Original issue reported on code.google.com by [email protected]
on 9 Jun 2012 at 10:16
What steps will reproduce the problem?
1. change to other language (ex: en to zh_tw)
2. the word shows mess fonts
To solve this problem, just add a line after <head> tag in
* demos/code/frame.html
* demos/maze/frame.html
* demos/rtl/index.html
{{{
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
}}}
Original issue reported on code.google.com by gasolin
on 4 Jun 2012 at 10:59
What steps will reproduce the problem?
1.I go to http://blockly-demo.appspot.com/blockly/demos/code/index.html
2.and I see in changes : Prompt block now has types (issue 29).
but there is no prompt block in
http://blockly-demo.appspot.com/blockly/demos/code/index.html
Please put rev # on
ttp://blockly-demo.appspot.com/blockly/demos/code/index.html
so users know what they are playing with.
thank you!
Dennis
Original issue reported on code.google.com by [email protected]
on 19 Jun 2012 at 10:29
from group discussion
https://groups.google.com/forum/?fromgroups#!topic/blockly/xwhG5dBZFbE
It need some balance since Blockly needs to declare the block piece by piece
(not only just about the text, but where to put input fields and dropdown
menu), and not all languages are ordered as english syntax.
For example, I need to change some string and input column order of the
original Blockly block, to reflect more comfortable Traditional Chinese syntax.
Not sure if JS support the override feature that we can extract strings from
basic english version, and allow to override functions that needs the syntax
customization. Then we will have an easier multi-language friendly structure.
TODO:
Extract Block Strings to _messages.js for easier i18n
1. Rename language/en to language/common,
2. Extract strings from language/en to _messages.js
The string format is 'Blockly.LANG_CONTROLS_' + block id, ex:
// Control Blocks
Blockly.LANG_CONTROLS_IF_HELPURL =
'http://code.google.com/p/blockly/wiki/If_Then';
Blockly.LANG_CONTROLS_IF_TOOLTIP_1 = 'If a value is true, then do some
statements.';
Blockly.LANG_CONTROLS_IF_TOOLTIP_2 = 'If a value is true, then do the first
block of statements.\n' +
'Otherwise, do the second block of statements.';
Blockly.LANG_CONTROLS_IF_TOOLTIP_3 = 'If the first value is true, then do the
first block of statements.\n' +
'Otherwise, if the second value is true, do the second block of statements.';
Blockly.LANG_CONTROLS_IF_TOOLTIP_4 = 'If the first value is true, then do the
first block of statements.\n' +
'Otherwise, if the second value is true, do the second block of statements.\n' +
'If none of the values are true, do the last block of statements.';
Original issue reported on code.google.com by gasolin
on 22 Jun 2012 at 1:55
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.