Banner showing base of Eiffel tower

Github

Download version 1.4.8: Windows or Linux

Tool: Eiffel Development Utilities

This project cluster has 104 classes.

ECF: eiffel.ecf

Source code: directory list

A "Swiss-army knife" of Eiffel development utilities invokeable by a command-line switch.

Sub-applications

CLASS_DESCENDANTS_APP outputs class descendants for selected class as a text file and is designed to be used as an external tool from within EiffelStudio.

Command switch: -class_descendants

EIFFEL_VIEW_APP publishes source code and descriptions of Eiffel projects to a website as static html and generate a Contents.md file in Github markdown. See eiffel.org article

Command switch: -eiffel_view

CODEC_GENERATOR_APP generates Eiffel classes conforming to EL_ZCODEC from VTD-XML C code

Command switch: -generate_codecs

ECF_TO_PECF_APP converts Eiffel configuration files to Pyxis format

Command switch: -ecf_to_pecf

LIBRARY_OVERRIDE_APP generates override of standard libaries to work with Eiffel-Loop

Command switch: -library_override:

REPOSITORY_NOTE_LINK_CHECKER_APP expands $source variable path in wiki-links contained in a wiki-markup text file. The app use a EIFFEL_VIEW_APP publishing configuration. Write the expanded output to file named as follows:

<file name>.expanded.<file extension>

An incidental function is to expand all tabs in the markup as 3 spaces.

Command switch: -expand_links

SOURCE_FILE_NAME_NORMALIZER_APP normalize class filenames as lowercase classnames within a source directory

Command switch: -normalize_class_file_name

IMP_CLASS_LOCATION_NORMALIZER_APP normalizes location of implementation classes in relation to respective interfaces for all projects listed in publisher configuration.

Command switch: normalize_imp_location

WINZIP_SOFTWARE_PACKAGE_BUILDER_APP builds a signed self-extracting software installer for Windows OS using signtool and WinZip tools.

Command switch: -winzip_exe_builder

Download

Download binary of el_eiffel for Ubuntu 14.04 or Linux Mint 17.x.

Directory: tool/eiffel/source/root

[ . ]

. /apps

. /check-locale-strings

. /class-rename

. /codec-generator

. /command

. /command/editing

. /command/id3-tag

. /command/repository

. /find-and-replace

. /library/cross-platform

. /library/override

. /library/override/classes

. /library/override/classes/gtk

. /library/override/classes/mswin

. /library/publish

. /library/publish/html-page

. /library/publish/markdown

. /library/publish/support

. /library/publish/support/substitution

. /library/publish/support/table

. /package-builder

. /support

[ . ]

APPLICATION_ROOT

Application root class

Further Information

Click on class link to see notes.

BUILD_INFO

Build specification

Further Information

Click on class link to see notes.

apps

AUTOTEST_APP

Finalized executable tests for sub-applications

Further Information

Click on class link to see notes.

CODEC_GENERATOR_APP

Command-line interface to CODEC_GENERATOR command

CODE_HIGHLIGHTING_TEST_APP

Code highlighting test app

ECF_TO_PECF_APP

Command-line interface to EL_DIRECTORY_TREE_FILE_PROCESSOR command

EDITOR_AUTOTEST_APP

Finalized executable tests for sub-applications

Further Information

Click on class link to see notes.

EIFFEL_VIEW_APP

Eiffel-View is a sub-application to publish source code and descriptions of Eiffel projects to a website as static html and generate a Contents.md file in Github markdown.

See eiffel.org article and the REPOSITORY_PUBLISHER command.

ID3_FRAME_CODE_CLASS_GENERATOR_APP

Command line interface to ID3_FRAME_CODE_CLASS_GENERATOR

Further Information

Click on class link to see notes.

IMP_CLASS_LOCATION_NORMALIZER_APP

Command-line interface to command IMP_CLASS_LOCATION_NORMALIZER

LIBRARY_OVERRIDE_APP

Command-line interface to LIBRARY_OVERRIDE_GENERATOR command

PYXIS_ECF_CONVERTER_APP

Command line interface to command PYXIS_ECF_CONVERTER

Further Information

Click on class link to see notes.

PYXIS_TRANSLATION_TREE_COMPILER_APP

Sub app to compile tree of Pyxis translation files into multiple locale files named locale.x where x is a 2 letter country code. Does nothing if source files are all older than locale files. See class EL_LOCALE_I

Syntax:

el_toolkit -compile_translations -source <source tree dir> -output <output dir>

REPOSITORY_PUBLISHER_SUB_APPLICATION

Application based on repository publisher

REPOSITORY_SOURCE_LINK_EXPANDER_APP

Command line interface to REPOSITORY_SOURCE_LINK_EXPANDER command

SOURCE_FILE_NAME_NORMALIZER_APP

Source file name normalizer app

