Why Visual Studio Code?
So, this post has an awkward start, but please don't mind that. So, why did I choose VS Code after all? Well, it's a long story - First when I started, I used to use different IDEs for different languages, like IntelliJ for Java, PyCharm for Python, etc. And, they were great but for every language, a separate IDE just didn't seem right to me! So I moved to Sublime Text and it was great, I used it for many days, until one day when suddenly my Python and Sublime broke! So, I had to change. I later found that my Tcl/Tk
(basically Tkinter) module had broken! So, I switched over to Atom! And I had just one problem, It was not exactly an IDE it was just a Code Editor! And after all this, I came across VS Code - The perfect IDE/Code editor for me! And now I have been using it for more than 1 and 1/2 years!
NOTE: Do check all of these amazing editors and IDEs out! All of them deserve equal respect!
So, my setup?
Yeah, so now the actual fun stuff, my setup!
Themes and Customisation
My Theme
Well, my theme also has a little story - I used to use GitHub Dark as my theme, but recently I have switched over to The Best Theme and I do not regret doing that! I love its colors and color scheme - they are so vibrant! It's just awesome although it doesn't have many downloads! (Only 8K)!
My Icon Packs
I won't go into much detail with this! I'll just list them!
File Icon Theme - Material Icon Theme
Product Icon Theme - Carbon Product Icons
Previously Used Prod. Icon Theme - Fluent Icons
Other Customization
My Font - Fira Code
Direct Download Link
Settings! - I don't even wanna talk about this madness!
Just poking in - I really love AutoSave!
{
"python.analysis.autoImportCompletions": true,
"python.analysis.completeFunctionParens": true,
/* Terminal */
"terminal.integrated.profiles.windows": {
"Git Bash": {
"path": "E:\\Git\\bin\\bash.exe",
"overrideName": true
},
"Command Prompt": {
"path": "C:\\Windows\\system32\\cmd.exe",
"overrideName": true
},
"Cygwin": {
"path": "E:\\Cygwin\\bin\\bash.exe",
"args": ["--login"],
"overrideName": true
},
},
"terminal.integrated.shell.windows": "E:\\Git\\bin\\bash.exe",
"terminal.integrated.cursorStyle": "line",
/* Files */
"files.autoSave": "afterDelay",
"files.autoSaveDelay": 100,
"files.autoGuessEncoding": true,
"files.insertFinalNewline": true,
"files.associations": {
"*.txt": "plaintext"
},
/* Editor */
"editor.suggestSelection": "first",
"editor.formatOnSave": true,
"editor.formatOnType": true,
"editor.fontLigatures": true,
"editor.fontFamily": /*Fira Code added manually*/ "'Fira Code', 'Courier New', monospace",
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.definitionLinkOpensInPeek": true,
/* Editor (Format Specific) */
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
/* Workbench */
"workbench.productIconTheme": "icons-carbon",
"workbench.colorTheme": "The Best Theme",
"workbench.iconTheme": "material-icon-theme",
"workbench.editorAssociations": [
{
"viewType": "jupyter.notebook.ipynb",
"filenamePattern": "*.ipynb"
}
],
/* Other VS Code Stuff */
"explorer.incrementalNaming": "smart",
"debug.node.autoAttach": "on",
"window.zoomLevel": 0,
"python.defaultInterpreterPath": "C:\\Users\\{USERNAME}\\anaconda3\\python.exe",
/* 3rd Party Extensions */
/* Pylance */
"python.languageServer": "Pylance",
/* Live Server */
"liveServer.settings.donotShowInfoMsg": true,
"liveServer.settings.donotVerifyTags": true,
/* Visual Studio IntelliCode */
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
/* Kite */
"kite.showWelcomeNotificationOnStartup": false,
/* CodeRunner */
"code-runner.runInTerminal": true,
/* GitHub */
"githubPullRequests.remotes": ["origin_new", "origin"],
"githubPullRequests.queries": [
{
"label": "Open PRs",
"query": "is:pr is:open"
},
{
"label": "Closed PRs",
"query": "is:pr is:closed"
}
],
"githubIssues.queries": [
{
"label": "My Open Issues",
"query": "is:open author:@me"
},
{
"label": "My Closed Issues",
"query": "is:closed author:@me"
},
{
"label": "py_everything Open Issues",
"query": "author:@me state:open repo:Play4Tutorials/py_everything sort:created-desc"
},
{
"label": "py_everything Closed Issues",
"query": "author:@me state:closed repo:Play4Tutorials/py_everything sort:created-desc"
}
],
/* TabNine */
"tabnine.experimentalAutoImports": true,
/* TODO Highlight */
"todohighlight.keywords": [
{
"text": "FIX:",
"color": "rgb(255, 0, 0)",
"backgroundColor": "rgba(255, 0, 0, 0.2)"
},
{
"text": "TIP:",
"color": "rgb(0, 255, 0)",
"backgroundColor": "rgba(0, 255, 0, 0.2)"
},
{
"text": "TODO:",
"color": "rgb(255, 0, 0)",
"backgroundColor": "rgba(0, 0, 225, 0.5)"
},
{
"text": "NOTE:",
"color": "rgb(255, 255, 0)",
"backgroundColor": "rgba(255, 255, 0, 0.2)"
}
]
}
Extensions
Well, I have a lot of extensions, so I am going to give the ones here that I actually use!
My Extensions:
- Auto Close Tag
- Auto Rename Tag
- Bookmarks
- Bracket Pair Colorizer 2
- C/C++
- C#
- change-case
- Code Runner
- Error Lens
- ESLint
- GitGraph
- GitHub Pull Requests and Issues
- GitLens - git supercharged
- indent-rainbow
- Jinja2 Snippet Kit
- Jupyter
- Kite Autocomplete
- Live Sass Compiler
- Live Server
- Live Share
- Markdown All in One
- open in browser
- Prettier - Code Formatter
- Pylance
- Python
- Python Indent
- Python Preview
- python snippets
- Python Test Explorer UI
- RST Preview
- Simple React Snippets
- TabNine Autocomplete
- Test Explorer UI
- TODO Highlight
- Visual Studio IntelliCode
Conclusion?
Well, so it ended at last! I would just like to say that -
Everyone has different opinions. And I do not want to say other editors are bad or VS Code is better - it's just that I like VS Code more! You might like Atom more or Sublime! This varies from person to person - and I completely agree with that!
Top comments (4)
Great article. I like that you included your settings that you use. Way too many extensions. I would have a problem remembering the shortcuts in those. I barely remember the VS Code out of box one plus all of the ES6 ones.
Ah yes neither can I, prefer the mouse for those!
Omg!
Well written but sooo many extensions.
I prefer different tools. I like to git integration of vscode but rarely use it because of the strange interface. I am more a command line guy.
Me, too I love to use and develop for the command-line!