Sublime Text 3 is one the best code editors currently in existence (fact), but most people just install it an use it without realising how it can be customized and extended to meet your needs. My aim was to release a series of videos explaining some of these widely unknown capabilities. Sublime Text is one of the most widely used text and source code editors for web and software development. In this tutorial we'll show you how to install Sublime Text 3 on an Ubuntu 18.04 machine.
BrowseBring a real terminal to Sublime Text
Installs
- Total107K
- Win54K
- Mac25K
- Linux28K
Apr 25 | Apr 24 | Apr 23 | Apr 22 | Apr 21 | Apr 20 | Apr 19 | Apr 18 | Apr 17 | Apr 16 | Apr 15 | Apr 14 | Apr 13 | Apr 12 | Apr 11 | Apr 10 | Apr 9 | Apr 8 | Apr 7 | Apr 6 | Apr 5 | Apr 4 | Apr 3 | Apr 2 | Apr 1 | Mar 31 | Mar 30 | Mar 29 | Mar 28 | Mar 27 | Mar 26 | Mar 25 | Mar 24 | Mar 23 | Mar 22 | Mar 21 | Mar 20 | Mar 19 | Mar 18 | Mar 17 | Mar 16 | Mar 15 | Mar 14 | Mar 13 | Mar 12 | Mar 11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 48 | 80 | 121 | 108 | 109 | 110 | 106 | 98 | 89 | 117 | 107 | 117 | 102 | 109 | 88 | 97 | 95 | 94 | 125 | 91 | 86 | 74 | 83 | 115 | 80 | 110 | 107 | 96 | 85 | 106 | 108 | 107 | 109 | 127 | 99 | 91 | 89 | 113 | 95 | 109 | 89 | 85 | 85 | 98 | 103 | 110 |
Mac | 20 | 26 | 29 | 31 | 44 | 36 | 43 | 26 | 29 | 35 | 47 | 40 | 45 | 33 | 30 | 35 | 46 | 30 | 32 | 44 | 32 | 15 | 27 | 35 | 43 | 37 | 26 | 37 | 19 | 18 | 26 | 47 | 43 | 41 | 36 | 21 | 16 | 30 | 29 | 30 | 23 | 39 | 27 | 23 | 34 | 30 |
Linux | 36 | 35 | 43 | 48 | 47 | 48 | 39 | 40 | 41 | 40 | 45 | 42 | 37 | 45 | 21 | 38 | 43 | 51 | 38 | 29 | 37 | 50 | 51 | 33 | 47 | 26 | 52 | 61 | 37 | 33 | 38 | 54 | 47 | 42 | 42 | 42 | 52 | 45 | 44 | 41 | 50 | 48 | 30 | 38 | 33 | 38 |
Readme
- Source
- raw.githubusercontent.com
The first cross platform terminal for Sublime Text.
Unix shell | Cmd.exe |
---|---|
Terminal in panel | Support showing images |
This package is heavily inspired by TerminalView. Compare with TerminalView, this has
- Windows support
- continuous history
- easily customizable themes (see Terminus Utilities)
- unicode support
- 256 colors support
- better xterm support
- terminal panel
- imgcat support (PS: it also works on Linux / WSL)
Installation
Package Control.
Getting started
run
Terminus: Open Default Shell in Tab
OdatNurd has made several videos on Terminus. See, for examples,
- https://www.youtube.com/watch?v=etIJMVIvVgg (most up to date)
Terminus Sublime Text 3000
Shell configurations
Terminus comes with several shell configurations. The settings file should be quite self explanatory.
User Key Bindings
You may find these key bindings useful. To edit, run Preferences: Terminus Key Bindings
.Check the details for the arguments of terminus_open
below.
- toggle terminal panel
- open a terminal view at current file directory
or by passing a custom cmd
, say ipython
- open terminal in a split view by using Origami's
carry_file_to_pane
- ctrl-w to close terminal
Following keybinding can be considered if one wants to use ctrl+w
to close terminals.
User Commands in Palette
- run
Preferences: Terminus Command Palette
. Check the details for the arguments ofterminus_open
below
or by passing custom cmd
, say ipython
- open terminal in a split tab by using Origami's
carry_file_to_pane
Terminus Build System
It is possible to use Terminus
as a build system. The target terminus_exec
is a drop in replacement of the default target exec
. It takes exact same arguments as terminus_open
except that their default values are set differently.
Terminus Build
terminus_cancel_build
is used to cancel the build when user runs cancel_build
triggered by ctrl+c (macOS) or ctrl+break (Windows / Linux).
The following is an example of build system define in project settings that run a python script
The same Hello World example could be specified via a .sublime-build
file.
Instead of cmd
, user could also specify shell_cmd
. In macOS and linux, a bash shell will be invoked; and in Windows, cmd.exe will be invoked.
Alt-Left/Right to move between words (Unix)
Bash: add the following in
.bash_profile
or.bashrc
Zsh: add the following in
.zshrc
Terminus Shell
Some programs, such as julia, do not recognize the standard keycodes for alt+left
and alt+right
. You couldbind them to alt+b
and alt+f
respectively“json[ { 'keys”: [“alt+left”], “command”: “terminus_keypress”, “args”: {“key”: “b”, “alt”: true}, “context”: [{“key”: “terminus_view”}] }, { “keys”: [“alt+right”], “command”: “terminus_keypress”, “args”: {“key”: “f”, “alt”: true}, “context”: [{“key”: “terminus_view”}] }]
The fields cmd
and cwd
understand Sublime Text build system variables.
the setting
view.settings().get('terminus_view.tag')
can be used to identify the terminal andkeybind can be binded with specific tagged terminal
- text can be sent to the terminal with
If tag
is not provided or is None
, the text will be sent to the first terminal found in the current window.
FAQ
Memory issue
It is known that Terminus sometimes consumes a lot of memory after extensive use. It is because Sublime Text keeps an infinite undo stack. There is virtually no fix unless upstream provides an API to work with the undo stack. Meanwhile, users could execute Terminus: Reset
to release the memory.
Color issue when maximizing and minimizing terminal
It is known that the color of the scrollback history will be lost when a terminal is maximized or minimized from or to the panel. There is no fix for this issue.
Terminal panel background issue
If you are using DA UI and your terminal panel has weired background color,try playing with the setting panel_background_color
in DA UI: ThemeSettings
.
Cmd.exe rendering issue in panel
Due to a upstream bug (may winpty or cmd.exe?), there may be arbitrary empty lines inserted between prompts if the panel is too short. It seems that cmder and powershell are not affected by this bug.
Acknowledgments
Terminal Command Sublime Text 3
This package won't be possible without pyte, pywinpty and ptyprocess.