WINZIP_SOFTWARE_PACKAGE_BUILDER_APP

Command line interface to WINZIP_SOFTWARE_PACKAGE_BUILDER command

Further Information

Click on class link to see notes.

check-locale-strings

EL_MISSING_TRANSLATIONS

Missing translations

EL_ROUTINE_LOCALE_STRING_PARSER

Scans lines from a routine for locale string identifiers

EL_ROUTINE_RESULT_LOCALE_STRING_PARSER

Parses locale ID from result of constant prefixed with English_

English_name: ZSTRING
   once
      Result := "Dublin"
   end

EVOLICITY_TEMPLATE_PARSER

Evolicity template parser

class-rename

CLASS_FILE_NAME_NORMALIZER

Class file name normalizer

CLASS_RENAMER

Class renamer

codec-generator

CODEC_INFO

Codec info

LATIN_CHARACTER

Latin character

UNICODE_INTERVAL

Unicode interval

command

CODEC_GENERATOR

Generate Eiffel classes conforming to EL_ZCODEC from VTD-XML C code

ID3_FRAME_CODE_CLASS_GENERATOR

Tool for TagLib.ecf library to generate the following classes from the ID3v2 specification documents versions 2.2, 2.3 and 2.4.

TL_FRAME_CODES_2_2
TL_FRAME_CODES_2_3
TL_FRAME_CODES_2_4

LIBRARY_OVERRIDE_GENERATOR

Creates class overrides of standard libraries for Eiffel-loop

PYXIS_ECF_CONVERTER

Converts Pyxis format Eiffel project configuration with .pecf extension to .ecf XML file

PYXIS_TRANSLATION_TREE_COMPILER

Compile tree of Pyxis locale translation files into a directory locales binary data files. For example:

locales/en
locales/de
locales/fr

SOURCE_TREE_PROCESSOR

Source tree processor

WINZIP_SOFTWARE_PACKAGE_BUILDER

Command to build an application and then package it as a self-extracting winzip exe installer.

Further Information

Click on class link to see notes.

XML_TO_PYXIS_CONVERTER

Xml to pyxis converter

command/editing

CLASS_RENAMER_COMMAND

Class renamer command

EDITING_COMMAND

Editing command

FEATURE_EDITOR_COMMAND

Command for command-line sub-application: FEATURE_EDITOR_APP

FIND_AND_REPLACE_COMMAND

Find and replace command

NOTE_DATE_FIXER_COMMAND

Fixes note dates with too many spaces as a result of a bug. For example

date: "2018-09-20 10:06:24 GMT (Thursday  20th  September  2018)"

NOTE_EDITOR_COMMAND

Command to edit the note fields of all classes defined by the source tree manifest argument by filling in default values for license fields list in supplied license_notes_path argument. If the modification date/time has changed, it fills in the note-fields. If changed, it sets the date note-field to be same as the time stamp and increments the revision number note-field.

command/id3-tag

ID3_CODE_CLASS

Id3 code class

command/repository

IMP_CLASS_LOCATION_NORMALIZER

Normalizes location of implementation classes (*_imp.e) in relation to respective interfaces (*_i.e) for all projects referenced in repository publishing configuration. See class CROSS_PLATFORM_CLUSTER for details.

REPOSITORY_PUBLISHER

Publishes an Eiffel repository as a website based on a set of Evolicity templates and a configuration file listing the libraries and clusters to include.

REPOSITORY_SOURCE_LINK_EXPANDER

Use a supplied repository publishing configuration to expand $source variable path in wiki-links containined in a wiki-markup text file. Write the expanded output to file named as follows:

<file name>.expanded.<file extension>

An incidental function is to expand all tabs as 3 spaces.

find-and-replace

FIND_AND_REPLACE_EDITOR

Find and replace editor

library/cross-platform

CROSS_PLATFORM_CLUSTER

Cluster of cross platform implementations and interfaces

The normalize_locations procedure does the following:

Any class file names ending with _i.e are matched with implementation classes ending with _imp.e. If only a common-platform exists then the implementation class is moved to the normalized location

imp_common/<path>/<class-name>.e

where <path> is the location relative to the cluster directory.

Where Windows and Unix implementations exist then the implementation classes are moved to normalized locations

imp_unix/<path>/<class-name>.e
imp_mswin/<path>/<class-name>.e

where <path> is the location relative to the cluster directory.

CROSS_PLATFORM_CONSTANTS

Cross platform constants

CROSS_PLATFORM_EIFFEL_CONFIGURATION_FILE

Eiffel configuration file for cross platform interface and implementation classes conforming to file wildcards:

*_i.e
*_imp.e

library/override

OVERRIDE_FEATURE_EDITOR

library/override/classes

EV_ENVIRONMENT_I_FEATURE_EDITOR

EV_INTERNALLY_PROCESSED_TEXTABLE_IMP_FEATURE_EDITOR

