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

Stata Enhanced

by andrewheiss WinMac ALL

Plugin that adds support for Stata 11–15 for Sublime Text 2 and 3

Labels stata

Details

Installs

  • Total 11K
  • Win 6K
  • Mac 5K
  • Linux 1
Jul 27 Jul 26 Jul 25 Jul 24 Jul 23 Jul 22 Jul 21 Jul 20 Jul 19 Jul 18 Jul 17 Jul 16 Jul 15 Jul 14 Jul 13 Jul 12 Jul 11 Jul 10 Jul 9 Jul 8 Jul 7 Jul 6 Jul 5 Jul 4 Jul 3 Jul 2 Jul 1 Jun 30 Jun 29 Jun 28 Jun 27 Jun 26 Jun 25 Jun 24 Jun 23 Jun 22 Jun 21 Jun 20 Jun 19 Jun 18 Jun 17 Jun 16 Jun 15 Jun 14 Jun 13 Jun 12
Windows 0 3 0 4 2 0 2 0 1 1 1 1 0 0 0 0 0 2 2 2 0 0 2 0 2 4 0 0 0 0 2 0 0 0 0 0 1 2 0 4 0 2 0 0 2 1
Mac 0 1 0 1 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 0 1 1 2 0 0 1 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 0

Readme

Source
raw.​githubusercontent.​com

Sublime Stata Enhanced

  • Version 2.2.4
  • Date: June 16, 2017

This package adds basic support for Stata (11–15, Windows and OS X) and comes with:

  • Language definition for .do and .ado files
  • Commands for sending individual lines or selections to Stata (available via the command palette and with keyboard shortcuts):
    • (OS X) Send current line or selection to Stata: super+enter
    • (Windows) Send current line or selection to Stata: ctrl+enter
  • A build system for Stata files

Background

This is a modified version of Steve Harris's Stata package. Because of scripting limitations in Stata < 12, his version relied on creating temporary .do files to pass commands to Stata. Stata 13 added fancy new AppleScript commands (specifically DoCommand and DoCommandAsync) that allow for scripted commands and eliminate the need for temporary files. Because of that, this package is far simpler than other Sublime Text packages.

For compatability with previous versions of Stata, however, I have included commands that create temporary files, as in the original Stata package. As such, this package works with Stata 11 and above on both OS X and Windows.

Installation

There are two ways to install this package:

  1. Search for “Stata Enhanced” on Package Control
  2. Copy the entire plugin folder to ~/Library/Application Support/Sublime Text 2/Packages or ~/Library/Application Support/Sublime Text 3/Packages

Configuration options

OS X

  • (Stata 11 and 12 only) This package sends selected code to a temporary file and then opens that file in Stata via Finder. In order for it to work correctly on your system, you must ensure two things are true:
    1. .do files must be set to open in Stata by default in Finder (right click on a .do file > “Get Info” > “Open with” > “Change all…” > Select Stata.
    2. .do files opened in Stata need to be run, not edited. Change this in Preferences > Do-file Editor > Advanced > Edit do-files opened from the Finder in Do-file Editor (uncheck this)

By default, when sending code to Stata on OS X, Sublime Text will maintain focus so you can continue to edit, following the pattern of RStudio, which sends code to the R console from the script editor without changing focus away from the editor. If you prefer for Stata to take focus after sending lines or selections, set the switch_focus_to_stata to true in Stata Enhanced (OS X).sublime-settings.

Windows

  • (All versions of Stata) Set the full path of your Stata installation (with slashes reversed) in Stata Enhanced (Windows).sublime-settings (default is "C:/Program Files (x86)/Stata13/StataSE-64.exe")
  • This package sends selected code to a temporary file and then opens that file in Stata. In order for it to work correctly on your system, you must ensure that .do files opened in Stata are run, not edited. Change this in Do-file Editor > Edit > Preferences > Advanced > Edit do-files opened from Windows instead of executing them (uncheck this)

Roadmap and wish list

  • Stata 13 for Windows has support for Automation APIs. It would be cool to use those instead of temporary files (like how the OS X version of the plugin uses temporary files for Stata 11–12, but the API for 13).