https://github.com/ryu1kn/vscode-put-print
Visual Studio Code Extension. Insert print statement into your code with template defined by language
https://github.com/ryu1kn/vscode-put-print
debugging vscode-extension
Last synced: 12 months ago
JSON representation
Visual Studio Code Extension. Insert print statement into your code with template defined by language
- Host: GitHub
- URL: https://github.com/ryu1kn/vscode-put-print
- Owner: ryu1kn
- License: mit
- Created: 2016-06-07T12:08:54.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2023-07-11T01:01:06.000Z (almost 3 years ago)
- Last Synced: 2025-06-18T18:57:53.471Z (12 months ago)
- Topics: debugging, vscode-extension
- Language: TypeScript
- Homepage: https://marketplace.visualstudio.com/items?itemName=ryu1kn.putprint
- Size: 5.98 MB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
[](https://travis-ci.org/ryu1kn/vscode-put-print) [](https://codeclimate.com/github/ryu1kn/vscode-put-print)
# Print Debug (aka Put Print)
## Features
Quickly put print statements to help you print debug your code.
Templates from which print statements are composed can be defined/overwritten per language in your user preferences.

Escape certain sequences when converting the selected expression into a print statement.

Specify print statement template per language.

Put sequence number to your print statements.

## Request Features or Report Bugs
Feature requests and bug reports are very welcome: https://github.com/ryu1kn/vscode-put-print/issues
A couple of requests from me when you raise an github issue.
* **Requesting a feature:** Please try to provide the context of why you want the feature. Such as, in what situation the feature could help you and how, or how the lack of the feature is causing an inconvenience to you. I can't think of introducing it until I understand how it helps you 🙂
* **Reporting a bug:** Please include environment information (OS name/version, the editor version). Also consider providing screenshots (or even videos) where appropriate. They are often very very helpful!
## Commands
* `PrintDebug: Select Expression for Composing Print Statement`
Select an expression to convert to a print statement, or deselect a selected expression if no expression is highlighted (default: `ctrl+r s`).
* `PrintDebug: Put Print Statement`
Put print statement composed from selected expression, template and counter (default: `ctrl+r s`).
* `PrintDebug: Reset Counter`
Reset the counter value (default: none).
## Customise Keyboard Shortcuts
To set your own keyboard shortcuts for put-print commands, put the key sequences you like in your keyboard shortcut settings. For example:
```json
{ "key": "shift+f6", "command": "putprint.selectExpression",
"when": "editorTextFocus" },
{ "key": "f6", "command": "putprint.putPrintStatement",
"when": "editorTextFocus" }
```
## Extension Settings
You can specify a template for a print statement per language.
* `putprint.printStatement.${languageId}.template`
Print statement template for the language `languageId`. Will be used when expression is selected
* `putprint.printStatement.${languageId}.templateForNoExpression`
This is also a template but will be used when no expression is selected
* `putprint.printStatement.${languageId}.escapeRules`
List of escape rules for language `languageId` template
For example, a print statement for javascript is, by default, provided as follows. You can overwrite this in your "User/Workspace Settings".
```json
"putprint.printStatement.javascript.template": "console.log('{{selectedExpression|escape}}:', {{selectedExpression}})",
"putprint.printStatement.javascript.templateForNoExpression": "console.log('>>>>> {{count}}')",
"putprint.printStatement.javascript.escapeRules": [["'", "\\'"], ["\\", "\\\\"]],
```
### Special Sequences in Templates
`{{KEYWORD}}` is for a placeholder to inject a certain value. Currently, there are:
* `{{selectedExpression}}`
Replaced with the expression you selected with "PrintDebug: Select Expression ..." command
* `{{selectedExpression|escape}}`
Same with `{{selectedExpression}}` but the result will be escaped by the rules provided as "escapeRules"
* `{{count}}`
Replaced with counter value which is incremented every time you put a print statement that contains `{{count}}`
If you haven't specified a print statement template for the language you're working on, default template,
which is either `putprint.printStatement.default.template` or `putprint.printStatement.default.templateForNoExpression`,
depending on whether you're currently selecting an expression, will be used.
## Changelog
* https://github.com/ryu1kn/vscode-put-print/blob/master/CHANGELOG.md