Skip to content

A Sublime plugin that provides native commands to load current source file into SublimeREPL

Notifications You must be signed in to change notification settings

xiaoyulas/LoadFileToRepl

 
 

Repository files navigation

LoadFileToRepl Sublime Text 2/3 plugin

![Gitter](https://badges.gitter.im/Join Chat.svg)

Description

This is a companion plugin for SublimeREPL providing a command to load current source file into according REPL. It just uses a REPL command, like :load "foo.hs" for Haskell, or (load-file "foo.clj") for Clojure and etc.

At the moment it supports load command for REPLs of the following languages (in alphabetic order):

Language REPL Contributor
Clojure Leiningen @chrisalbright #6
Common Lisp @cfmeyers #12
Elixir/Erlang iex @yitzhakbg #23
F# fsi @garystanford #31
Groovy groovysh @rcavalcanti #15
Haskell GHCi
Idris
JavaScript Node @jkroso #9
Lua @mkottman #5
Matlab @rowanc1 #17
OCaml @himito #36
PowerShell @mvoidex #7
Prolog SICStus @pedrokost #21
Python
R
Racket XREPL @keyanzhang #30
Ruby
Scala
Scheme MIT Scheme @cyberzlex #19
Standard ML SML @ActiveObject #8

It's easy to extend this list. Pull-requests are welcome!

Content

Command SublimeREPL: Load current file

  1. reveals REPL view or opens a new one according to the type of current file;
  2. optionally places REPL in another layout group (to see results simultaneously with code);
  3. optionally clears REPL before loading file;
  4. saves current file;
  5. and finally loads it into REPL, using according command;
  6. optionally moves cursor to the REPL.

You can call it using

  • Command Palette: ⌘⇧P ➤ SublimeREPL: Load current file ↩;
  • Menu: Tools ➤ SublimeREPL ➤ Load current file;
  • Hotkeys: see below.

Settings:

Command load_file_to_repl has several options:

  • clear — if true, clears REPL before loading file (false by default);

  • save_focus — if true, saves focus on the source file, else moves cursor to REPL (true by default).

  • split — if it has "horizontally" or "vertically" (default) value, it determines how window is splitted to show REPL in a new layout group. If it doesn't have one of these two values, or if window was already splitted, this option doesn't take effect — REPL is placed in a new tab or in the next layout group.

    Note: if you want another splitting behavior or more flexibility, take a look at the Origamy plugin.

You can find these options and their default values in the menu:

Sublime Text  ➤  Preferences  ➤  Package Settings  ➤  LoadFileToRepl  ➤  Open Settings

or in Command Palette:

Preferences: LoadFileToRepl Settings

Key Bindings:

There are two hotkeys predefined:

  • alt+enter — runs load_file_to_repl command with default options:
	{ "keys": ["super+enter"], 		 "command": "load_file_to_repl"},
  • alt+shift+enter — same, but clears REPL before loading file and moves cursor to REPL:
	{ "keys": ["super+shift+enter"], "command": "load_file_to_repl",
	  "args": {
	  	"clear": true,
	  	"save_focus": false
	  }
	}

You can find these bindings at

Sublime Text  ➤  Preferences  ➤  Package Settings  ➤  LoadFileToRepl  ➤  Default Key Bindings

Note: if you don't like them and want to turn off or make your own just set the use_load_file_to_repl_keybindings setting to false and reload Sublime.

Installation

Using Sublime Package Control:

Note: you should install first SublimeREPL plugin.

⌘⇧P  ➤  Package Control: Install package  ➤  LoadFileToRepl

Now restart Sublime Text to load the plugin settings. That's it!

About

A Sublime plugin that provides native commands to load current source file into SublimeREPL

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%