- fix an exception for deleted gutters on grammar change
- better handling for comments in function headers
- better check for invalid characters in function names
- add
d
andD
constant for exponential notation
- add
{}
constant and accept optional whitespace in between - refine language specific handling of empty matrices / cells (
[]
,{}
) - refine language specific handling of string quotes (
"
,'
)
- support Scilab 6.0.1 function & constant predefines (may be incomplete)
- fix an error with the gutter element for
where-am-i
- fix an issue that functions like
hex2dec
were not recognized as builtin
(Issue introduced in0.9.1
.)
- add matrix based arithmetic operators
- fix a bug that the number delimiter in constants was recognized as error in assignments
- support independent
where-am-i
-views
To use this feature, you can pass aconfigKey
representing the name of the option in theconfig.json
, as well as name a gutter name which is used to identify your instance.
- wherami-implementation accepts now also custom configuration keys
- refix an assignment error introduced in patch
0.8.5
- fix an error in the function patterns
- fix an error with assignments, matrices and strings
- add bitwise and logical
and
/or
to Scilab 6.0.0 language
- delete deprecated usage of
rootElement
from Atom 1.19.0
- fix a few problems with "invalid operators" (ruleset was to harsh)
This version only improves Scilab 6 language support.
- exclude 24 character restriction
- allow multi-line comments
- add missing predefines which are not listed in the primitives.txt and macros.txt
- changed an assignment pattern which lead to catastrophic backtrcking in the Regex-Engine
- fix online version change
- distinguish operator erro between Scilab 6 and Scilab 5
- support Scilab 6.0.0 predefined functions
- add curly braces (
{}
) to the allowed symbols - Throw out:
- "function-call" pattern (since it costs time and is not helpful)
- "parentheses" pattern (same as "function-call"-pattern)
- fix problem with
!!
(which is a valid variable name in Scilab).
- fix a minor issue that assigning a member with the same name as a built-in function/constant will be displayed as built-in
- add invalid closing parenthesis detection
- fix problems with multiple assignments in one line
- predefined functions and constants are now displayed for assignments
- fix a problem which rendered the editor unresponsible if a certain assignment pattern is used
Using a distinct assignment pattern has led to high computation load on the Regex-Engine of the grammar, which rendered the editor unusable. This problem was introduced in release 0.7.0
- fix problems for return values and trailing equals
For function[retval]=Foo()
,Foo
was not recognized as part of the function
- Travis CI build test
- fixes comment problems in:
- function declarations in between
] =
- function-call patterns
- parenthesis pattern
- function declarations in between
- avoid matching of function-call pattern if a leading dot is present
- mark error for code after continuation marks
- support of multiline function definitions
- support assignments based on recursion
- adds a pattern for determining function-like accessors
Since basically everything done with parenthesis is something like a function call, this is a nice pattern which might come handy in future use.
This will grab stuff likeFoo(something)
Foo(2).a
Foo(1:2)
etc. ...
- deleted code to determine struct/tlist base-variable
This was done to avoid the ever going on problems with the parenthesis and so on. Now, only the members are specifically marked. - renamed some snippets
- fix struct/tlist resolvement introduced with 0.6.1
- fix snippet indent
- throw out
global
from the list of built-in functions (because it doesn't feel like a function)
- re-activated spec
- simplified return value regexp
- adds
disp
-snippet to automatically add both variable and variable name
Fix a bug which caused broken scopes for constructs like execstr( FunctionA("if exists(val) then foo(1) = 1; end") );
Includes Pre-defined functions for Scilab 5.4.1 and 5.5.2 (can be switched via Preferences)
- delete invisible chars in "m" and "u" built-ins, which avoided highlighting of built-in functions such as
mean
oruicontrol
- deleted option to only update anchors on save
After lot of usage on different PCs, I have encountered no performance issues, so this option will be deleted.
If you need it, please create an issue and I will re-activate it.
- implementation of all Scilab 5.4.1 available functions
(taken from the Scilab configuration) - Fix up stuff introduced in
0.4.6
- Fixes up a bug which occured in whereami view if a big file was loaded (97b43437)
fixes whereami if language was changed after a file was loaded
- fix missing configuration stuff for whereami
- fixed bug with line continuations
- code improvements
renamed to scilab-language
- adds new language keywords
- fixes issues with strings statring with
'
- whereami:
- use scope-based function detection
(bug: race-condition since the complete resolved scopes are only available after the anchors are loaded. Next step: serialize state on Atom end and keep the anchors from the last session)
- use scope-based function detection
- whereami:
- increased robustness
- some performance tweaks
- language pre-defines:
- operator
/.
(linear system feedback operator) - constants
SCIHOME
and%io
- various missing functions
- operator
- whereami:
- increase of robustness
- added option that function anchors should only be updated on save (this might increase performance)
- fixed long name recognization for
function
declarations - adds display for invalid parenthesis in function input parameters
- fixed some assignment related stuff (hopefully last time)
- added whereami support
Note: This feature is actually treated as experimental and may have slow performance and/or some strange line-numbering issues
- fixed problems related to
=-
and=+
- fixed indentation for scopes
- fixed constants assignments
- adds (some) missing Scilab functions
- adds struct/tlist accessor recognization (if they can be determined by grammar, not at runtime)
- adds member scopes
- fixes problems with equal signs inside of strings
- includes spec for Unit-Tests (still incomplete)
- fixed error if two or more variable assignments occur
- fixed error for nested struct/tlist extraction (e.g.
foo(bar)(foo)
) - fixed error for vector assignments by introducing a global vector definition
- added missing symbols
! #
to all variable/function names - fixed indent pattern for automatic indentation
- fixed vector matching problems
- added coffeelint ignores
- added punctuation modifier for
structs
andtlists
- fixed errors for leading and trailing dot (
.
) operator - fixed error in the variable assignment
- fixed error in the conditions (a ==-1 etc.)
- added invalid operators, operator combinations etc.
- added snippets
- added support for function line-break (currently input values only)
- added Scilab grammar (might be not all)
- added constants such as %pi and empty matrix
- added keywords, operators etc.
- Snippets
- improved grammar
- improved auto-indent rules
- more pre-defined
Scilab 5.4.1
functions
- enhanced grammar original
- auto-indentation definitions
- comment declaration (useful for block comments)