Differences between revisions 1 and 25 (spanning 24 versions)
Revision 1 as of 2016-08-20 05:49:50
Size: 283
Editor: SamatJain
Comment:
Revision 25 as of 2020-08-06 21:13:17
Size: 3878
Editor: SamatJain
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<TableOfContents>>

Stuff about Visual Studio Code and legacy Visual Studio.

== Visual Studio Code ==

 * [[https://www.vscodecandothat.com/|VS Code Can Do That]]: Neat features and extensions
 * [[https://www.reddit.com/r/programming/comments/6zugur/sublime_text_3_is_out/dmy8n8d/|Observations about why Visual Studio Code seems so much faster]] [reddit]

=== Keyboard shortcuts ===

Keyboard shortcuts I can never remember.

==== Editing related ====

|| '''Shortcut''' || '''Action''' || '''Reference''' ||
|| Ctrl+Shift+L || Expand the focus of the current word, select all occurences in document, and change simultaneously || https://twitter.com/Tyriar/status/1012348877582712832 ||
|| Alt+Up, Alt+Down || Move a line up or down || https://twitter.com/miguelsolorio_/status/1067564999097311232 ||

Navigation-related:

|| '''Shortcut''' || '''Action''' || '''Reference''' ||
|| Ctrl+P || Open file || ||
|| Ctrl+T || Symbols in workspace || ||
|| Ctrl+Shift+O || Symbols in current file || https://twitter.com/Tyriar/status/1018953407787233280 ||
|| Ctrl+Shift+K || Create a bookmark ||<|2> https://twitter.com/sarah_edo/status/1022184804446482433 for [[https://marketplace.visualstudio.com/items?itemName=alefragnani.Bookmarks|Bookmarks extension]] ||
|| Ctrl+Shift+J || Jump between bookmarks ||

==== CLI shortcuts ====

From https://twitter.com/Tyriar/status/1013787785973547008:

 * `code .`: Open the current folder in a new window
 * `code -r .`: Open the current folder in the current window
 * `code -a .`: Add the current folder to the current window

Line 6: Line 43:


== Building Visual Studio projects on the command-line ==

Generate a CMake project, targeting Visual Studio 2015:

{{{
cd C:\Users\Public\Documents
mkdir build
cd build
cmake --config Release -G "Visual Studio 14 2015 Win64" `
      -D CMAKE_PREFIX_PATH=M:\dependencies\ `
      N:\Documents\GitHub\Altus_Standalone
# Build using 4 CPUs
cmake --build . --config Release -- /m:4
}}}

For building a project generated by CMake, and using Visual Studio 2015:

{{{
& "C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" .\altus.sln /p:Configuration=Release /maxcpucount
}}}

See also: [[https://docs.microsoft.com/en-us/cpp/build/building-on-the-command-line|Use the Microsoft C++ toolset from the command line]]

== See what DLL dependencies an EXE depends upon ==

{{{
# Open Visual Studio Native Tools command prompt
dumpbin.exe /dependents whatever.exe
}}}

== Offline installation ==

See: https://www.techtronic.us/blog/post/technology/visual-studio-2012-update-2-offline-installer/

tl;dr: Run offline installer with "/Layout". For MSVC15 (Visual Studio 2016), it was changed to --layout, which must be given an absolute path.

== Version Naming ==

Visual Studio 2012 is "11"; Visual Studio 2013 is "12; Visual Studio 2015 is "14; Visual Studio 2017 is "15".

Boost uses msvc-11.0, msvc-14.0, etc.

== Etc ==

 * [[http://aras-p.info/blog/2017/10/23/Best-unknown-MSVC-flag-d2cgsummary/|Best unknown MSVC flag: d2cgsummary]]. Option highlights the functions that compile the slowest. Officially become documented in Visual Studio 2017: [[https://blogs.msdn.microsoft.com/vcblog/2018/01/04/visual-studio-2017-throughput-improvements-and-advice/|Throughput improvements & advice]]
 * [[http://siomsystems.com/mixing-visual-studio-versions/|Why Mixing Visual Studio Versions is Evil]]. tl:dr: Make sure the same (or preferably, only 1) VS runtime allocates memory, and pass only primitive objects (e.g. float) or arrays of those types.

Stuff about Visual Studio Code and legacy Visual Studio.

Visual Studio Code

Keyboard shortcuts

Keyboard shortcuts I can never remember.

Shortcut

Action

Reference

Ctrl+Shift+L

Expand the focus of the current word, select all occurences in document, and change simultaneously

https://twitter.com/Tyriar/status/1012348877582712832

Alt+Up, Alt+Down

Move a line up or down

https://twitter.com/miguelsolorio_/status/1067564999097311232

Navigation-related:

Shortcut

Action

Reference

Ctrl+P

Open file

Ctrl+T

Symbols in workspace

Ctrl+Shift+O

Symbols in current file

https://twitter.com/Tyriar/status/1018953407787233280

Ctrl+Shift+K

Create a bookmark

https://twitter.com/sarah_edo/status/1022184804446482433 for Bookmarks extension

Ctrl+Shift+J

Jump between bookmarks

CLI shortcuts

From https://twitter.com/Tyriar/status/1013787785973547008:

  • code .: Open the current folder in a new window

  • code -r .: Open the current folder in the current window

  • code -a .: Add the current folder to the current window

VS2015 minimal installation

Visual Studio 2015 Build Tools

Lightweight C++ Installation in Visual Studio “15”

Building Visual Studio projects on the command-line

Generate a CMake project, targeting Visual Studio 2015:

cd C:\Users\Public\Documents
mkdir build
cd build
cmake --config Release -G "Visual Studio 14 2015 Win64" `
      -D CMAKE_PREFIX_PATH=M:\dependencies\ `
      N:\Documents\GitHub\Altus_Standalone
# Build using 4 CPUs
cmake --build . --config Release -- /m:4

For building a project generated by CMake, and using Visual Studio 2015:

& "C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe" .\altus.sln /p:Configuration=Release /maxcpucount

See also: Use the Microsoft C++ toolset from the command line

See what DLL dependencies an EXE depends upon

# Open Visual Studio Native Tools command prompt
dumpbin.exe /dependents whatever.exe

Offline installation

See: https://www.techtronic.us/blog/post/technology/visual-studio-2012-update-2-offline-installer/

tl;dr: Run offline installer with "/Layout". For MSVC15 (Visual Studio 2016), it was changed to --layout, which must be given an absolute path.

Version Naming

Visual Studio 2012 is "11"; Visual Studio 2013 is "12; Visual Studio 2015 is "14; Visual Studio 2017 is "15".

Boost uses msvc-11.0, msvc-14.0, etc.

Etc

SamatsWiki: VisualStudio (last edited 2020-08-06 21:13:17 by SamatJain)