Package Control

The Sublime Text package directory, resurrected.

BoxDrawing

Sublime Text Package enabling users to draw lines and boxes with arrow-key combinations

SepAugJulJunMayAprMarFebJan Dec2025 NovOct 2026-W43 | installs: 2 | removals: 0 | upgrades: 0 2026-W43 | installs: 2 | removals: 0 | upgrades: 0 2026-W43 | installs: 2 | removals: 0 | upgrades: 0 2026-W42 | installs: 0 | removals: 0 | upgrades: 0 2026-W42 | installs: 0 | removals: 0 | upgrades: 0 2026-W42 | installs: 0 | removals: 0 | upgrades: 0 2026-W41 | installs: 0 | removals: 0 | upgrades: 0 2026-W41 | installs: 0 | removals: 0 | upgrades: 0 2026-W41 | installs: 0 | removals: 0 | upgrades: 0 2026-W40 | installs: 2 | removals: 0 | upgrades: 0 2026-W40 | installs: 2 | removals: 0 | upgrades: 0 2026-W40 | installs: 2 | removals: 0 | upgrades: 0 2026-W39 | installs: 6 | removals: 1 | upgrades: 0 2026-W39 | installs: 6 | removals: 1 | upgrades: 0 2026-W39 | installs: 6 | removals: 1 | upgrades: 0 2026-W38 | installs: 4 | removals: 2 | upgrades: 0 2026-W38 | installs: 4 | removals: 2 | upgrades: 0 2026-W38 | installs: 4 | removals: 2 | upgrades: 0 2026-W37 | installs: 1 | removals: 0 | upgrades: 0 2026-W37 | installs: 1 | removals: 0 | upgrades: 0 2026-W37 | installs: 1 | removals: 0 | upgrades: 0 2026-W36 | installs: 3 | removals: 2 | upgrades: 0 2026-W36 | installs: 3 | removals: 2 | upgrades: 0 2026-W36 | installs: 3 | removals: 2 | upgrades: 0 2026-W35 | installs: 3 | removals: 0 | upgrades: 0 2026-W35 | installs: 3 | removals: 0 | upgrades: 0 2026-W35 | installs: 3 | removals: 0 | upgrades: 0 2026-W34 | installs: 6 | removals: 1 | upgrades: 0 2026-W34 | installs: 6 | removals: 1 | upgrades: 0 2026-W34 | installs: 6 | removals: 1 | upgrades: 0 2026-W33 | installs: 7 | removals: 5 | upgrades: 0 2026-W33 | installs: 7 | removals: 5 | upgrades: 0 2026-W33 | installs: 7 | removals: 5 | upgrades: 0 2026-W32 | installs: 5 | removals: 4 | upgrades: 0 2026-W32 | installs: 5 | removals: 4 | upgrades: 0 2026-W32 | installs: 5 | removals: 4 | upgrades: 0 2026-W31 | installs: 5 | removals: 0 | upgrades: 0 2026-W31 | installs: 5 | removals: 0 | upgrades: 0 2026-W31 | installs: 5 | removals: 0 | upgrades: 0 2026-W30 | installs: 1 | removals: 1 | upgrades: 0 2026-W30 | installs: 1 | removals: 1 | upgrades: 0 2026-W30 | installs: 1 | removals: 1 | upgrades: 0 2026-W29 | installs: 1 | removals: 1 | upgrades: 0 2026-W29 | installs: 1 | removals: 1 | upgrades: 0 2026-W29 | installs: 1 | removals: 1 | upgrades: 0 2026-W28 | installs: 4 | removals: 2 | upgrades: 0 2026-W28 | installs: 4 | removals: 2 | upgrades: 0 2026-W28 | installs: 4 | removals: 2 | upgrades: 0 2026-W27 | installs: 1 | removals: 0 | upgrades: 0 2026-W27 | installs: 1 | removals: 0 | upgrades: 0 2026-W27 | installs: 1 | removals: 0 | upgrades: 0 2026-W26 | installs: 3 | removals: 2 | upgrades: 0 2026-W26 | installs: 3 | removals: 2 | upgrades: 0 2026-W26 | installs: 3 | removals: 2 | upgrades: 0 2026-W25 | installs: 1 | removals: 0 | upgrades: 0 2026-W25 | installs: 1 | removals: 0 | upgrades: 0 2026-W25 | installs: 1 | removals: 0 | upgrades: 0 2026-W24 | installs: 1 | removals: 1 | upgrades: 0 2026-W24 | installs: 1 | removals: 1 | upgrades: 0 2026-W24 | installs: 1 | removals: 1 | upgrades: 0 2026-W23 | installs: 2 | removals: 2 | upgrades: 0 2026-W23 | installs: 2 | removals: 2 | upgrades: 0 2026-W23 | installs: 2 | removals: 2 | upgrades: 0 2026-W22 | installs: 0 | removals: 0 | upgrades: 0 2026-W22 | installs: 0 | removals: 0 | upgrades: 0 2026-W22 | installs: 0 | removals: 0 | upgrades: 0 2026-W21 | installs: 1 | removals: 0 | upgrades: 0 2026-W21 | installs: 1 | removals: 0 | upgrades: 0 2026-W21 | installs: 1 | removals: 0 | upgrades: 0 2026-W20 | installs: 3 | removals: 0 | upgrades: 1 2026-W20 | installs: 3 | removals: 0 | upgrades: 1 2026-W20 | installs: 3 | removals: 0 | upgrades: 1 2026-W19 | installs: 1 | removals: 0 | upgrades: 3 2026-W19 | installs: 1 | removals: 0 | upgrades: 3 2026-W19 | installs: 1 | removals: 0 | upgrades: 3 2026-W18 | installs: 3 | removals: 1 | upgrades: 8 2026-W18 | installs: 3 | removals: 1 | upgrades: 8 2026-W18 | installs: 3 | removals: 1 | upgrades: 8 2026-W17 | installs: 2 | removals: 2 | upgrades: 0 2026-W17 | installs: 2 | removals: 2 | upgrades: 0 2026-W17 | installs: 2 | removals: 2 | upgrades: 0 2026-W16 | installs: 5 | removals: 0 | upgrades: 2 2026-W16 | installs: 5 | removals: 0 | upgrades: 2 2026-W16 | installs: 5 | removals: 0 | upgrades: 2 2026-W15 | installs: 10 | removals: 3 | upgrades: 2 2026-W15 | installs: 10 | removals: 3 | upgrades: 2 2026-W15 | installs: 10 | removals: 3 | upgrades: 2 048 WeeklyInstalls 048 WeeklyUpgrades 2026-W17 | upgrades: 0 1.1.0 2026-W15 | upgrades: 2 1.0.3 / 1.0.2 / ... 1.0.3 / 1.0.2 / 1.0.1 / 1.0.0
Installations: recent average 3 per week, 83 in total
Installations minus removals
Upgrades

