Scilab Home Page | Wiki | Bug Tracker | Forge | Mailing List Archives | Scilab Online Help | ATOMS
File Exchange : Details
Please login or create an account

Notepad++ styles for Scilab 5.5 syntax colorization + functions completion & args reminder

(2183/9444 downloads)
keywords colorization, functions completion & args reminder with Notepad++ for Scilab and ATOMS
Samuel Gougeon
Samuel Gougeon
Supported Scilab Versions
<= 5.5.1
Creation Date
18th of April 2014
Built with & Updated for Scilab 5.5.0 Works for any Scilab release. .sce .sci .tst .start files are considered as Scilab ones. Syntax colorization and completion for ~5000 functions and their parameters. In addition to Scilab 5.5.0, functions of the most used ATOMS external modules are supported: * Advanced Neural Network (ANN) * apifun * CelestLab (no colorization) * Image Processing Design (IPD) * Lycee (educational, pour les lves franais) * Matrix Market * Metanet * Plotting library (for former Matlabers) (plotlib) * PortAudio * SciFreeFEM * Scidoe : Design Of Experiment * Scilab Image & Video Processing (SIVP) * serial (RS-232 communications) * socket (IP communications) * Sound files management (sndfile) * Stixbox (statistics)(no colorization) * Time Frequency toolbox (stftb) * Wavelet Toolbox (swt) PLEASE NOTE: * Colorization and completions occur for these ATOMS modules even if the modules are not installed in Scilab. This will help you preventing any potential conflicts with your own variables and functions. * ANN toolbox: Only syntax colorization is supported. Completion is not provided for this module (its XML help files do not comply with Scilab 5.5 standard) * plotlib: has several functions with same names as native Scilab functions (plot, subplot...). => arguments completion is provided for both Scilab and plotlib syntaxes ; plotlib syntaxes are then displayed at the bottom of the list of possible syntaxes. ---------- The free high level Notepad++ external editor can propose an advanced feature (unavailable in the embedded Scilab editor): All calling sequences of a function -- also called synopses -- can be displayed when typing the opening "(". This feature is enabled by the scilab.xml file provided here-below. It greatly helps in reminding on-the-fly the expected lists of arguments. scilab.xml also enables completion of function names through the full list of functions for Scilab and some ATOMS modules. Other Notepad++ features such as syntax colorization, folding / unfolding of block of statements, parentheses or brackets or braces matching, etc.. are defined and proposed for Scilab through the UserDefineLang.xml file. The two main subsets of reserved Scilab keywords (built-in functions, and macros) are extensively given for syntax highlightment, including undocumented utility functions. REMARKS about syntax parsing rules ---------------------------------- * The single quote _'_ cannot be declared as an alternative string delimiter. Otherwise, Notepad++ would parse the ' transposition operator as the opening of a string, making a big part of the following code wrongly parsed. HOW TO SET Notepad++ to autocomplete Scilab functions and parameters: ====================------------------------------------------------ In Notepad++ : In the menu Settings => Preferences => Tab: Auto-completion: In the Auto-completion frame: check "enable auto-completion on each input" and "Function and word completion". Management of files provided through this module is described below.
Files (3)
[48.91 Ko] UserDefineLang.xml
UserDefineLang.xml : Syntax colorization for Scilab in Notepad++ (~5000

File defining extended sets of all reserved Scilab keywords (for Scilab 5.5.0),
rules and styles for Scilab syntax highlighting.
UserDefineLang.xml must be stored in the user profile (%appdata%\Notepad++\ ,
often = C:\Users\\AppData\Roaming\Notepad++\UserDefineLang.xml).

Your own UserDefineLang.xml file may contain rules for customized languages
other than Scilab. This is why it is preferable to properly import this release
for Scilab with the Import command (Menu Language => Define your language:
Import button), or to edit it and copy/paste the <="" userlang=""> block for
Scilab in it.
[794.92 Ko] scilab.xml
scilab.xml enables the completion of Scilab functions and the display of ~4900
calling sequences (when typing the opening parenthesis).

scilab.xml must be stored in the ~\plugins\APIs\scilab.xml Notepad++
installation directory (most often in C:\Program files\Notepad++\plugins\APIs)
scilab.xml is built with the synopses extracted from the Scilab official help

The extensive set of native Scilab calling sequences is proposed. In addition, 
calling sequences for included ATOMS modules are also provided (list in the
Description hereabove).

For each completed function, all allowed calling sequences are displayed.
[14.68 Ko] Notepadpp_for_Scilab_Samples_6.png
Samples of Notepad++'s screenshots illustrating the completion, display of
simple or multiple calling sequences, syntax colorization, and blocks folding
for Scilab.
News (0)
Comments (2)
    Leave a comment 
Comment from Adrien Vogt-schilb -- 23rd of May 2014, 01:55:10 AM    
Samuel, what is Matrix Market?
Comment from Adrien Vogt-schilb -- 23rd of May 2014, 01:58:15 AM    
Hey Samuel, would you share the script you use to do this?
Answer from Samuel Gougeon -- 29th of May 2014, 01:43:50 PM    
Hello Adrien,

> Hey Samuel, would you share the script you use to do this?

I do not intend to release them for now. But if you would like to have some specific
external modules supported by next XML releases, please do not hesitate to tell here which
one. I would not insure anything. I hesitated to include Grocer. For this 6.0 release, I
have reached some Notepad++ (or may be its main dependency: Scintilla) limits for the
UserDefineLang.xml file. It looks that there is a maximal number of items for which syntax
colorization is supported. This is why colorization is not supported neither for Celestlab
nor for Stixbox in this release. I have tried and fought for hours, and got in touch with
Notepad++'s author, without success. Going beyond blocks Notepadd++ and then requires to
restart Windows!
However, the completion features are not impacted by this limit. IMO, these features are
the most useful. So adding other modules is still possible.

Best regards
Leave a comment
You need to log in before you can leave a comment.