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

Sublime Input

by mavidser ST2/ST3 Trending

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

Details

Installs

  • Total 6K
  • Win 3K
  • OS X 1K
  • Linux 1K
Aug 20 Aug 19 Aug 18 Aug 17 Aug 16 Aug 15 Aug 14 Aug 13 Aug 12 Aug 11 Aug 10 Aug 9 Aug 8 Aug 7 Aug 6 Aug 5 Aug 4 Aug 3 Aug 2 Aug 1 Jul 31 Jul 30 Jul 29 Jul 28 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
Windows 1 1 7 2 4 2 4 5 3 4 0 6 8 5 4 4 6 12 3 5 8 4 6 5 7 4 6 3 4 6 2 5 10 6 6 4 7 3 3 5 6 5 3 3 1 9
OS X 0 4 5 0 4 2 1 0 0 1 4 1 3 1 1 3 3 2 0 1 1 0 0 1 1 1 1 1 3 2 1 3 3 5 1 3 0 3 2 2 0 1 1 0 1 2
Linux 0 7 6 4 2 2 4 3 5 2 4 2 1 3 4 3 2 3 0 7 2 2 3 0 1 0 3 1 2 2 2 3 1 5 4 1 4 2 2 3 3 2 1 1 3 0

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.