diff --git a/README.md b/README.md index 5ddfee58..569f7851 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -## Masterproject +## Coati ### Setup diff --git a/web/documentation/img/analyse.png b/web/documentation/img/analyse.png deleted file mode 100644 index 0167a400..00000000 Binary files a/web/documentation/img/analyse.png and /dev/null differ diff --git a/web/documentation/img/finished_indexing_dialog.png b/web/documentation/img/finished_indexing_dialog.png new file mode 100644 index 00000000..3b261be3 Binary files /dev/null and b/web/documentation/img/finished_indexing_dialog.png differ diff --git a/web/documentation/img/graph_view_graph.png b/web/documentation/img/graph_view_graph.png index 6c16e61f..dda51c8e 100644 Binary files a/web/documentation/img/graph_view_graph.png and b/web/documentation/img/graph_view_graph.png differ diff --git a/web/documentation/img/indexing.png b/web/documentation/img/indexing.png new file mode 100644 index 00000000..97cf5e89 Binary files /dev/null and b/web/documentation/img/indexing.png differ diff --git a/web/documentation/img/indexing_dialog.png b/web/documentation/img/indexing_dialog.png new file mode 100644 index 00000000..a0131481 Binary files /dev/null and b/web/documentation/img/indexing_dialog.png differ diff --git a/web/documentation/img/new_project_summary.png b/web/documentation/img/new_project_summary.png index a22b893a..2732727e 100644 Binary files a/web/documentation/img/new_project_summary.png and b/web/documentation/img/new_project_summary.png differ diff --git a/web/documentation/img/path_list_box.png b/web/documentation/img/path_list_box.png index 47751b38..f36d5ef8 100644 Binary files a/web/documentation/img/path_list_box.png and b/web/documentation/img/path_list_box.png differ diff --git a/web/documentation/img/path_list_box_edit.png b/web/documentation/img/path_list_box_edit.png new file mode 100644 index 00000000..992657a1 Binary files /dev/null and b/web/documentation/img/path_list_box_edit.png differ diff --git a/web/documentation/img/preferences_screen.png b/web/documentation/img/preferences_screen.png index 1eb5ce0e..0941e2b2 100644 Binary files a/web/documentation/img/preferences_screen.png and b/web/documentation/img/preferences_screen.png differ diff --git a/web/documentation/img/progress_dialog.png b/web/documentation/img/progress_dialog.png new file mode 100644 index 00000000..9d38f5c4 Binary files /dev/null and b/web/documentation/img/progress_dialog.png differ diff --git a/web/documentation/img/project_setup_guide_data.png b/web/documentation/img/project_setup_guide_data.png index fb600c93..efe9768f 100644 Binary files a/web/documentation/img/project_setup_guide_data.png and b/web/documentation/img/project_setup_guide_data.png differ diff --git a/web/documentation/img/project_setup_guide_include.png b/web/documentation/img/project_setup_guide_include.png index 84b854d0..d4f46ef9 100644 Binary files a/web/documentation/img/project_setup_guide_include.png and b/web/documentation/img/project_setup_guide_include.png differ diff --git a/web/documentation/img/project_setup_guide_paths.png b/web/documentation/img/project_setup_guide_paths.png index c2264612..0010090a 100644 Binary files a/web/documentation/img/project_setup_guide_paths.png and b/web/documentation/img/project_setup_guide_paths.png differ diff --git a/web/documentation/img/project_setup_guide_paths_java.png b/web/documentation/img/project_setup_guide_paths_java.png new file mode 100644 index 00000000..dc826c79 Binary files /dev/null and b/web/documentation/img/project_setup_guide_paths_java.png differ diff --git a/web/documentation/img/project_setup_guide_select.png b/web/documentation/img/project_setup_guide_select.png index 0d510e76..15eeb6b6 100644 Binary files a/web/documentation/img/project_setup_guide_select.png and b/web/documentation/img/project_setup_guide_select.png differ diff --git a/web/documentation/img/project_setup_guide_summary.png b/web/documentation/img/project_setup_guide_summary.png index b1f7b95d..e04a2b11 100644 Binary files a/web/documentation/img/project_setup_guide_summary.png and b/web/documentation/img/project_setup_guide_summary.png differ diff --git a/web/documentation/img/project_setup_wizard_compilation_data.png b/web/documentation/img/project_setup_wizard_compilation_data.png index 21bd4492..097beef6 100644 Binary files a/web/documentation/img/project_setup_wizard_compilation_data.png and b/web/documentation/img/project_setup_wizard_compilation_data.png differ diff --git a/web/documentation/img/project_setup_wizard_compilation_header.png b/web/documentation/img/project_setup_wizard_compilation_header.png index 86471fc4..c3bd4a8c 100644 Binary files a/web/documentation/img/project_setup_wizard_compilation_header.png and b/web/documentation/img/project_setup_wizard_compilation_header.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_framework_paths.png b/web/documentation/img/project_setup_wizard_empty_framework_paths.png index 1dcb322c..61845709 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_framework_paths.png and b/web/documentation/img/project_setup_wizard_empty_framework_paths.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_include_paths.png b/web/documentation/img/project_setup_wizard_empty_include_paths.png index 78e7d3ed..d4f46ef9 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_include_paths.png and b/web/documentation/img/project_setup_wizard_empty_include_paths.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_meta.png b/web/documentation/img/project_setup_wizard_empty_meta.png index 335d4def..af398643 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_meta.png and b/web/documentation/img/project_setup_wizard_empty_meta.png differ diff --git a/web/documentation/img/project_setup_wizard_empty_project_paths.png b/web/documentation/img/project_setup_wizard_empty_project_paths.png index 1615b3dd..62844f0f 100644 Binary files a/web/documentation/img/project_setup_wizard_empty_project_paths.png and b/web/documentation/img/project_setup_wizard_empty_project_paths.png differ diff --git a/web/documentation/img/project_setup_wizard_start.png b/web/documentation/img/project_setup_wizard_start.png index 1b7539b7..15eeb6b6 100644 Binary files a/web/documentation/img/project_setup_wizard_start.png and b/web/documentation/img/project_setup_wizard_start.png differ diff --git a/web/documentation/img/refresh_button.png b/web/documentation/img/refresh_button.png new file mode 100644 index 00000000..97dd7136 Binary files /dev/null and b/web/documentation/img/refresh_button.png differ diff --git a/web/documentation/img/refresh_buttons.png b/web/documentation/img/refresh_buttons.png deleted file mode 100644 index a4612676..00000000 Binary files a/web/documentation/img/refresh_buttons.png and /dev/null differ diff --git a/web/documentation/img/search_view.png b/web/documentation/img/search_view.png index da4bbde3..15f737b5 100644 Binary files a/web/documentation/img/search_view.png and b/web/documentation/img/search_view.png differ diff --git a/web/documentation/img/start_indexing_dialog.png b/web/documentation/img/start_indexing_dialog.png new file mode 100644 index 00000000..1861244f Binary files /dev/null and b/web/documentation/img/start_indexing_dialog.png differ diff --git a/web/documentation/index.html b/web/documentation/index.html index 8abae91f..14d9797b 100644 --- a/web/documentation/index.html +++ b/web/documentation/index.html @@ -90,7 +90,7 @@
-

