-
Button driven Toolbar
Easy access to all the popular functions in one toolbar
(Open, Save, Build etc) are all just a button click away.
-
Drag'n'Drop
Easy project and file loading by dropping icons on various parts of the interface.
Both project and file icons can be dropped allowing context sensitive adaptation. The
list of project files can be easily organized by
dragging items around in the list, and
dragging files into the editor window.
-
Integrated Project window
Lists all the files currently part of the project, and allows simple double click
interface for editing project files. All categories
allow the changing of the order of the files within it maing it easier to locate the
file you want. You can also add subcategories to the project list and move files
into them to better organise your projects.
-
Automatic build script generation
Project dependent script creation based on all relevant files in the project at the
time. This can be turned off if you have existing scripts. The ability to also track
when these scripts are stale and need to be
rewritten is also available. If a script is required, it is generated depending on
the type of project being worked on. Non-compiled languages will simply execute what
you specify in the Project settings. Automatic dependency tracking is applied to the
build script, so any part of the current project will be rebuilt if other files have
changed which it needs. This feature may not be available depending on the type of
the current project.
-
Support for multiple Targets
Depending on the project being worked on, it may be possible to specify multiple
targets within the same project. This saves
having a separate project for each target.
-
Fully integrated editor
Tabbed editor allowing multiple files to be open at any one
time. Syntax highlighting, code "folding",
and all the usual functions are included: Cut, Copy, Paste, Undo, Find, Replace,
Indent etc. Blocks of pre-built code can also be
inserted as well as handling highlighted blocks. Also supports colour
"themes" for familiarity.
-
Integrated Clip Manager
Optional window showing a history of clipped text sections,
with easy double-click pasting at cursor position.
-
"Quick-Link" window
Optional window allowing self-discovery of procedures,
bookmarks and other project specific objects in a source file to be shown. Jumping to
a function in a file is just a click away. Live update shows which function the cursor
is currently inside. Also supports definable bookmarks embedded in the source for one click
jumping to any desired point in the file. Can also be used for AutoDocs and AmigaGuide
files to highlight their sections.
-
Integrated Build window
Shows output and errors from the build process, and allows clicking on errors
to be taken to that point in the source. Also includes extra buttons for quick access to build functions.
-
Asynchronous build process
Allows continued working while building the project is in progress.
-
Comprehensive Asynchronous Search
The Search facility allows full project wide searches with optional replace
allowing freedom from external search methods. The search system will continue while you are working,
and will adapt its search scope depending on which window it was started from.
-
Spell checking of documents
Allows you to spell check documents using freely available wordlists from
the internet. You can download and use wordlists in any language you want, with English being the
default.
-
Programmable keyboard Macros
CodeBench allows the user full flexiblity when it comes to creating sequences of keypresses and
navigation commands, and stores them as Macros for repeated use.
-
Code Constructs
User configurable blocks of source code called "Constructs"
can be inserted into the current text using the projects specific indentation rules to save typing and
errors.
-
Recent Lists
Lists of the most recently opened projects and files are maintained for
ease of use. Simply select an item from the project list and have it open as it was when closed, or
choose a recent file to reopen it.
-
User menus
Allows definable menus, keyboard shortcuts and set the function. (Currently not
supported)
-
Customizable display
Specify a screen mode and font to use from the program preferences
editor.
-
Locale friendly
Fully localised allowing support for native language (pending release of locale
files). British-English is built in.
-
Dedicated scratchpad
Support for a scratchpad, called "Project Notes", is
built in, allowing fast editing and a convenient place for notes, "todo"s and bug reports.
-
Project Job Sheets
An organised system to track Jobs to be carried out within the project. It
automatically prioritizes any jobs present to maintain an ordered list.
-
Fast menu links
Allows fast editing of build script or
Project Notes document, amongst others.
-
Context-sensitive menus and popup's
Some options give varying functionality depending on which window the option was selected from.
-
Context-sensitive Help system
The help system that you are reading now can be viewed directly from inside CodeBench, and will show the
relevant section depending on where the help was called from.
-
"Help-as-you-Type" system
An integrated dictionary system keeps track of certain words under the cursor and presents various help
options as you type or select words. The dictionary can be rebuilt as many times as you want and
decides the source of information automatically depending on the project type.
-
Foreign Project Import
Some plugins may allow the importing of projects from other systems,
and automatically create a CodeBench project from it. This saves having to manually recreate projects
when loading programming projects from other packages.
-
ARexx port
A dedicated ARexx port is available which allows scripting various events and
actions.
-
"Auto Indentation" system
A fully configurable system whereby you can specify which lines should be automatically in-dented and
out-dented. You can configure certain keywords or
patterns, and when a new line is requested, the line may be in-dented or out-dented if any of the
conditions are met.
-
"Change notifications"
Files in the project are monitored for changes by external programs to ensure synchronisation.
-
"Repository" support
Support for synchronising your code with remote servers is included via a
"plugin" interface.
Included plugins allow very simple CVS and SVN
synchronization, and also introducing SVNBench; probably the most
advanced SubVersion front-end for AmigaOS right now.
-
"AutoDoc" Viewer
Integrated AutoDoc viewer allowing all AutoDocs to be viewed from a
single application.