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

Sublime Input

by mavidser ST2/ST3

:pencil: Send STDIN input to programs using comments in Sublime Text 2/3

Details

Installs

  • Total 7K
  • Win 4K
  • OS X 1K
  • Linux 2K
Feb 24 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
Windows 5 5 2 3 4 6 5 4 0 3 7 6 4 4 1 2 6 10 1 4 7 12 14 4 8 12 8 7 5 9 8 6 4 11 6 12 9 13 5 9 9 3 4 4 4 7
OS X 0 2 1 1 4 0 2 2 2 3 1 2 1 0 1 1 5 1 1 2 2 0 7 1 2 4 2 1 1 3 2 1 4 2 4 3 3 3 2 0 5 1 2 3 2 1
Linux 3 3 3 1 2 1 5 2 1 0 1 0 2 2 4 3 4 1 3 2 1 0 0 2 1 6 4 5 2 5 1 1 3 3 1 1 4 1 2 3 3 1 2 3 6 1

Readme

Source
raw.​githubusercontent.​com

Sublime Input

Sublime Input is a Sublime Text 2/3 plugin which gives STDIN input through comments to a program.

Installation

With the Package Control plugin (Recommended):

  1. Bring up the Command Palette (Cmd+Shift+P on OS X, Ctrl+Shift+P on Linux/Windows).
  2. Select “Package Control: Install Package”, wait while Package Control fetches the latest package list, then select Sublime Input.
  3. The advantage of using this method is that Package Control will automatically keep Sublime Input up to date with the latest version.

Alternate Method:

  1. Go to Preferences | Browse Packages
  2. Browse up a folder and then into the Installed Packages/ folder
  3. Downlad and Sublime.Input.sublime-package file
  4. Rename the Sublime.Input.sublime-package file to Sublime Input.sublime-package
  5. Put the Sublime Input.sublime-package file in the Installed Packages/ folder
  6. Restart Sublime Text

Usage

Insert a multi-line comment at the top of program.

Examples, using the default format:

Python:

'''input
2
foo
bar
'''
a=input()
for i in xrange(a):
    a=raw_input()
    print a

C/C++

/*input
2
foo
bar
*/
#include <stdio.h>
int main() {
  int n,i;
  char s[10];
  scanf("%d",&n);
  for(i=0;i<n;i++) {
    scanf("%s",s);
    printf("%s\n",s);
} }

Both the programs will print the following output:

foo
bar

Configure

Set the build schemas in Preferences: Package Settings > SublimeInput > Settings – User

Example schema :

{
  "build_schemas" : {
    "cpp" : {
      "shell_cmd" : "g++ \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\"",
      "input_start" : "/*input",
      "input_end" : "*/"
    }
  }
}

build_schemas contains key-value pairs, where the key's the filetype (cpp in this example), and a dictionary as its value.

shell_cmd stores the command to execute on build.

{file} - Complete address of the file

{file_path} - The address of the directory the file is stored in

{file_base_name} - Just the filename, without the extension

{file_extension} - The extension of the file

input_start stores the start of the input comment block.

input_end stores the end of the input comment block.

The default schema can be found in Preferences: Package Settings > SublimeInput > Settings – Default

The following schemas have been included by default: - C - C++ - Python - Java

Keyboard Shortcuts

  • Ctrl + Alt + B - Build/Run program
  • Ctrl + Alt + C - Cancel the running pogram

Current Status

The Plugin is in active development. Windows users may encounter some bugs.