Sublime Text package for editing and executing MSBuild scripts.
Python JavaScript PowerShell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitattributes
.gitignore
LICENSE.md
MSBuild.JSON-tmLanguage
MSBuild.sublime-build Removed trailing commas before closing bracket. Jan 8, 2014
MSBuild.sublime-settings Added package version info to settings Jun 19, 2012
MSBuild.tmLanguage
New MSBuild Script.sublime-snippet
README.md
comment.sublime-snippet
create-package.ps1
long-tag.sublime-snippet
msbuild_completions.py
packages.json
short-tag.sublime-snippet

README.md

SublimeMSBuild

Sublime Text package for editing and executing MSBuild scripts.

Overview

Sublime Text is a highly-customizable text editor that allows you to add functionality through use of "packages." This package adds the following functionality for MSBuild:

  • MSBuild file extension handling:
    • .proj
    • .targets
    • .msbuild
    • .csproj
    • .vbproj
    • .fsproj
    • .vcxproj
  • Build system: Execute the currently loaded MSBuild script and capture the results in the output pane. Includes variants for 'Parallel,' 'Debug,' and 'Release' configurations.
  • Syntax highlighting:
    • MSBuild keywords and flow-control elements
    • Standard MSBuild tasks
    • C#/VB special project item elements
    • Well-known item metadata and functions
    • Reserved properties
    • Variables
    • Conditional operators
    • Framework support functions
    • Comment blocks
  • Snippets:
    • New MSBuild Script
    • Comment blocks [trigger = c + tab]
    • Self-closing/simple tags [trigger = > + tab]
    • Content/end-tag tags [trigger = < + tab]
  • Autocompletion:
    • Standard/default tasks (e.g., CallTarget, CombinePath, MakeDir)
    • Project file entities (e.g., Target, Choose, Import)
    • Common item definitions (e.g., Compile, Reference, EmbeddedResource)
    • Well-known item metadata references (e.g., %(Item.FullPath))
    • Reserved properties (e.g., $(MSBuildProjectDirectory))
    • MSBuild Community Tasks (if the MSBuild.Community.Tasks.Targets file is imported)
    • C#/VB special project item elements (e.g., Reference, Compile)
    • Supported framework method calls (e.g., $([System.DateTime]::Now))

Installation

Install the package through Sublime Package Control. Sublime Package Control is a package manager for Sublime Text. If you don't have it, you can install it and then install the MSBuild package by going to the command palette (Ctrl + Shift + P), selecting "Package Control: Install Package," and then selecting the MSBuild package from the list.

License

MIT License

Build System MSBuild.exe Fallback

Most Sublime Text build systems assume you have the build executable (MSBuild.exe) in your path. The system included here dynamically looks for MSBuild.exe in the .NET framework folders in the event you don't already have it in your path. The fallback order is v4.0.30319 -> v3.5 -> v2.0.50727. If you want to modify that fallback order, edit the MSBuild.sublime-build file in your Data\Packages\MSBuild folder.

Package Developers

If you want to modify the syntax highlighter or otherwise work on enhancing the package to suit your needs, it's recommended you get the AAAPackageDev package for Sublime Text. This allows you to edit syntax files in .JSON-tmLanguage format and compile them into PList rather than manually editing PList directly. It also has several helpers/templates for adding functionality to Sublime Text packages.

Additional helpful links: