• Stars
    star
    151
  • Rank 246,057 (Top 5 %)
  • Language
    C#
  • License
    Other
  • Created almost 8 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Visual Studio extension

JavaScript Prettier

Build status

Download this extension from the Marketplace or get the CI build.


Prettier is an opinionated JavaScript formatter inspired by refmt with advanced support for language features from ES2017, JSX, TypeScript and Flow. It removes all original styling and ensures that all outputted JavaScript conforms to a consistent style.

See the change log for changes and road map.

Features

  • Prettifies JavaScript or TypeScript files
  • Uses Prettier node module
    • If a version of Prettier can be found installed via npm locally (relative to the current file), it will be used.
    • If no local Prettier installation is found, the extension falls back to an embedded Prettier.
  • Reads the standard Prettier configuration file

Prettify

This extension calls the Prettier node module behind the scenes to format any JavaScript document to its standards.

For example, take the following code:

foo(arg1, arg2, arg3, arg4);

That looks like the right way to format it. However, we've all run into this situation:

foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne());

Suddenly our previous format for calling function breaks down because this is too long. What you would probably do is this instead:

foo(
  reallyLongArg(),
  omgSoManyParameters(),
  IShouldRefactorThis(),
  isThereSeriouslyAnotherOne()
);

Invoke the command from the context menu in the JavaScript editor.

Context Menu

FAQ

Updating from 1.1 to 2.0

Depending on your Visual Studio Configuration, you might experience that 2.0's output differs from the one you got with 1.1.

Most likely it is the tab size that has been changed from 4 spaces to 2. Please read the configuration section below on details how to get 4 spaces as tabsize.

Configuration via .prettierrc

It is quite easy to setup Prettier to format a little bit differently, like having 4 spaces instead of 2 spaces per tab.

The easiest way is to create a .prettierrc file in your project root.

Here is an example containing the two most common settings that people want to change: tabWidth is how many spaces it uses for indentation, and printWidth is how long a line can be before it breaks down:

  {
    "tabWidth": 4,
    "printWidth": 100
  }

Read more about Prettier configuration options here.

Settings

Access extension settings within Visual Studio via Tools >>> Options, Prettier.

  1. Format on Save
    • If true, run Prettier whenever a JavaScript file is saved.
    • (Try setting to true. This is where the magic happens, instantly snapping your code into place! Never fret with whitespace again!)
  2. Prettier version for embedded usage:
    • If your solution does not have a local version of Prettier installed via npm, the extension will attempt to download and use the version noted here.
    • Extension will download a requested version once and reuse that now embedded Prettier install until the setting requests another version.
    • If the version declared cannot be found via npm, the extension will revert to 2.2.1, a known good Prettier version.
    • NOTE: To preserve legacy behavior, note that previous 2.x versions of this extension used Prettier 1.12.1.

Can it use my bundled version of Prettier?

Yes, the plugin will search for a locally (relative to the open file) installed Prettier version before falling back to its own version.

It does not currently support using a globally installed version of Prettier, and will use its embedded version instead.

Contribute

Check out the contribution guidelines if you want to contribute to this project.

For cloning and building this project yourself, make sure to install the Extensibility Tools 2015 extension for Visual Studio which enables some features used by this project.

License

Apache 2.0

More Repositories

1

Miniblog.Core

An ASP.NET Core blogging engine
JavaScript
1,466
star
2

WebEssentials2013

Visual Studio extension
C#
949
star
3

MiniBlog

A minimal blog engine using Razor Web Pages
C#
915
star
4

BundlerMinifier

Visual Studio extension
C#
616
star
5

ShortcutExporter

Visual Studio extension
C#
481
star
6

WebCompiler

Visual Studio extension for compiling LESS and Sass files
C#
448
star
7

MarkdownEditor

A Visual Studio extension
C#
397
star
8

WebEssentials.AspNetCore.ServiceWorker

C#
342
star
9

WebEssentials2015

A Visual Studio extension for web developers
C#
302
star
10

AddAnyFile

A Visual Studio extension
C#
256
star
11

Tweakster

A Visual Studio extension
C#
241
star
12

PhotoGallery

ASP.NET Core Photo Gallery
C#
172
star
13

MarkdownEditor2022

A Visual Studio extension
C#
168
star
14

OpenCommandLine

A Visual Studio extension
C#
158
star
15

ExtensibilityTools

Tools for writing Visual Studio extensions
C#
153
star
16

RainbowBraces

A Visual Studio extension
C#
132
star
17

EditorConfigLanguage

A Visual Studio extension
C#
129
star
18

FileDiffer

A Visual Studio extension
C#
128
star
19

TrailingWhitespace

Display trailing whitespace in any VS editor
C#
118
star
20

PrivateGalleryCreator

Create private extension galleries for Visual Studio
C#
118
star
21

FileNesting

Nest files in Solution Explorer
C#
117
star
22

FileIcons

A Visual Studio extension
C#
115
star
23

WebEssentials2012

C#
96
star
24

NpmTaskRunner

Visual Studio extension
C#
88
star
25

TypeScriptDefinitionGenerator

A Visual Studio extension
C#
85
star
26

