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

Text​Debugging

by Colin T.A. Gray (colinta) ST3 Needs Review

Adds prinf-style debugging.

Details

Installs

  • Total 2K
  • Win 2K
  • Mac 235
  • Linux 318
Dec 18 Dec 17 Dec 16 Dec 15 Dec 14 Dec 13 Dec 12 Dec 11 Dec 10 Dec 9 Dec 8 Dec 7 Dec 6 Dec 5 Dec 4 Dec 3 Dec 2 Dec 1 Nov 30 Nov 29 Nov 28 Nov 27 Nov 26 Nov 25 Nov 24 Nov 23 Nov 22 Nov 21 Nov 20 Nov 19 Nov 18 Nov 17 Nov 16 Nov 15 Nov 14 Nov 13 Nov 12 Nov 11 Nov 10 Nov 9 Nov 8 Nov 7 Nov 6 Nov 5 Nov 4
Windows 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mac 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Readme

Source
raw.​githubusercontent.​com

Text Debugging

Adds prinf-style debugging. Select some variables or expressions and a blank line, and this command will insert language-appropriate debugging statements. I try to insert dynamic line numbers when possible (easy in some languages, impossible in others). It falls back to static line numbers if the language doesn't have “compile time” line numbers.

Installation

Using Package Control, install “TextDebugging” or clone this repo in your packages folder.

I recommended you add key bindings for the commands. I've included my preferred bindings below. Copy them to your key bindings file (⌘⇧,).

Commands

text_debugging: First, select multiple variables. Then put an empty cursor somewhere and run this command (recommended: ctrl+p). You'll get some good debug output that looks like this (Python example):

print("""=============== Untitled at line {0} ===============
looks: {1!r}
like: {2!r}
this: {3!r}
""".format(__import__('sys')._getframe().f_lineno - 2, looks, like, this, ))

This package supports many languages, here's a ruby example:

puts("=============== at line 49 ===============
looks: #{looks.inspect}
like: #{like.inspect}
this: #{this.inspect}")

Key Bindings

Copy these to your user key bindings file.

{ "keys": ["ctrl+p"], "command": "text_debugging" },