# Wanted: Solidity formatter for Visual Studio Code

**URL:** <https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940>\
**Category:** General\
**Created:** [June 28, 2019, 12:12am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940 "2019-06-28T00:12:02Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![abcoathup](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/abcoathup/32/415_2.png) [@abcoathup](https://forum.openzeppelin.com/u/abcoathup)\
**Post date:** [June 28, 2019, 12:12am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/1 "2019-06-28T00:12:02Z")

</div>

@dennison wants a Solidity formatter for Visual Studio Code.

As far as I can tell, there isn’t one yet.

We have Juan Blano’s essential Solidity extension, but this doesn’t do formatting currently. [https://github.com/juanfranblanco/vscode-solidity/issues/18](https://github.com/juanfranblanco/vscode-solidity/issues/18)

> **[juanfranblanco/vscode-solidity](https://github.com/juanfranblanco/vscode-solidity)**
>
> Visual Studio Code language support extension for Solidity smart contracts in Ethereum - juanfranblanco/vscode-solidity

Solium can do code formatting (I haven’t tried):

[https://solium.readthedocs.io/en/latest/user-guide.html?highlight=fix#automatic-code-formatting](https://solium.readthedocs.io/en/latest/user-guide.html?highlight=fix#automatic-code-formatting)

The other option could be to create a formatter extension:

> **[Creating a Formatter Extension](https://code.visualstudio.com/blogs/2016/11/15/formatters-best-practices)**
>
> Best practices for creating a Visual Studio Code formatter extension.

Any suggestions on how to automagically format Solidity?

---

<div class="post-metadata">

**Author:** ![abcoathup](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/abcoathup/32/415_2.png) [@abcoathup](https://forum.openzeppelin.com/u/abcoathup)\
**Post date:** [June 28, 2019, 8:49pm UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/2 "2019-06-28T20:49:05Z")

</div>

[QW4K on reddit](https://www.reddit.com/r/ethdev/comments/c6d6fp/wanted_solidity_formatter_for_visual_studio_code/es8uc5x/?utm_source=share&utm_medium=ios_app): There is a prettier for solidity plugin [https://github.com/prettier-solidity/prettier-plugin-solidity](https://github.com/prettier-solidity/prettier-plugin-solidity)

---

<div class="post-metadata">

**Author:** ![abcoathup](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/abcoathup/32/415_2.png) [@abcoathup](https://forum.openzeppelin.com/u/abcoathup)\
**Post date:** [July 1, 2019, 4:54am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/3 "2019-07-01T04:54:30Z")

</div>

@dennison I have asked the community on the forum, Reddit, Telegram groups, Discord. At this stage it looks like the prettier extension is the closest to a Visual Studio Code formatter extension.

The dream for “Shift+Alt+F” to format a document, or “Ctrl+K Ctrl+F” to format a selection will have to wait until we (or someone else in the community) creates a Solidity formatter extension.

---

<div class="post-metadata">

**Author:** ![obernardovieira](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/obernardovieira/32/15209_2.png) [@obernardovieira](https://forum.openzeppelin.com/u/obernardovieira)\
**Post date:** [July 3, 2019, 11:39am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/4 "2019-07-03T11:39:41Z")

</div>

It’s actually something that I want for a long time. Same as when you star typing /\*\* and press enter, it generates a basic comment format, like in JS. About this second one, I’ve actually discussed that with juan, but I’ve never done it. I haven’t had time to try any of this two, but it is defenetly two things that I want to have and I will try to find some time to build them.

BTW, thaks for the prettier, I didn’t knew it. So many good stuff out there.

---

<div class="post-metadata">

**Author:** ![ethzeus](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/ethzeus/32/749_2.png) [@ethzeus](https://forum.openzeppelin.com/u/ethzeus)\
**Post date:** [July 7, 2019, 3:15am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/5 "2019-07-07T03:15:48Z")

</div>

Worth reading [https://medium.com/coinmonks/introduction-to-solidity-linting-and-formatting-e838c074791a](https://medium.com/coinmonks/introduction-to-solidity-linting-and-formatting-e838c074791a)

---

<div class="post-metadata">

**Author:** ![abcoathup](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/abcoathup/32/415_2.png) [@abcoathup](https://forum.openzeppelin.com/u/abcoathup)\
**Post date:** [January 3, 2020, 4:56am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/6 "2020-01-03T04:56:33Z")

</div>

Hi @juanfranblanco,

Are there any plans to include or create a formatter extension to format Solidity for VS Code?

---

<div class="post-metadata">

**Author:** ![juanfranblanco](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/juanfranblanco/32/1542_2.png) [@juanfranblanco](https://forum.openzeppelin.com/u/juanfranblanco)\
**Post date:** [January 3, 2020, 4:56pm UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/7 "2020-01-03T16:56:55Z")

</div>

I was expecting one of the linters to provide this, included fixing the spaces. Obviously this spaces has dried up a bit over the last year, so it might end up something that will have to come up directly from the extension. Simple formatting won’t be hard to do, if we set a number of spaces / tabs per section, and leave the AST for other things.

Regarding the autocomment, I have seen there, solparse can help with that, or maybe the new functionality to output just the AST of solidity (which i think is finished now)

---

<div class="post-metadata">

**Author:** ![juanfranblanco](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/juanfranblanco/32/1542_2.png) [@juanfranblanco](https://forum.openzeppelin.com/u/juanfranblanco)\
**Post date:** [January 3, 2020, 7:19pm UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/8 "2020-01-03T19:19:47Z")

</div>

I think the best option will be to officially integrate the solidity plugin for prettier [https://github.com/prettier-solidity](https://github.com/prettier-solidity).

---

<div class="post-metadata">

**Author:** ![juanfranblanco](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.openzeppelin.com/juanfranblanco/32/1542_2.png) [@juanfranblanco](https://forum.openzeppelin.com/u/juanfranblanco)\
**Post date:** [January 23, 2020, 5:31am UTC](https://forum.openzeppelin.com/t/wanted-solidity-formatter-for-visual-studio-code/940/9 "2020-01-23T05:31:34Z")

</div>

@abcoathup here it is [https://twitter.com/juanfranblanco/status/1220216021182828544?s=20](https://twitter.com/juanfranblanco/status/1220216021182828544?s=20) 🙂