Links

Versions

1.1.0 (ST4000+) ·
2026-04-26 20:37

More

License Requires Sublime Text Build 4000 or later Download BoxDrawing from Package Control Latest Tag GitHub Repository

BoxDrawing

BoxDrawing is a Sublime Text package enabling the user, with these arrow-key combinations:

to draw lines and boxes like these:

Example of BoxDrawing Lines and Boxes

Demo: Drawing an ASCII Table

Table of contents


Features

Installation

The preferred method of installing BoxDrawing is: from Sublime Text's Command Palette, execute Package Control: Install Package and select BoxDrawing.

If you instead clone BoxDrawing's repository into your <data_path>/Packages/BoxDrawing/ directory, ensure that the name of the directory uses a capital 'B' and capital 'D' as shown. Otherwise, Sublime Text will not find certain files it needs.

Usage

  1. In any type of document, ensure there is just 1 selection (caret) and that no text is selected.

  2. Turn Box-Drawing ON using Alt-Keypad / or Tools > BoxDrawing > Enabled or from the Command Palette BoxDrawing: Toggle ON/OFF. (A temporary Status-Bar message "Box Drawing ON/OFF ()" shows which mode the current View is in.) The Tools > BoxDrawing > Enabled menu item always shows the ON/OFF state for the current View by showing a checkmark (✓) next to that menu item when Box Drawing is enabled.

  3. Draw using single lines using the arrow keys while the Alt key is held down.

  4. Draw using double lines using the arrow keys while the Alt-Shift keys are held down.

  5. Erase using the arrow keys while the Alt-Shift-Ctrl keys are held down.

  6. Change current character set using Alt-Keypad * or Tools > BoxDrawing > Change Character Set (char_set) or from the Command Palette BoxDrawing: Change Character Set. (A temporary Status-Bar message "Box Drawing ON/OFF: (char_set)" shows which character set is now current.) The Tools > BoxDrawing > Change Character Set (char_set) menu item always shows the current character set in parentheses.

  7. When you are done drawing, turn Box-Drawing OFF again with Alt-Keypad / or Tools > BoxDrawing > Enabled or from the Command Palette BoxDrawing: Toggle ON/OFF.