SolutionColors

A Visual Studio extension
C#
76
star
27

ZenCodingVS

A Visual Studio extension
C#
70
star
28

ExtensionPackTools

A Visual Studio extension
C#
67
star
29

MarkSite

A markdown powered CMS written in ASP.NET
C#
66
star
30

TextmateBundleInstaller

A Visual Studio extension
C#
65
star
31

RestClientVS

C#
65
star
32

ShowTheShortcut

A Visual Studio extension
C#
65
star
33

PackageInstaller

A Visual Studio extension
C#
64
star
34

CodeCleanupOnSave

C#
62
star
35

VuePack

C#
61
star
36

OpenInVsCode

A Visual Studio extension
C#
61
star
37

WebAnalyzer

A Visual Studio extension
C#
55
star
38

WebEssentials.AspNetCore.OutputCaching

C#
53
star
39

CommentRemover

A Visual Studio extension
C#
51
star
40

WebEssentials.AspNetCore.CdnTagHelpers

A CDN helper for ASP.NET Core
C#
49
star
41

WebEssentials2019

C#
49
star
42

ImageOptimizerWebJob

C#
47
star
43

DialToolsForVS

A Visual Studio extension
C#
47
star
44

ReverseProxyCDN

C#
42
star
45

CommandTaskRunner

A Visual Studio extension
C#
42
star
46

JSON-Intellisense

NPM package Intellisense in package.json
C#
40
star
47

WebPackTaskRunner

A Visual Studio extension
C#
40
star
48

VuePack2017

A Visual Studio extension
C#
38
star
49

AspNetCoreTemplatePack

C#
38
star
50

SolutionExtensions

A Visual Studio extension
C#
36
star
51

FeedCollector

A simple website for aggregating RSS/Atom feeds
C#
36
star
52

WebAccessibilityChecker

A Visual Studio extension
C#
34
star
53

VsixGallery

The Open VSIX Gallery
C#
34
star
54

ClearComponentCache

A Visual Studio extension
C#
33
star
55

Surrounder

A Visual Studio extension
C#
33
star
56

PrettyPaste

Fixes the added blank lines when copying and pasting from IE
C#
32
star
57

ImageSprites

A Visual Studio extension
C#
32
star
58

Editorsk

A Visual Studio extension
C#
30
star
59

JavaScriptSnippetPack

A Visual Studio extension
Vim Snippet
30
star
60

CloseAllTabs

A Visual Studio extension
C#
30
star
61

WorkspaceFiles

C#
30
star
62

IgnoreFiles

A Visual Studio extension
C#
29
star
63

DarkTheme2019

C#
29
star
64

zencoding

Provides hybrid ZenCoding for Web Essentials
C#
29
star
65

CommandTableInfo

A Visual Studio extension
C#
29
star
66

Madskristensen.VisualStudio.SDK

Visual Studio SDK meta packages
29
star
67

ImagePreview

C#
28
star
68

ExtensionGallery

A Visual Studio extension gallery
C#
28
star
69

Packman

A client-side package manager
C#
28
star
70

KnownMonikersExplorer

A Visual Studio extension
C#
28
star
71

SvgViewer

Shows the rendered image of .svg files
C#
27
star
72

SqlFormatter

C#
27
star
73

TemplateCreator

A Visual Studio extension
C#
27
star
74

BasicEssentials

26
star
75

DeveloperNews

C#
26
star
76

BrowserReloadOnSave

A Visual Studio extension
C#
26
star
77

StaticWebHelper

Perf optimize static websites hosted on IIS
C#
25
star
78

MIDL

A Visual Studio extension
C#
24
star
79

Community.VisualStudio.Toolkit

A community toolkit for writing Visual Studio extensions
C#
24
star
80

vswebessentials.com

The official website of Web Essentials for Visual Studio
C#
23
star
81

ExtensionUpdater

Visual Studio extension for auto updating extensions
C#
23
star
82

CssTools

A Visual Studio extension
C#
22
star
83

ExtensionScripts

PowerShell
22
star
84

InsertGuid

A Visual Studio extension
C#
22
star
85

CopyNice

A Visual Studio extension
C#
22
star
86

ErrorHighlighter

Visual Studio extension
C#
21
star
87

EditorColorPreview

C#
21
star
88

JsonSchemaGenerator

A Visual Studio extension
C#
20
star
89

SpaTemplatePack

A Visual Studio extension
C#
20
star
90

VsctIntellisense

Intellisense for VSCT files
C#
20
star
91

Madskristensen.VisualStudio.SDK.HelpersOLD

C#
19
star
92

PkgdefLanguage

A Visual Studio extension
C#
19
star
93

JavaScriptRegions

A Visual Studio extension
C#
19
star
94

OptionsSample

A Visual Studio extension sample
C#
19
star
95

GitHubThemes

C#
18
star
96

WebEssentialsChrome

A browser extension
JavaScript
18
star
97

OutputWindowFilter

C#
17
star
98

MiniBlogFormatter

C#
17
star
99

ShowKeybindings

A Visual Studio extension
HTML
17
star
100

GitPull

Easy way to "git pull" in Visual Studio
C#
16
star