|
| 1 | ++ new |
| 2 | +* changed |
| 3 | +- removed |
| 4 | + |
| 5 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 6 | +basil.js x.x.x DAY MONTH YEAR |
| 7 | + |
| 8 | ++ basil works without the b. prefix now |
| 9 | ++ function draw() works without b.go() now, function loop() replaces b.loop() |
| 10 | ++ User settings (units, anchor point etc.) are now saved before and restored after script execution |
| 11 | ++ Added mode() to set performance modes (VISIBLE, HIDDEN, SILENT) during script execution |
| 12 | ++ Added frameRate() to set frame rate during looping scripts |
| 13 | ++ Added transform() function to transform page items independent of the current matrix |
| 14 | + and to measure current transforms of page items |
| 15 | ++ Added point(), quad() and triangle() to draw the corresponding shapes |
| 16 | ++ Added referencePoint() function to set the reference point for transform() |
| 17 | ++ Added file() and folder() |
| 18 | + gets files and folders or creates them |
| 19 | ++ Added files() |
| 20 | + gets all files of a folder |
| 21 | ++ Added selectFile(), selectFiles() and selectFolder() |
| 22 | + opens a selection dialog to select files or folders |
| 23 | ++ Added applyParagraphStyle(), applyCharacterStyle(), applyObjectStyle(), |
| 24 | + set the style of a text object/page item. |
| 25 | + see examples/typography/styles.jsx |
| 26 | ++ Added applyMasterPage() |
| 27 | + applies a master page to a page |
| 28 | ++ Added masterPage() |
| 29 | + activates and returns a master page |
| 30 | ++ Added arrange() |
| 31 | + allows to arrange page items or layers in z-space |
| 32 | ++ Added JSON.parse() and JSON.stringify() to replace JSON.decode() and JSON.encode() |
| 33 | + parsing and stringifying are much more reliable now and can be controlled via |
| 34 | + additional options |
| 35 | ++ Added loadJSON() to load an parse JSON files one step |
| 36 | ++ Added saveJSON() to stringify data and save it as JSON file in one step |
| 37 | ++ Added property() |
| 38 | + sets a property of an object to a given value |
| 39 | ++ Added graphics() to loop over graphics in a given container |
| 40 | ++ Added textStyleRanges() to loop over text style ranges in a given container |
| 41 | ++ Added swatch() |
| 42 | + returns a color or gradient of a given name |
| 43 | ++ Added revert() |
| 44 | + reverts the document to a fresh state |
| 45 | ++ Added contains() |
| 46 | + checks if a string or an array contain specific values |
| 47 | ++ Added SCRIPTNAME |
| 48 | + holds the name of the current script |
| 49 | ++ Added isInteger() |
| 50 | + checks if a given variable is an integer |
| 51 | + |
| 52 | +* translate(), rotate() and scale() now behave like they do in Processing and change the current matrix |
| 53 | +* basil scripts will by default use the user's default units or the current units of the document, |
| 54 | + as well as the transformation reference point set by the user |
| 55 | +* text() can be used to place text into shapes or as text paths on graphic lines |
| 56 | +* image() now allows to place images into text frames as well |
| 57 | +* canvasMode() behaves a lot more reliable now |
| 58 | + FACING_PAGES, FACING_MARGINS, FACING_BLEEDS, fixed for 3+ page spreads |
| 59 | + BLEED, MARGIN, FACING_MARGINS, FACING_BLEEDS, fixed for single page in facing_pages mode |
| 60 | + all modes work now for margins or bleeds of different sizes |
| 61 | + resetMatrix() does not reset the canvas mode anymore |
| 62 | +* performance constants are called VISIBLE, HIDDEN and SILENT now and are used together with the new mode() function |
| 63 | +* rect() now allows additional parameters to add rounded corners |
| 64 | +* paragraphStyle(), characterStyle() and objectStyle() are expanded: |
| 65 | + They can now get an applied style from a text object/page item and can |
| 66 | + make use of an optional object with property name/value pairs to set |
| 67 | + the properties of the style. |
| 68 | +* inspect() has been completely reworked: |
| 69 | + Much faster, especially for complex objects. |
| 70 | + Nicer presentation of results (tree style). |
| 71 | + Options to show or hide properties, values and/or methods. |
| 72 | + Option to show only certain properties. |
| 73 | + Lots of minor fixes. |
| 74 | +* page(), pageNumber() and removePage() now also accept page name strings as parameters |
| 75 | +* pageCount() can now also be used to set the doc's page count |
| 76 | +* previousPage() and nextPage() now work as expected |
| 77 | +* when drawing closed vertex paths, endShape() instead of beginShape() now takes the |
| 78 | + CLOSE constant as argument |
| 79 | +* println() and print() can now print multiple parameters to console |
| 80 | +* trimWord() now correctly trims all punctuation from word borders |
| 81 | +* text() now respects the currently set rectangle mode |
| 82 | +* rectMode() now works with RADIUS |
| 83 | +* Improved the speed of clear() considerably |
| 84 | +* textFont() does no longer stop the script if a font is missing, but gives a console warning instead |
| 85 | +* isText() now correctly identifies collections of multiple text objects as text |
| 86 | + (Characters, Words, Lines etc.) |
| 87 | +* size() now can use existing page size presets as a parameter with an optional |
| 88 | + second parameter for page orientation (introducing PORTRAIT and LANDSCAPE) |
| 89 | +* duplicate() now duplicates page items reliably in place, even when in FACING canvas modes |
| 90 | +* selection() can now be used to set the selection |
| 91 | +* label() can now be used to assign a label to a page item |
| 92 | +* endsWith() and startsWith() now also work for arrays |
| 93 | +* guideX() and guideY() now correctly place guides in facing canvas modes |
| 94 | +* guideY() now places a guide spanning the entire spread when in facing canvas modes |
| 95 | +* Updated categories and sub-categories of many functions to better align to Processing/p5.js categories |
| 96 | + or – in case of non-Processing functions – to better reflect the InDesign categories they belong to |
| 97 | +* Changed all include/includepath/targetengine statements from # to //@ |
| 98 | + This allows linting with eslint of all files |
| 99 | +* Linted all the test files |
| 100 | +* Changed the location of the basil.js library from `~/Documents/basiljs/bundle/basil.js` to `~/Documents/basiljs/basil.js` in all the example files. |
| 101 | +The user is allowed to have his files wherever he wants. |
| 102 | +* bounds() now correctly measures bounds in different canvas modes(MARGIN/BLEED etc.) |
| 103 | + |
| 104 | +- b.go() and b.loop() are removed (use function draw() or function loop() instead) |
| 105 | +- b.itemX(), b.itemY(), b.itemWidth(), b.itemHeight(), b.itemPosition() and b.itemSize() are removed |
| 106 | + and replaced by the new transform() function |
| 107 | +- b.transformImage() is removed as it can be replaced by the new transform function() |
| 108 | +- JSON.decode() and JSON.encode() are removed and replaced by JSON.parse() |
| 109 | + and JSON.stringfy() |
| 110 | +- b.storyCount() is removed (use stories(doc()).length instead) |
| 111 | +- Array.map() and Array.filter() are removed |
| 112 | +- b.Random.nextGaussian() is removed |
| 113 | + |
| 114 | +Special thanks to Hartmut Bohnacker for making the transform functions work in Processing style! |
| 115 | + |
| 116 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 117 | +basil.js 1.1.0 - 11 November 2016 |
| 118 | + |
| 119 | ++ Added b.size() to set and get the document size |
| 120 | ++ Added b.gradient() to great colourful gradients |
| 121 | ++ Added b.gradientMode() to set gradient type b.LINEAR or b.RADIAL |
| 122 | ++ Added b.placeholder() to fill a textFrame with random placeholder text |
| 123 | ++ Added b.LOREM constant holding a lorem ipsum string |
| 124 | ++ Added npm script for better tooling and development |
| 125 | + npm run watch |
| 126 | + npm run release (insert timestamp + version string in first line of bundle) |
| 127 | + npm run bundle (without timestamp + version string) |
| 128 | ++ Added .eslintrc file (linting rules) to reflect current coding style |
| 129 | + |
| 130 | +* The basil.js file is bundled from /src to a single file: |
| 131 | + It is no longer required to have the basil.js file at a certain path. |
| 132 | + Break out with your project folders to any location w/o breaking things! |
| 133 | +* Entire source code is linted, wrong line breaks fixed |
| 134 | +* Source code reorganised to /src folder |
| 135 | +* Readme files updated to acknowledge new contributors |
| 136 | + |
| 137 | +* Bugfix: b.color("colorName") error when using resulting color in b.fill() twice |
| 138 | +* Bugfix: b.layer() did not set active layer to given argument |
| 139 | +* Bugfix: b.image() error/warning handling if incomplete arguments |
| 140 | +* Bugfix: b.isText() did not work for instances of Text |
| 141 | +* Bugfix: b.words(), b.lines() etc. were broken |
| 142 | +* Bugfix: b.objectStyle(), b.characterStyle() and b.paragraphStyle() were broken |
| 143 | + |
| 144 | +Shout outs to Timo Rychert and Fabian Morón Zirfas! |
| 145 | +This release is entirely based on your hard work! |
| 146 | +Many thanks for this massive contributions! |
| 147 | + |
| 148 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 149 | +basil.js 1.0.10 - |
| 150 | + |
| 151 | ++ Added package.json definition |
| 152 | +* Changed versioning scheme to npm style |
| 153 | + |
| 154 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 155 | +basil.js 1.09 - |
| 156 | + |
| 157 | ++ Added installer scripts for OS X and Windows |
| 158 | +* Added some better error reporting for null objects |
| 159 | +* Minor bug fixes |
| 160 | + |
| 161 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 162 | +basil.js 1.08 - 11 November 2013 |
| 163 | + |
| 164 | ++ Added b.arc() by Ken Frederick, cheers mate! |
| 165 | ++ Added b.weekday(), b.timestamp() and b.millisecond() |
| 166 | +* Fixed output to progress panel |
| 167 | +* Added auto save to MODEHIDDEN |
| 168 | +* Added 15s timeout to loadStrings via TCP/IP |
| 169 | +* Improved error reporting |
| 170 | +* Bugfix to b.addStory() |
| 171 | +* Changed default folder for b.download() to data/ |
| 172 | + |
| 173 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 174 | +basil.js 1.07-experimental - 22 October 2013 |
| 175 | + |
| 176 | +* Fixed buggy b.noise() |
| 177 | +* Urgent bug fix to b.color() and others |
| 178 | + |
| 179 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 180 | +basil.js 1.06-experimental - 21 October 2013 |
| 181 | + |
| 182 | +* Internal refactorings (split basil.js into many includes) |
| 183 | +* Changed to FAST_ENTIRE_SCRIPT execution mode |
| 184 | + |
| 185 | +Please note that this release is still experimental. |
| 186 | + |
| 187 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 188 | +basil.js 1.05 - 9 October 2013 |
| 189 | + |
| 190 | +* Bugfix to b.endShape() |
| 191 | +* Bugfix to b.loadString() and b.download(), |
| 192 | + now supports more than one GET parameter |
| 193 | +* changed default anchor to center for transforms with line() |
| 194 | +* internal safety improvements |
| 195 | + |
| 196 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 197 | +basil.js 1.04 - 23 September 2013 |
| 198 | ++ added b.addShape() in order to create multi-component shapes with b.vertex(); |
| 199 | + |
| 200 | ++ added b.nameOnPage(), get a pageitem on the active page by name. |
| 201 | + see examples/document/nameOnPage.jsx |
| 202 | + |
| 203 | ++ added b.download(). Downloads an URL to a file, currently Mac only. |
| 204 | + see examples/output/download.jsx |
| 205 | + |
| 206 | ++ added b.shellExecute(), currently Mac only. |
| 207 | + see examples/input/shellExecute.jsx |
| 208 | + |
| 209 | ++ added b.group() and b.ungroup() |
| 210 | ++ added b.isURL() validator checker function |
| 211 | ++ added string helpers b.endsWith() and b.startsWith() |
| 212 | ++ added b.projectPath() to get the folder of the active document |
| 213 | ++ added b.saveString() to save a singe string to a file |
| 214 | + |
| 215 | +* Extended loadString() and loadStrings() to handle URLs. Happy GET URL! |
| 216 | + see examples/input/loadStringURL.jsx |
| 217 | + |
| 218 | +* all export functions can handle now sub-folders |
| 219 | + e.g. exportPNG("swiss/basel/snap.png") |
| 220 | + |
| 221 | + |
| 222 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 223 | +basil.js 1.03 - 3 July 2013 |
| 224 | +* added missing support for layer and stroke settings to b.image() |
| 225 | ++ added b.savePNG() |
| 226 | + |
| 227 | + |
| 228 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 229 | +basil.js 1.02 - 3 June 2013 |
| 230 | + |
| 231 | +* fixed a bug with b.constrain() |
| 232 | +* added constraints for b.color() and b.fill(), where illegal channel |
| 233 | + values would previously produce strange results |
| 234 | + |
| 235 | + |
| 236 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 237 | +basil.js 1.01 - 23 May 2013 |
| 238 | + |
| 239 | ++ added b.transform() and b.matrix() |
| 240 | ++ added b.remove() for the removal of objects |
| 241 | ++ added b.duplicate() for duplicating page items and pages |
| 242 | ++ added b.label() and b.selection() as single item alternatives |
| 243 | ++ added demos to examples folder |
| 244 | +* changed default image fit behaviour to FitOptions.FILL_PROPORTIONALLY |
| 245 | +* corrected credits for the processing.js team |
| 246 | +* Several JSDOC updates and updated reference on website |
| 247 | + |
| 248 | + |
| 249 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 250 | +basil.js 1.00 - 28 Feb 2013 |
| 251 | + |
| 252 | +First public release! |
| 253 | + |
| 254 | ++ new functions to work conveniently with stories (indesign model of linked |
| 255 | + content or many textframes), e.g. b.addToStory(), b.storyCount() ... |
| 256 | + see: examples/document/story.jsx |
| 257 | + |
| 258 | + |
| 259 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 260 | +basil.js 0.22 - 25 Feb 2013 |
| 261 | + |
| 262 | ++ new computation modes MODESILENT, MODEHIDDEN, MODEVISIBLE. |
| 263 | + HIDDEN is very handy for working with large files, as the document is |
| 264 | + processed completely in background, performance is a lot better. |
| 265 | + |
| 266 | +* Changes for b.go(). |
| 267 | + You can switch between the computation modes via b.go( b.MODESILENT ), |
| 268 | + b.go( b.MODEHIDDEN ) and b.go( b.MODEVISIBLE ). If b.go() is called |
| 269 | + without a paramter, then the default mode MODESILENT is used. |
| 270 | + |
| 271 | +Special thanks to be:screen GmbH for the new computation modes and |
| 272 | +performance optimization! |
| 273 | + |
| 274 | ++ new functions for creating shapes. you can create arbitrary lines, |
| 275 | + bezier curves, polygones with beginShape(), endShape() and vertex() |
| 276 | + |
| 277 | + |
| 278 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 279 | +basil.js 0.21 - 21 Dec 2012 |
| 280 | + |
| 281 | +basil.js goes semi public with a private beta release |
| 282 | + |
| 283 | + |
| 284 | +..- --.- ..- -.... -..-- .-..-. -.-..---.-.-....--.-- -....-.... -..-- .- |
| 285 | +basil.js pre 0.21 - May to Dec 2012 |
| 286 | + |
| 287 | +basil.js is developed over the Summer by Ted Davis, Benedikt Groß, |
| 288 | +Stefan Landsbek and Ludwig Zeller. |
| 289 | + |
| 290 | +Special thanks to Stefan Landsbek for the inital code architecture! |
| 291 | + |
| 292 | + |
0 commit comments