SD_SHARED_EIFFEL_FEATURE_EDITOR

SD_ZONE_NAVIGATION_DIALOG_FEATURE_EDITOR

library/override/classes/gtk

EV_WEB_BROWSER_IMP_FEATURE_EDITOR

library/override/classes/mswin

EV_PIXMAP_IMP_DRAWABLE_EIFFEL_FEATURE_EDITOR

EV_PIXMAP_IMP_EIFFEL_FEATURE_EDITOR

EV_RADIO_BUTTON_IMP_EIFFEL_FEATURE_EDITOR

library/publish

EIFFEL_CLASS

Class to render github like markdown found in the description note field of Eiffel classes.

EIFFEL_CLASS_PARSER

Multi-core distributed class parser

EIFFEL_CONFIGURATION_FILE

Eiffel project configuration file

EIFFEL_CONFIGURATION_LIST

Eiffel configuration list

EIFFEL_LIBRARY_CONFIGURATION_FILE

Eiffel library configuration file

EIFFEL_NOTES

Eiffel notes

LIBRARY_CLASS

Library class

NOTE_HTML_TEXT_ELEMENT_LIST

Note HTML text element list

REPOSITORY_HTML_TEMPLATES

Repository html templates

SOURCE_DIRECTORY

Source directory

library/publish/html-page

EIFFEL_CONFIGURATION_INDEX_PAGE

Index page for classes from Eiffel configuration file

REPOSITORY_HTML_PAGE

HTML page for Eiffel repository

REPOSITORY_SITEMAP_PAGE

HTML sitemap page for Eiffel repository

library/publish/markdown

MARKDOWN_RENDERER

Markdown renderer

MARKDOWN_ROUTINES

Markdown routines

MARKDOWN_TRANSLATER

Translates Eiffel-View publisher markdown to Github markdown

NOTE_MARKDOWN_RENDERER

Markdown renderer with support for relative Eiffel class links

PREFORMATTED_NOTE_MARKDOWN_RENDERER

Preformatted note markdown renderer

library/publish/support

ECF_CLUSTER_INFO

ECF project name information

ECF_INFO

ECF project information

GITHUB_REPOSITORY_CONTENTS_MARKDOWN

Github repository contents markdown

HTML_TEXT_ELEMENT_LIST

Html text element list

PUBLISHER_CONSTANTS

Publisher constants

library/publish/support/substitution

HYPERLINK_NOTE_SUBSTITUTION

Expand hyperlink in class note

HYPERLINK_SUBSTITUTION

Expand hyperlink

MARKUP_SUBSTITUTION

Markup substitution

PREFORMATTED_SOURCE_LINK_SUBSTITUTION

Same as SOURCE_LINK_SUBSTITUTION except the output will appear in a preformated HTML section so there is no need for identifier <a id="source"> in the anchor tag.

<pre>
   The class <a href="http://.." target="_blank">MY_CLASS</a>
</pre>

SOURCE_LINK_SUBSTITUTION

Expand class notes with source hyperlink: MY_CLASS [ANY]

library/publish/support/table

CLASS_HTML_PATH_TABLE

Map class name to HTML source path

ISE_CLASS_TABLE

Table of ISE class links from eiffel.org and github.com/EiffelSoftware

SHARED_CLASS_PATH_TABLE

Shared instance of CLASS_HTML_PATH_TABLE

SHARED_ISE_CLASS_TABLE

Shared instance of ISE_CLASS_CHART_TABLE

package-builder

PACKAGE_BUILDER_CONFIG

Build configuration for self-extracting installer

PYXIS_ECF_SCANNER

Extract relevant lines from Pyxis Eiffel configuration file scanner to Pyxis configuration parseable by type PACKAGE_BUILDER_CONFIG

WINZIP_CREATE_SELF_EXTRACT_COMMAND

Wrapper for wzipse32 command

Further Information

Click on class link to see notes.

WINZIP_SOFTWARE_COMMON

Winzip software common

WINZIP_SOFTWARE_PACKAGE

Winzip self-extracting package build configuration

Further Information

Click on class link to see notes.

WINZIP_TEMPLATE_TEXTS

Localized texts for wzipse32 utility

support

CLASS_STATISTICS

Obtains code word count and byte count of Eiffel class source. Code words include keywords, identifier words and quoted strings, but exclude comments and indexing notes.

CLASS_STATISTICS_I

Class statistics interface

CODE_HIGHLIGHTING_TRANSFORMER

Code highlighting transformer

ECF_XML_GENERATOR

Ecf xml generator

HTML_TEXT_ELEMENT

Html text element

PYXIS_ECF_PARSER

Pyxis ECF parser

SOURCE_MANIFEST

Source manifest

SOURCE_MANIFEST_COMMAND

Process files specified in a Pyxis format source manifest as for example: sources.pyx

SOURCE_TREE

Source tree