ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

Soar Tools

by garfieldnate ST2/ST3

Package for Soar development in Sublime Text

Details

Installs

  • Total 126
  • Win 68
  • OS X 31
  • Linux 27
Feb 23 Feb 22 Feb 21 Feb 20 Feb 19 Feb 18 Feb 17 Feb 16 Feb 15 Feb 14 Feb 13 Feb 12 Feb 11 Feb 10 Feb 9 Feb 8 Feb 7 Feb 6 Feb 5 Feb 4 Feb 3 Feb 2 Feb 1 Jan 31 Jan 30 Jan 29 Jan 28 Jan 27 Jan 26 Jan 25 Jan 24 Jan 23 Jan 22 Jan 21 Jan 20 Jan 19 Jan 18 Jan 17 Jan 16 Jan 15 Jan 14 Jan 13 Jan 12 Jan 11 Jan 10 Jan 9
Windows 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
OS X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

Readme

Source
raw.​githubusercontent.​com

Sublime Text Soar Tools

Sublime Text package for Soar development. Currently only tested for Sublime Text 3.

Getting Started

  • After installing Package Control, use the Command Palette (Ctrl+Shift+P) to select Install Package and then search for Soar Tools.

Current Functionality

Syntax Highlighting

Soar syntax highlighting is applied to files with the .soar, .soarunit, or .dm extensions. Code folding is also provided but is irregular at the moment.

Snippets

Several snippets are currently provided for various types of Soar productions, SoarDoc, and SoarUnit setup/test blocks. SoarDoc snippets are triggered by ##! and production snippets are triggered by sp. Provided snippets are:

  • SoarDoc, triggered by ##!, for:
    • documenting a file
    • documenting an operator
    • documenting a production
  • Soar productions, triggered by sp, for:
    • propose/compare/apply operator
    • elaborate state
    • elaborate substate
  • SoarUnit blocks:
    • setup block
    • test block

SoarUnit

If you have JSoar/SoarUnit on your computer, you can run it with a build command (ctrl+b or command+b) when you have a SoarUnit file open. You will, however, need to specify the location of SoarUnit if it is not in your PATH. You may also wish to test using C Soar. To specify these settings, go to Preferences –> Package Settings –> Soar Tools –> Settings - User. These are your available settings:

{
    // If added to your system path, "soarunit" is fine; otherwise,
    // you'll need to set this to "C:/jsoar-0.14.0/bin/soarunit", etc.
    "soarunit_path": "soarunit",

    // set to true if you want to use C Soar, not JSoar
    "c_soar": false,

    // If using C Soar, set this to the Soar distribution directory, or set
    // the SOAR_HOME environment variable
    // "SOAR_HOME": "C:/path/to/soar-9.x.x",

    // set to true if you want a pretty popup window instead of console
    // output
    "ui": false,

    // indicate the size of thread pool to run tests in;
    // either a number indicating the fixed size of a thread pool,
    // "cpus" for number of cpus, or "cached" for cached
    "threads": "cpus"
}

You can either run SoarUnit on the current file, or for the whole project, but the project option is currently slow and buggy, and therefore not recommended.

SublimeREPL Integration

You can run the Soar CLI from SublimeText if you have the SublimeREPL package installed, but setup might be tricky:

  • If your Soar directory is not in your system path, you will need to add it to SublimeREPL's path:

    • Preferences -> Package Settings -> SublimeREPL -> Settings - User

    { “default_extend_env”: {“PATH”: “C:/path/to/Soar/bin:{PATH}”} }

  • The name of the Soar CLI executable is simply “cli(.exe)”, and you may have more than one of those on your computer. If that is the case, reorder the directories in your path variable or wait for this issue to be resolved.

  • Keep in mind that the Soar Tutorial distribution does not currently come with the CLI executable, so you need to download the normal distribution to use SublimeREPL with Soar.

TODO

  • Highlighting for script blocks
  • Solicit feedback from Soar users