Documentation for version 0.7

+

Documentation for version 0.8

@@ -176,9 +176,8 @@

Creating a Project

When creating a new Coati project you will use the project setup wizard. This wizard splits the setup process into several subsequent steps.

-

The simplest way to set up a Coati project is:

- +
@@ -188,10 +187,11 @@
Tasks:
    -
  • Pick your project's programming language, select the empty project option and click Next.
  • +
  • Pick your project's programming language, select the Empty Project option and click Next.
+
@@ -241,22 +241,23 @@
Tasks:
    -
  • As last step a summary of all settings is shown. Click Create to close the dialog. Coati will start indexing your files now.
  • +
  • As last step a summary of all settings is shown. Click Create to close the dialog and save the project file.

Source Indexing

-

Coati will now start indexing your source files, which might take a little while. The status bar will give you information about the progress. Otherwise the UI will be empty. Coati indexes all named symbols and their relationships throughout the provided source files.

+

Coati will now ask you whether you want to start indexing. Click Start and wait for the indexing to finish, which might take a little while. The Indexing Dialog and the status bar will give you information about the progress. Otherwise the UI will be empty. Coati indexes all named symbols and their relationships throughout the provided source files.

- +
Tasks:
    +
  • Click Start when asked whether to start indexing.
  • Wait until the indexing of your source files has finished.
  • -
  • or Press ESC to stop indexing (Coati will provide all information gathered so far and the indexing can be continued later by refreshing).
  • +
  • or Click Stop or press ESC to stop indexing (Coati will provide all information gathered so far and the indexing can be continued later by refreshing).

