summaryrefslogtreecommitdiff
path: root/librelogo/source/LibreLogo
AgeCommit message (Collapse)Author
2022-04-22LibreLogo: add basic HTML formatting support to LABELLászló Németh
It's possible to format character spans in text of LABEL, as bold, italic and underline text using HTML tags <B>, <I> and <U> and their lowercase equivalents. For example, LABEL '<i>Italic, <b>also bold</b></i> and <u>underline</u>.' Use HTML "&lt;" to avoid of the replacement. For example, LABEL 'some &lt;i>text&lt;/i>' prints "some <i>text</i>" instead of "some text" with italic "text" in it. Change-Id: I70fd97763c6c488eba23c168a541b84cff0c90e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132786 Tested-by: László Németh <nemeth@numbertext.org> Reviewed-by: László Németh <nemeth@numbertext.org>
2020-11-02Fix typosAndrea Gelmini
Change-Id: Ifc4b1c24b41a9ca7e7b3adcc46e3498f3af5a0b7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105192 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2020-06-26LibreLogo: add command FONTTRANSPARENCYLászló Németh
similar to PENTRANSPARENCY, but for semi-transparent text. See commit 6fafae4d109f5768621a11deb394b1b0c4dc5606 (editeng: add UNO API for semi-transparent text) Change-Id: I5813c0954a1bb7740b3e164a39db7611753183a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97168 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2020-05-14fix python 3.8 deprecation warningsNoel Grandin
the logo changes were caused by > Support of nested sets and set operations as in Unicode Technical Standard > #18 might be added in the future. This would change the syntax, so to facilitate > this change a FutureWarning will be raised in ambiguous cases for the time being. > That includes sets starting with a literal '[' or containing literal character > sequences '--', '&&', '~~', and '||'. > To avoid a warning escape them with a backslash. Change-Id: I4d48be3df2eaadf03a9d1f5750c0c94b3abbf674 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94191 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-09pyuno,*: kill Python 2 support with fireMichael Stahl
Python 2 support was retained for use with --enable-python=system on RHEL7 and SLES. The time has arrived to remove it. Some .py files that were imported from third parties are not changed to enable easier replacement with updated versions if necessary. solenv/gdb should continue to support Python 2. bin/get-bugzilla-attachments-by-mimetype requires Python 2 to access Launchpad. Change-Id: I26414ae8e9f8402c90336af82020135685694217 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91697 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2019-06-07sanitize LibreLogo callsLászló Németh
Change-Id: Ie4d9858e5b4b3e55ab08416fb9338d2df34ee5e1 Reviewed-on: https://gerrit.libreoffice.org/73627 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2019-04-25LibreLogo: fix RANGE with a single function argumentLászló Németh
in a FOR loop, by removing the range(x,,)-like double commas in this case, too, during program compilation. Previous empty (missing) argument of RANGE was checked by the terminating comma, but it can be a white space after it, as in the following example: FOR i IN RANGE COUNT 'letter' [ PRINT i ] Change-Id: I67d0a4f089be06f30003d1b979b8f1801dbfa2e9 Reviewed-on: https://gerrit.libreoffice.org/71263 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2019-03-13tdf#124035 LibreLogo: support starting colon in variable namesLászló Németh
Regression from the commit 740b99783b5480fcd1e5fce7c1beb5967d015041 "tdf#120413 LibreLogo: handle complex Logo expressions". Change-Id: Iaae54efacf86a03a6611c154a40068ed058d43e7 Reviewed-on: https://gerrit.libreoffice.org/69138 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-11-08Adapt LibreLogo.py to Python 3.7 re.sub changeStephan Bergmann
In a build using the system Python during build (i.e., not using --enable-python=fully-internal) on Fedora 29 (where /usr/bin/python3 is 3.7.1), UITest_librelogo failed with > ====================================================================== > FAIL: test_compile_librelogo (compile.LibreLogoCompileTest) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/data/sbergman/lo-system/core/sw/qa/uitest/librelogo/compile.py", line 128, in test_compile_librelogo > self.assertEqual(test[1], re.sub(r'(\n| +\n)+', '\n', re.sub(r'\( ', '(', compiled)).strip()) > AssertionError: 'glob[52 chars]_#\n label(_y + _z)\n #_@L_i_N_e@_#\n#_@L_i_N_e@_#\nx(25, 26)' != 'glob[52 chars]_#\n label(_y + _z)\n #_@L_i_N_e@_#\n#_@L_i_N_e@_#\nx(25, ,26)' > global x > def x(_y, _z): > __checkhalt__() > #_@L_i_N_e@_# > label(_y + _z) > #_@L_i_N_e@_# > #_@L_i_N_e@_# > - x(25, 26)+ x(25, ,26)? + > > > ---------------------------------------------------------------------- due to an upstream Python change discussed at <https://bugs.python.org/issue34982#msg329418> "re.sub() different behavior in 3.7". I am not sure that upstream change really makes sense, despite that being explicitly confirmed in <https://bugs.python.org/issue34982#msg329420>. But lets tweak our code to adapt to that anyway. (There may be further places in LibreLogo.py that would need similar changes; I just fixed enough to make UITest_librelogo succeed for me.) Change-Id: I6c8f4b78f63953d582b88037fa56388b50af2b54 Reviewed-on: https://gerrit.libreoffice.org/63038 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-11-06Removed not-used variableAndrea Gelmini
Not sure about this, but just to catch the eye of the pro. Git blame says 2012, so maybe it's really no more used Change-Id: I737f3a1b2803f6ce98cb461350db18d06e0bf981 Reviewed-on: https://gerrit.libreoffice.org/62910 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
2018-11-06LibreLogo: function calls and definitions can be in any orderLászló Németh
with Logo syntax, too. Mutual recursion, for example drawing dragon curve (see in the unit test of the commit) doesn't need Python syntax any more to call the function before its definition. Change-Id: I93426a8c5be394fb4f1203e0490f7fa8d8491597 Reviewed-on: https://gerrit.libreoffice.org/62926 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-11-05Fix typoAndrea Gelmini
Change-Id: I9508839d67e5723db5f9155560fdaef333a689f8 Reviewed-on: https://gerrit.libreoffice.org/62911 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
2018-11-05tdf#120413 LibreLogo: handle complex Logo expressionsLászló Németh
Instead of the incomplete heuristic parenthesis expansion, now expressions with Logo functions and with own procedures are parsed completely, solving several issues with complex Logo expressions. For example, now functions with more than 1 argument don't need explicit parenthesization. NOTE: to handle both Logo and Python syntaxes of function calls, we differentiate the forms "f(x)" and "f (x)". The second form is handled as Logo syntax, not the Python one: f x*2 y z -> f(x*2, y, z) f(x*2, x, z) -> f(x*2, y, z) f (x*2) y z -> f((x*2), y, z) so if you want to avoid of the following expansion: sin 45 + cos 45 -> sin(45 + cos(45)) it's possible to use the following parenthesizations: sin(45) + cos 45 -> sin(45) + cos(45) (sin 45) + cos 45 -> (sin(45)) + cos(45) but not sin (45) + cos 45 -> sin((45) + cos(45)) Change-Id: Ib0602b47b8b678a352313f471599d44d6904ce17 Reviewed-on: https://gerrit.libreoffice.org/62901 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-11-05LibreLogo: stop program immediately at pressing CancelLászló Németh
button of the inputbox or messagebox dialog window, instead of waiting for the next __checkhalt__() in a loop. Change-Id: I1366ad06152e70321a21e78a626f7a89eb5a7ea0 Reviewed-on: https://gerrit.libreoffice.org/62900 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-10-26LibreLogo: support backslash escape sequence for apostrophesLászló Németh
(ASCII and typographical) and for enclosing quotes of string literals. Change-Id: I3caf3b707afa1fb41ba3afe9ff12ebce7ce63847 Reviewed-on: https://gerrit.libreoffice.org/62384 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-10-26LibreLogo: add unit tests for program compilationLászló Németh
from LibreLogo to Python Change-Id: I39df100a13efe3573b33cb856701cbeb0d95954d Reviewed-on: https://gerrit.libreoffice.org/62364 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-10-25LibreLogo: add unit testsLászló Németh
for program running and command name expansion, and for following fixes: tdf#106792: regression in line length and continuous line drawing tdf#100941: line breaking by "magic wand" tdf#120422: program lines are different paragraphs by "magic wand" Also add function __is_alive__() to LibreLogo.py to check LibreLogo program termination via XScript API. Change-Id: If884b3fd608a6e8077be853eb2dd17fbdfff2011 Reviewed-on: https://gerrit.libreoffice.org/62263 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2018-10-10tdf#120422 LibreLogo: fix page and line formatting of "magic wand"László Németh
Format program lines as paragraphs, instead of a single paragraph with line breaks: - basic debug feature "jump to the bad line" works after formatting - fix 2-page editing area: page break before the LibreLogo program Now formatting of program lines doesn't depend on the actual regular expression setting of Search & Replace functionality of Writer, so this is the intended fix for tdf#100941 "LibreLogo: 'magic wand' icon inserts incorrect '\n' characters instead of paragraph breaks". NOTE: setting also AlgorithmType, not only AlgorithmType2 prevents crashing of LibreOffice at opening Search & Replace dialog after usage of the "magic wand" icon. partial revert of the commit b1a6d157683b8182089ed5854179c8da8c416304 Resolves: tdf#100941 LibreLogo: replace literal '\n' with newline Change-Id: I34f581278fdae8d41967800d05662e37b731b59d Reviewed-on: https://gerrit.libreoffice.org/61610 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: László Németh <nemeth@numbertext.org>
2018-09-30LibreLogo: fix regression of line drawingLászló Németh
related to measurement changes, for example we got only 5.7 cm long line for "FORWARD 10cm", because the processed value measured in 0.0100 mm instead of the correct twips (pt/20 ~ 0.0176mm). Note: only the line drawing was shorter, the turtle path didn't change, so the turle could draw only dashed line for multiple FORWARD or BACK, instead of a continuous one. regression from commit 36bade04d3780bc54c51b46bb0b63e69789658a5 tdf106792 Get rid of SvxShapePolyPolygonBezier Change-Id: I16d75dbdadef5af9c545abc86575490559b3d54c Reviewed-on: https://gerrit.libreoffice.org/61145 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
2017-11-05tdf#113592 LibreLogo: add fallback localization to fix platform issuesLászló Németh
Update: python3 LibreLogo.py LibreLogo*.properties Change-Id: Ib631f53b47f1f00b14338534cc82d94f33c48233 Reviewed-on: https://gerrit.libreoffice.org/44203 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Andras Timar <andras.timar@collabora.com>
2017-04-12enum spelling: throught -> throughJustin Luth
git grep -l "[ _\.]THROUGHT" | xargs sed -i 's/THROUGHT/THROUGH/g' git grep -l -i "[ _\.]THROUGHT" | xargs sed -i 's/throught/through/g' In ENUMs: THROUGHT = THROUGH (preserved as valid alternate spelling) In ooxmlexport8 - unit test confirms THROUGH = THROUGHT Change-Id: Iae0fef9a8adcb96761989f38903a24ffb1b91e77 Reviewed-on: https://gerrit.libreoffice.org/35998 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-03-02Fix typosAndrea Gelmini
Change-Id: Ic6c41fbcc36c11a7528cde0986593a39c2d6738b Reviewed-on: https://gerrit.libreoffice.org/34803 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2016-11-27tdf#101603: fix lgnpath for MacOs in LibreLogoJulien Nabet
Change-Id: I280b6cd02a98037a71701a6a7a540c87de22d07f Reviewed-on: https://gerrit.libreoffice.org/31268 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2016-10-26normalize existing emacs/vim mode-lines in python filesMichael Stahl
Bunch of these were setting C++ or Make modes and icky tabs... Also, reportedly Emacs can figure out to enable python-mode automatically. Change-Id: I50072488fb92cb4d27aa3f74f717a28ae3967543
2016-07-18Resolves: tdf#100941 LibreLogo: replace literal '\n' with newlineTakeshi Abe
by simple SearchAlgorithms2's ABSOLUTE(=1), rather than using SearchAlgorithms' REGEXP(=1). BTW avoid RowDirection because it is for Calc only. Change-Id: I50ab460110ed43befb3e378e94f4fda0f2777f4d Reviewed-on: https://gerrit.libreoffice.org/27250 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2015-08-18fix broken PICTURE (group handling) of LibreLogoLászló Németh
(a regression caused by the PyUNO changes of commit af8143bc40cf2cfbc12e77c9bb7de01b655f7b30) Change-Id: I62112555a997f8f57059de21e0f0b174f3c673c6
2015-06-27tdf#92368 fix saved positions of arcs, segments drawn by LibreLogoLászló Németh
Change-Id: I8f622680ddd31d0a7048c14c85932ae495ae0f5e
2015-05-18LibreLogo: CLOSE closes, FILL fills points, tooLászló Németh
Example: drawing square within a circle: PENUP REPEAT 4 [ FORWARD 100 POINT BACK 100 RIGHT 360/4 ] FILL CIRCLE 200 Change-Id: Ica3ce44306fc985717ff73e8a3dec5dddf69f19b
2015-04-20tdf#90723 LibreLogo: missing oldlcap initializationLászló Németh
Change-Id: I0781e4d8d9a9c2c9b8ef9968babeca8274d126ec
2014-03-31fdo#75109 librelogo: fix localized proceduresLászló Németh
Change-Id: Ia6edb02b871a41828758ba5fd5376c811c4084cc
2014-03-18librelogo UI fixes, gradients, log10, improved random colorsLászló Németh
Change-Id: I7ef59f9ce589ab0d68b02c1b2ba61c061f9c51ae
2014-02-04librelogo: keep comments at translationLászló Németh
Bug report: http://openscope.org/browse/OOO-837 Change-Id: I5c17ed6059107ec8fc12bf9f411e52b22f131065
2014-01-30LibreLogo is not a UNO componentStephan Bergmann
Change-Id: I48055d84fd078a131ed8f620575a462fcb101019
2014-01-08Remove bad Emacs mode lineStephan Bergmann
Change-Id: Iffefd979cbe5c3ba8daafa92e33e9a288d2d906c
2014-01-08Some ConfigurationProvider -> theDefaultProvider simplificationsStephan Bergmann
Change-Id: I7c25cd94f8a1ca339f7423c26f21f13c7a68906d
2014-01-07librelogo: fix messagebox (API changes)László Németh
Change-Id: I7fe8c26b7ca93319658c14abd1142f1623141ce8
2014-01-01fdo#73199 librelogo: path, interop. and color name fixesLászló Németh
Change-Id: I201c498b0ff002ed92c2fcf9847ac1efc50b3fde
2013-10-28fdo#70951 librelogo: fix parsing problem of functionsLászló Németh
Change-Id: I2e85a795064ee9e58f3389aec94c942f6ae77612
2013-10-25fdo#70858 librelogo: fix Logo program halt at font settings (Windows)László Németh
Change-Id: I3c51ba693caa80c8b530a9eee932a48a125e2eca
2013-10-25librelogo: fix division with measurementsLászló Németh
Change-Id: I2204002533bbb3e7c801b3228b0310a42b19a882
2013-10-24librelogo: more invisible settings (on UI, hatching), see ChangeLogLászló Németh
Change-Id: Icb0d195ba82b023d370847242b4e3b5546fa0320
2013-10-24librelogo: fix Writer/Draw synchronization in cropped SVG exportLászló Németh
Change-Id: Id7dc7a2853a8c56ee56eab55c078650e16c278fd
2013-10-24librelogo: fix blinking LABELLászló Németh
Change-Id: I807dda255b741996480116fab22377b39bf963b4
2013-10-23librelogo: support linecap settingsLászló Németh
Change-Id: I3d501900f4a2bc2424f4133e4fb9f3efe8b0c510
2013-10-23librelogo: optional SVG/SMIL looping (at ending SLEEP)László Németh
Change-Id: I3c05c5f7e1721a20e6eab12e2aa620aa917b7378
2013-10-22librelogo: fix black (not refreshed) invisible filling colorLászló Németh
Change-Id: If0f37d480a745a4d245c4c6cf114374223fda610
2013-09-06fdo#69041 LibreLogo: fix SVG/SMIL timing with filled polylinesLászló Németh
Change-Id: Icebd47d57a830986c371a62ec7dab81ca8fd930a
2013-08-29LibreLogo fixes (eg. fdo#68713 fix SVG cropping), see ChangeLogLászló Németh
Change-Id: Ibb1cb41f526b4117e2d7ef39a2101286511bf48f
2013-07-18librelogo: fix LibO SVG export for W3C Validator/WikipediaLászló Németh
Change-Id: I19b01b08ab08540cc8e9f7255d13663ba7ce1d02
2013-07-15librelogo: hexa arguments fdo#66917 and cropped SVG savingLászló Németh
Change-Id: I12ad6b63221bce0ed7d988f5c0f91dce81055ec0