Settings

The following setting items can be found and individually overridden via the usual method for Sublime Text Package settings: Preferences > Package Settings > BoxDrawing > Settings. The comments in the default settings file explain what each one means and lists valid values. Their default values are shown below.

Key Bindings

This Package provides the following customizable key bindings:

Key Combination Meaning
Alt-Keypad / Turn Box Drawing ON or OFF
Alt-Keypad * Switch character sets (ASCII <==> Unicode)
Alt-(Left|Right|Up|Down) Draw with single lines[^1]
Alt-Shift-(Left|Right|Up|Down) Draw with double lines[^1]
Ctrl-Alt-Shift-(Left|Right|Up|Down) Erase[^1]

When Box-Drawing is ON for a particular View, the Package temporarily overrides the normal key bindings for the arrow-key combinations for that View only. When Box Drawing is turned OFF again, normal key bindings for the arrow keys are resumed. Alt-Keypad / and Alt-Keypad * both remain bound to the ON/OFF and switch character sets Commands full time.

By default, Alt-(Left|Right) key combinations are mapped to "move left/right by sub-words" with "extending selection" behavior added when the Shift key is held down.

And by default, Alt-(Up|Down) is mapped in the reStructuredText Package to "move up/down by 1 section", with a possible Shift modifier limiting the move to only the same level of section or higher.

If you need to re-map any of the above key bindings, you can do so via:

`Preferences > Package Settings > BoxDrawing > Key Bindings`.

Menu Items

BoxDrawing adds the following menu items to Sublime Text when installed:

Commands

BoxDrawing adds the following Commands to Sublime Text when installed:

Action Key Binding Command Palette
Open README ---not bound--- BoxDrawing: Open Readme
Edit BoxDrawing Settings ---not bound--- Preferences: BoxDrawing Settings
Edit BoxDrawing Key Bindings ---not bound--- Preferences: BoxDrawing Key Bindings
Turn Box-Drawing ON or OFF Alt-Keypad / BoxDrawing: Toggle ON/OFF
Toggle between ASCII and Unicode Alt-Keypad * BoxDrawing: Toggle ASCII <==> Unicode
DrawOneCharacter(up, single) Alt-Up[^1] BoxDrawing: Draw Single Line Up
DrawOneCharacter(right, single) Alt-Right[^1] BoxDrawing: Draw Single Line Right
DrawOneCharacter(down, single) Alt-Down[^1] BoxDrawing: Draw Single Line Down
DrawOneCharacter(left, single) Alt-Left[^1] BoxDrawing: Draw Single Line Left
DrawOneCharacter(up, double) Alt-Shift-Up[^1] BoxDrawing: Draw Double Line Up
DrawOneCharacter(right, double) Alt-Shift-Right[^1] BoxDrawing: Draw Double Line Right
DrawOneCharacter(down, double) Alt-Shift-Down[^1] BoxDrawing: Draw Double Line Down
DrawOneCharacter(left, double) Alt-Shift-Left[^1] BoxDrawing: Draw Double Line Left
DrawOneCharacter(up, none) Ctrl-Alt-Shift-Up[^1] BoxDrawing: Draw Erase Up
DrawOneCharacter(right, none) Ctrl-Alt-Shift-Right[^1] BoxDrawing: Draw Erase Right
DrawOneCharacter(down, none) Ctrl-Alt-Shift-Down[^1] BoxDrawing: Draw Erase Down
DrawOneCharacter(left, none) Ctrl-Alt-Shift-Left[^1] BoxDrawing: Draw Erase Left

[^1]: when BoxDrawing is ON

Notes

  1. While Sublime Text supports having multiple carets, BoxDrawing will draw box characters only when:

    • Box Drawing is ON for that View,
    • there is one caret, and
    • no text is selected.
  2. While the Shadow Character Set is selected, there is no ERASE function. Instead, the modifier key combinations select which shadow character is written to the Buffer:

    • Alt => light shadow character
    • Alt-Shift => medium shadow character
    • Alt-Shift-Ctrl => dark shadow character

Results

Packages