DEV Community

Cover image for My Visual Studio Code Setup!
PyBash
PyBash

Posted on

My Visual Studio Code Setup!

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!

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)!

the-best-theme

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

carbon-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)"
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

Extensions

Well, I have a lot of extensions, so I am going to give the ones here that I actually use!

My Extensions:

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!

Latest comments (4)

Collapse
 
energeticpixels profile image
Anthony Jackman

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.

Collapse
 
pybash profile image
PyBash

Ah yes neither can I, prefer the mouse for those!

Collapse
 
cblte profile image
cblte

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.

Collapse
 
pybash profile image
PyBash

Me, too I love to use and develop for the command-line!