Lugaru's Epsilon Programmer's Editor 14.04
Context:
|
Epsilon User's Manual and Reference > Changes from Older Versions > EEL Programming Changes in Epsilon 14In EEL code, ints are now 64-bit. (As a consequence, Epsilon can now edit files bigger than 2 GB, though little work to improve performance on such large files has been done yet.) The newint32 type was
added to EEL, and the TYPE_INT32 code is now defined for
primitives like new_variable( ) and vartype( ).The mouse_cursor variable is now a simple number instead of a pointer to a special structure. Existing EEL code of the form "mouse_cursor = &horiz_arrows;" must be modified by deleting the &. We added the EEL primitives iscntrl( ), isgraph( ), ispunct( ), isprint( ), and isxdigit( ) to report on various character properties. The set_character_property( ) primitive recognizes new codes like C_PUNCT for customizing these primitives. The new unicode_character_name( ) primitive retrieves the name of any Unicode character, given its number, or vice versa, and can interpret surrogate characters too. EEL programmers can now use the convenience macros IS_LEADING_SURROGATE( ) and IS_TRAILING_SURROGATE( ) to check if a character is a Unicode surrogate character.
The new aside( ) primitive writes some text to the
In EEL, numeric constants starting with zero, like 0123, are no longer interpreted as octal, for consistency with Alt-x eval. Prefixes such as 0x, 0o, and 0b (hexadecimal, octal, binary) may still be used to specify the base of a numeric constant. EEL's new get_substitution_variables( ) primitive helps Epsilon perform completion on environment variable and shell folder names. EEL programmers can use these handy new EEL subroutines: regex_replace_in_string( ), numtoi_with_base( ), url_is_a_directory( ), count_matches_in_buffer( ). Epsilon's encoding of RGB colors now matches HTML's. Any old code that uses hardwired color numbers instead of macros like MAKE_RGB( ) must be updated. (For example, change a hex value in the format 0xBBGGRR to MAKE_RGB(0xRR, 0xGG, 0xBB).) Since EEL now supports 64-bit numbers, some primitives could be simplified. The EEL primitives new_file_read( ) and new_file_write( ) no longer accept optional 32-bit lowstart and highstart arguments that provided limited 64-bit file support, since their start parameter is now 64 bits. Likewise, the check_file( ) primitive's fsize_high field was removed, since its fsize field can now hold a full 64-bit size, and its 32-bit raw_file_date_high and raw_file_date_low fields were combined into one 64-bit raw_file_date. EEL code can set some new flags in the buffer_not_saveable variable to control different aspects of buffer saving and warning.
The The _display_class array was expanded so it can remap all the characters Epsilon can display, not just the first 256. Epsilon's win_help_string( ) and win_help_contents( ) primitives can no longer handle .chm and .col files. The toolbar_add_button( ) primitive in Epsilon for Windows now recognizes five more standard icon names, and Alt-x show-view-bitmaps displays them. EEL code can now use the new use_alternate_dialog_tag variable to select a different dialog tag, meaning Epsilon for Windows will save and restore the size of that dialog separately from others.
|