After indexing has finished, Coati will show an overview of all indexed symbols in the graph view and some statistics in the code view. If the indexing yielded errors, the code view will display them. You can see the error message by hovering an error's location.

@@ -268,7 +269,7 @@
Tasks:
    -
  • Fix your errors and refresh to reindex the files with errors (Open Issue: As long as there was no change in the specific file, Coati won't reindex it, do a force refresh until fixed).
  • +
  • Fix your errors and refresh to reindex the files with errors (Open Issue: As long as there was no change in the specific file, Coati won't reindex it, use the Force Refresh option from the Edit Menu until fixed).
  • or ignore them and continue with an incomplete index.
@@ -397,6 +398,9 @@

C++

C++ support is powered by Clang 3.8. For more Information please visit Clang C++ Status. If you have a problem loading C++ code, please have a look at Clang language compatibility or report a bug at our bug tracker.

+

Java

+

Coati 0.8 includes an early version of Java support which is powered by JavaParser and JavaSymbolSolver. In this version Java support still has some minor issues when matching a method's call to a proper definition. If you encounter any of these issues, please let us know by providing a minimal example at our bug tracker.

+

FAQ

@@ -459,7 +463,7 @@

On Windows

These files usually ship with your compiler. For the Visual Studio IDE the system headers can be found at:

-
path_to_visual_studio/VC/include/
+
<path_to_visual_studio>/VC/include/

If you don't use the Visual Studio IDE you can also try to find your system headers in a subdirectory of:

C:/Program Files (x86)/Windows Kits/
@@ -476,6 +480,28 @@

You will find the header search paths your compiler uses in the output between these two lines:

#include <...> search starts here:
.
.
.
End of search list.
+

Finding Java Runtime Library Location

+ +

On Windows

+

The Java Runtime Library (called "jvm.dll") can be found inside of your JRE install folder and looks like this:

+
<path_to_jre>/bin/client/jvm.dll
+ + +

On Mac

+

The Java Runtime Library (called libjvm.dylib) can be found inside of your JRE install folder. Run the following command in your terminal to find the location of your default Java installation:

+
/usr/libexec/java_home
+ +

This should give you a path looking like this:

+
/Library/Java/JavaVirtualMachines/<jdk_version>/Contents/Home
+ + The "libjvm.dylib" should be available at: +
/Library/Java/JavaVirtualMachines/<jdk_version>/Contents/Home/jre/lib/server/libjvm.dylib
+ +

Insert the full path to libjvm.dylib into the Java Path setting in the Preferences Window.

+ +

On Linux

+

The Java Runtime Library (called "libjvm.so") can be found inside of your JRE install folder and looks like this:

+
<path_to_jre>/bin/<arch>/server/libjvm.so
@@ -543,11 +569,30 @@
  • Enter the path by typing on your keyboard
  • Click "..." within the path line to open a file dialog for choosing a file or directory path.
  • Directly add multiple paths into the box by dropping elements from your filesystem.
  • +
  • Click the pen icon in the bottom right corner to edit the list as plain text.
  • + + +
    + +

    Plain Text Editing

    +

    By pressing the pen icon in the bottom right corner you can open the plain text edition dialog. It allows you to edit the whole list within a text field. Each line will be one list item.

    +
    +
    + +
    +
    + Interactions: +
      +
    • Add and remove list items through keyboard interaction.
    • +
    • Click Cancel to cancel plain text editing.
    • +
    • Click Save to save your changes to the list.
    + +

    Preferences Window

    -

    The Preferences window lets you define settings for all projects. You can open the Preferences from the menu via Help/Preferences.

    +

    The Preferences window lets you define settings for all projects. You can open the Preferences from the menu via Edit/Preferences.

    @@ -570,17 +615,45 @@ Tab width Define the space width of tabs in the code view. + + Color scheme + Choose which color scheme Coati should display. The color schemes are located in data/color_schemes/ + + + Scroll Speed + Define a multiplyer for the default scroll speed. Values smaller than 1 slow down scrolling while values greater than 1 increase the scroll speed. + + + Logging + Ticking this box enables logging to console and to a log file. This option is disabled by default to speed up Coati. If you encounter problems while running Coati, we recommend to enable this option so you have somewhere to start looking for a cause. + Indexer threads Define how many parallel threads are used during indexing. - Header Search Paths - Set header search paths that are used for all of your projects (e.g. std headers). An option for automatic detection of these paths is available for Clang, GCC and the Visual Studio compiler. (For instructions on how to add paths manually see Path List Box. For instructions on how to find the system header paths see Finding System Header Locations.) + Non-Fatal Errors + Enable this option if you want Coati to display non-fatal errors in files that do not get indexed by Coati. Fatal errors will be displayed regardless of their location within the project because they tend to affect the indexers coverage. - Framework Search Paths - Mac only. Define the search paths for .framework files for all of your projects. An option for automatic detection of these paths is available for Clang and GCC. (For instructions on how to add paths see Path List Box.) + Coati Port + Port number that Coati uses to listen for incoming messages from plugins. + + + Plugin Port + Port number that Coati sends outgoing messages to. + + + Java Path + If you want to use Coati on Java source code, please specify a path to your Java 8 runtime library. Please keep in mind that a 32 bit Coati requires a 32 bit version of Java while a 64 bit Coati requires a 64 bit Java to be working correctly. You can either use the button below for automatic detection or add the path manually. For instructions on how to find your Java runtime path see Finding Java Runtime Library Location. + + + Global Include Paths + Set header search paths that are used for all of your projects (e.g. std headers). An option for automatic detection of these paths is available for Clang, GCC and the Visual Studio compiler. For instructions on how to add paths manually see Path List Box. For instructions on how to find the system header paths see Finding System Header Locations. + + + Global Framework Search Paths + Mac only. Define the search paths for .framework files for all of your projects. An option for automatic detection of these paths is available for Clang and GCC. For instructions on how to add paths see Path List Box. @@ -588,6 +661,7 @@

    Project Setup Wizard

    The Project Setup Wizard consists of a sequence of windows that let you create a new Coati project. After selecting the programming language for your project Coati offers several ways for you to provide all the required information.

    +
    @@ -603,11 +677,12 @@
    -

    Create an Empty Project

    +

    Create an Empty C/C++ Project

    This is the way to go if you just have some source files you want to index. In case you have a build instructions file, you might want to check out one of the other options for project setup described below.

    - Project Meta Data + Project Meta Data

    In the first step you need to enter meta information about the project.

    +
    @@ -620,7 +695,6 @@ Name The name of the project. This will also be the name of the .coatiproject file generated by Coati. Location Choose the location of the project file from the dialog. - Language Select the language of your project. This setting is preselected according to your choice in the previous screen. (See Language Support) Standard Select the language standard that should be used for indexing your project. Usually the most recent language standard is preselected here. (See Language Support) @@ -716,12 +790,12 @@
    -

    Create a Project from Visual Studio Solution

    +

    Create a C/C++ Project from Visual Studio Solution

    If you already have a Visual Studio solution file, this is the way to go. Just select the solution file in the file picker and Coati will automatically analyze it to prepopulate the New Project Summary Window (this may take a second or two).

    -

    Create a Project from Compilation Database

    +

    Create a C/C++ Project from Compilation Database

    If you are using CMake you can export compile commands by defining the CMAKE_EXPORT_COMPILE_COMMANDS flag and then use the exportet .json file for Coati project setup.

    For non-CMake projects you can use Bear. Bear generates a .json file during the simulated build process. Bear has been tested on FreeBSD, GNU/Linux and OS X.

    @@ -767,7 +841,7 @@ Source Files Clicking show source files will show you a list of all source files in the compilation database - Header Paths Specify one or multiple locations that contain the header files to the source files defined in the compilation database. (For instructions on how to add paths see Path List Box.) + Indexed Header Paths Specify one or multiple locations that contain the header files to the source files defined in the compilation database. (For instructions on how to add paths see Path List Box.) Interactions: @@ -779,6 +853,34 @@
    +

    Create an Empty Java Project

    +

    Choose this option if you want to use Coati on a Java code base.

    + + Project Meta Data +

    This is the same window as described above.

    + +
    + + Project Paths +

    In this step you provide all the information Coati needs to know about your code base.

    + +
    +
    + +
    +
    + + + + + + + + +
    Setting Description
    Project Paths Provide the root path of your Java project. This is the path where all your package names are relative to. You may provide multiple paths here. For an example this may be required it your project's source code resides in one location but generated source files are kept at a different location.
    Class Path Add one entry per jar file that is required for the project to compile. You can also add the root path of the class files your project depends on, or add a mixture if you have class files for some of the dependencies and jar files for the rest of them.
    + +
    +

    New Project Summary

    This window appears at the end of the Project Setup Wizard to summarize all the information entered before. It is the same as the Edit Project Window.

    @@ -786,6 +888,7 @@

    Edit Project Window

    This window displays all the information relevant for your Coati project.

    +
    @@ -798,33 +901,56 @@ Name The name of the project. This will also be the name of the .coatiproject file generated by Coati. Location Choose the location of the project file from the dialog. - Language Select the language of your project. This setting is preselected according to your choice in the previous screen. (See Language Support) + Language This field displays the language you chose for the project. (See Language Support) Standard Select the language standard that should be used for indexing your project. Usually the most recent language standard is preselected here. (See Language Support) - Project Paths Provide the paths that contain your project's files. Coati will index all the source and header files in the specified paths, including subdirectories. - + Project Paths Add all directories or files you want Coati to index. Providing a directory here will recursively add all the contained files. Usually these are all source and header files of your project or a subset of them. + + + + + + + - + - - + +
    Setting Description for C/C++
    Visual Studio Solution Only when using Setup from Visual Studio Solution. Provide the path to your Visual Studio Solution. Clicking the refresh arrow inside the text box will refresh the Project Paths and the Header Search Paths below.
    Compilation Database Only when using Setup from Compilation Database. Provide the path to your Compilation Database.
    Header Paths Only when using Setup from Compilation Database. Provide the paths to the corresponding header paths of your Compilation Database.
    Indexed Header Paths Only when using Setup from Compilation Database. Even though the compilation database specifies all the include paths required to compile the project, you may not want to spend a lot of time indexing all of these. Every time Coati encounters a header it will check if the file is located in one of these paths to decide whether or not to index it.
    Include Paths Specify where Coati should be looking for included headers.
    Lazy Include Search If this checkbox is checked Coati also looks into the project paths (including subdirectories) when resolving #include directives.
    Global Include Paths Same as Header Search Paths but these are used application wide for all of your Coati projects.
    Lazy Include Search If this checkbox is checked Coati also looks into the project paths (including subdirectories) when resolving #include directives. Use this option when you know that the project is self contained but don't know which paths you should specify as include paths.
    Global Include Paths Same as Include Paths but these are used application wide for all of your Coati projects.
    Framework Search Paths Mac only. Define the search paths for .framework files for your project. (For instructions on how to add paths see Path List Box.)
    Global Framework Search Paths Mac only. Same as Framework Search Paths but these are used application wide for all of your Coati projects.
    + + + + + + + + +
    Setting Description for Java
    Project Paths Provide the root path of your Java project. This is the path where all your package names are relative to. You may provide multiple paths here. For an example this may be required it your project's source code resides in one location but generated source files are kept at a different location.
    Class Path Add one entry per jar file that is required for the project to compile. You can also add the root path of the class files your project depends on, or add a mixture if you have class files for some of the dependencies and jar files for the rest of them.
    - - +
    Advanced Setting Description
    Compiler Flags Define compiler flags used during indexing e.g. -v
    Source File Extensions Define extensions for source files including the dot e.g. .cpp
    Source File Extensions Define extensions for source files including the dot e.g. .cpp or .java
    Exclude Paths Define files and directories that should not be indexed by Coati, although they appear in the Project Paths.
    + + + + + + + +
    Advanced Setting Description for C/C++
    Compiler Flags Define compiler flags used during indexing e.g. -v
    + Interactions:
    • Clicking Cancel or pressing ESC will close the window and abort the setup process.
    • @@ -847,12 +973,75 @@
    • Clicking Activate will check if your license key is valid and close the window. Otherwise an error message will be displayed.
    +
    + +

    Indexing Dialogs

    +

    These dialogs will be used while Coati indexes your project. The whole user interface will be frozen as long as these dialogs are visible.

    + +
    + +

    Start Indexing Dialog

    +

    This dialog displays the number of files for indexing and clearing before indexing starts.

    + +
    +
    + +
    +
    + + Interactions: +
      +
    • Clicking Cancel will abort indexing.
    • +
    • Clicking Start will start the file clearing and indexing.
    • +
    + +
    + +

    Progress Dialog

    +

    This dialog shows that Coati is currently doing processing that can't be interrupted.

    + +
    +
    + +
    +
    + +
    + +

    Indexing Dialog

    +

    This dialog shows the indexing progress of your project, by displaying the number of already indexed files, the last file that was started indexing, the number of errors and a progress estimate in percent.

    + +
    +
    + +
    +
    + + Interactions: +
      +
    • Clicking Stop or pressing ESC will interrupt indexing. Coati will still wait for the already running indexer threads to finish. You can continue indexing later by refreshing.
    • +
    + +
    + +

    Finished Indexing Dialog

    +

    This dialog is shown after indexing finished, giving you information about indexed files, duration and errors.

    + +
    +
    + +
    +
    + + Interactions: +
      +
    • Clicking OK will close the dialog and allow you to interact with the main window again.
    • +
    +

    Menu

    -

    Structure

    - -

    Project

    +

    Project

    • New Project @@ -888,7 +1077,7 @@
    -

    Edit

    +

    Edit

    • Back @@ -932,6 +1121,20 @@
    • This option will put the focus into the search field and start a new full text search query
    +
  • + Code Reference Next +
      +
    • Shortcut: Code Reference Next
    • +
    • Use this option to iterate to the next source location of the active symbol in the code view.
    • +
    +
  • +
  • + Code Reference Previous +
      +
    • Shortcut: Code Reference Previous
    • +
    • Use this option to iterate to the previous source location of the active symbol in the code view.
    • +
    +
  • To overview
      @@ -939,9 +1142,16 @@
    • This option will display the overview of the project.
  • +
  • + Preferences + +
  • -

    View

    +

    View

    • Show Title Bars @@ -988,15 +1198,9 @@
    • Decrease the font size to the original size.
    -
  • - Switch Color Scheme -
      -
    • Opens a file dialog to choose another color scheme XML file. The color schemes are located in data/color_schemes/.
    • -
    -
  • -

    Help

    +

    Help

    • About @@ -1029,10 +1233,15 @@
  • - Preferences + Show Data Folder +
  • +
  • + Show Log Folder +
      +
    • Opens the file explorer in the directory data/logs where all log files are saved to. You can enable file logging in the Preferences Window.
  • @@ -1110,6 +1319,18 @@ Cmd + Shift + F Ctrl + Shift + F + + Code Reference Next + Ctrl + G + Cmd + G + Ctrl + G + + + Code Reference Previous + Ctrl + Shift + G + Cmd + Shift + G + Ctrl + Shift + G + To overview Ctrl + Home @@ -1293,17 +1514,16 @@

    Refresh

    -

    The left refresh button allows you to refresh the current project and reindex all updated files (see Refresh). With the right auto refresh toggle button you can activate automatic refresh, which will reindex all updated files whenever you put window focus on Coati's Main Window.

    +

    The refresh button allows you to refresh the current project and reindex all updated, added and removed files. To reindex the whole project choose the Force Refresh option from the Edit Menu.

    - +
    Interactions:
    • Hover the buttons to see a tooltip.
    • -
    • Press the left refresh button to refresh the project.
    • -
    • Press the right auto refresh button to toggle automatic refreshing.
    • +
    • Press the refresh button to refresh the project.

    Overview Button

    @@ -1391,7 +1611,7 @@
  • Visual Studio 2013
  • Visual Studio 2015
  • -

    The communication between Coati and the code editor is achieved using a local TCP connection. Coati uses the port 6667 to listen for incoming messages. Outgoing messages will be sent to the port 6666.

    +

    The communication between Coati and the code editor is achieved using a local TCP connection. Coati uses the port 6667 to listen for incoming messages. Outgoing messages will be sent to the port 6666. The port numbers can be edited in the Preferences Window.

    Outgoing messages are in the form:

    moveCursor>>absolute/file_path>>line_number>>column_number<EOM>

    Incoming messages are in the form: