Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fixed broken anchors #1194

Merged
merged 8 commits into from
Nov 3, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions docs/core/tools/dotnet-install-script.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
title: dotnet-install scripts | .NET Core SDK
description: Learn about the dotnet-install scripts to install the .NET Core CLI tools and the shared runtime.
keywords: dotnet-install, dotnet-install scripts, .NET Core
author: mairaw
author: blackdwarf
ms.author: mairaw
manager: wpickett
ms.date: 10/12/2016
ms.topic: article
Expand Down Expand Up @@ -42,7 +43,7 @@ By default, the script will add the install location to the $PATH for the curren

Before running the script, please install all the required [dependencies](https://github.com/dotnet/core/blob/master/Documentation/prereqs.md).

You can install a specific version using the `--version` argument. The version needs to be specified as 3-part version (for example, 1.0.0-13232). If omitted, it will default to the first [global.json](global-json.md) file found in the hierarchy above the folder where the script was invoked in that contains the `sdkVersion` property. If that is not present, it will use Latest.
You can install a specific version using the `--version` argument. The version needs to be specified as 3-part version (for example, 1.0.0-13232). If omitted, it will default to the first [global.json](global-json.md) file found in the hierarchy above the folder where the script was invoked that contains the `version` property. If that is not present, it will use Latest.

You can also use this script to get the SDK or shared runtime debug binaries with debug symbols by using the `--debug` argument. If you do not do this on first install and realize you do need debug symbols later on, you can re-run the script with this argument and the version of the bits you installed.

Expand All @@ -56,7 +57,7 @@ Which channel (for example, `future`, `preview`, `production`) to install from.

`-Version [VERSION]`

Which version of CLI to install; you need to specify the version as 3-part version (for example, 1.0.0-13232). If omitted, it will default to the first [global.json](global-json.md) that contains the [sdkVersion](global-json.md#sdkversion) property; if that is not present, it will use Latest.
Which version of CLI to install; you need to specify the version as 3-part version (for example, 1.0.0-13232). If omitted, it will default to the first [global.json](global-json.md) that contains the `version` property; if that is not present, it will use Latest.

`-InstallDir [DIR]`

Expand All @@ -83,7 +84,7 @@ Which channel (for example "future", "preview", "production") to install from. T

`--version [VERSION]`

Which version of CLI to install; you need to specify the version as 3-part version (for example, 1.0.0-13232). If omitted, it will default to the first [global.json](global-json.md) that contains the [sdkVersion](global-json.md#sdkversion) property; if that is not present, it will use Latest.
Which version of CLI to install; you need to specify the version as 3-part version (for example, 1.0.0-13232). If omitted, it will default to the first [global.json](global-json.md) that contains the `version` property; if that is not present, it will use Latest.

`--install-dir [DIR]`

Expand Down
13 changes: 6 additions & 7 deletions docs/core/tools/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
title: .NET Core Command-Line Interface (CLI) Tools
description: An overview of what the Command-Line Interface (CLI) is and its main features
keywords: CLI, CLI tools, .NET, .NET Core
author: mairaw
author: blackdwarf
ms.author: mairaw
manager: wpickett
ms.date: 10/06/2016
ms.topic: article
Expand All @@ -12,11 +13,9 @@ ms.devlang: dotnet
ms.assetid: b70e9ac0-c8be-49f7-9332-95ab93e0e7bc
---

# .NET Core Command-Line Interface Tools
# .NET Core command-line interface tools

By [Zlatko Knezevic](https://github.com/blackdwarf) and [Maira Wenzel](https://github.com/mairaw)

The .NET Core Command-Line Interface (CLI) is a new foundational cross-platform toolchain for developing
The .NET Core command-line interface (CLI) is a new foundational cross-platform toolchain for developing
.NET Core applications. It is "foundational" because it is the primary layer on which other,
higher-level tools, such as Integrated Development Environments (IDEs), editors and
build orchestrators can build on.
Expand Down Expand Up @@ -90,7 +89,7 @@ specify a portable app DLL that `dotnet` would run similar to this: `dotnet /pat

In the second case, the driver attempts to invoke the specified command. This starts the CLI command execution
process. First, the driver determines the version of the tooling that you want. You can specify the version in the
[global.json](global-json.md) file using the [sdkVersion](global-json.md#sdkversion) property. If that is not available, the driver finds the latest version
[global.json](global-json.md) file using the `version` property. If that is not available, the driver finds the latest version
of the tools that is installed on disk and uses that version. Once the version is determined, it executes the
command.

Expand Down Expand Up @@ -127,4 +126,4 @@ in the [.NET Core CLI extensibility model](extensibility.md) topic.
This was a short overview of the most important features of the CLI. You can find out more by using the reference and
conceptual topics on this site. There are also other resources you can use:
* [dotnet/CLI](https://github.com/dotnet/cli/) GitHub repo
* [Getting Started instructions](https://aka.ms/dotnetcoregs/)
* [Getting started instructions](https://aka.ms/dotnetcoregs/)
5 changes: 3 additions & 2 deletions docs/core/tools/project-json.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: project.json reference
description: project.json reference
keywords: .NET, .NET Core, project.json
author: aL3891
ms.author: mairaw
manager: wpickett
ms.date: 09/30/2016
ms.topic: article
Expand Down Expand Up @@ -363,10 +364,10 @@ Type: String
Specifies the type of the dependency. It can be one of the following values: `default`, `build` or `platform`. The default value is `default`.

`build` is known as a development dependency and is only used for build-time. It means that the package should not be published or added as a dependency to the output `.nupkg` file.
It has the same effect of setting [supressParent](#supressParent) to `all`.
It has the same effect of setting [supressParent](#supressparent) to `all`.

`platform` references the shared SDK. For more information, see the section on "Deploying a framework-dependent deployment with third-party dependencies" on the
[.NET Core Application Deployment](../deploying/index.md) topic.
[.NET Core application deployment](../deploying/index.md) topic.

For example:

Expand Down
9 changes: 5 additions & 4 deletions docs/csharp/csharp-7.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: What's New in C# 7 | C# Guide
description: Get an overview of the new features coming in the upcoming version 7 of the C# language.
keywords: C#, .NET, .NET Core, Latest Features, What's New
author: BillWagner
ms.author: wiwagn
manager: wpickett
ms.date: 10/03/2016
ms.topic: article
Expand All @@ -20,15 +21,15 @@ C# 7 adds a number of new features to the C# language:
* [Tuples](#tuples)
* [Pattern Matching](#pattern-matching)
* [`ref` locals and returns](#ref-locals-and-returns)
* [Local Functions](#local-expressions)
* [Expression Bodied Everything](#expression-bodied-everything)
* [`throw` Expressions](#throw-expressions)
* [Local Functions](#local-functions)
* [Expression Bodied Everything](#expression-bodied-everything-preview-5)
* [`throw` Expressions](#throw-expressions-preview-5)
* [Generalized async return types](#generalized-async-return-types)
* [Numeric literal syntax improvements](#numeric-literal-syntax-improvements)

Two of the most interesting features don't make that list. The first
is the shortened release cycle. C# 7 is following C# 6 much more quickly.
The second is that C# 7 has [features contributed by the community](#expression-bodied-everything), not
The second is that C# 7 has [features contributed by the community](#expression-bodied-everything-preview-5), not
the C# compiler team. The language is truly open.

The remainder of this topic provides an overview
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,45 +3,46 @@ title: Getting Started with F# in Visual Studio
description: Learn how to use F# with Visual Studio.
keywords: visual f#, f#, functional programming
author: cartermp
manager: danielfe
ms.author: phcart
manager: wpickett
ms.date: 09/08/2016
ms.topic: article
ms.prod: visual-studio-dev14
ms.technology: devlang-fsharp
ms.assetid: 8db75596-19a9-4eda-b20d-a12d517c8cc1
---

# Getting Started with F# in Visual Studio
# Getting started with F# in Visual Studio

F# and the Visual F# tooling are supported in the Visual Studio IDE. To begin, you should [download Visual Studio](https://www.visualstudio.com/downloads/download-visual-studio-vs), if you haven't already. This article uses the Visual Studio 2015 Community Edition, but you can use F# with the version of your choice.

## Installing the Visual F# Tools
## Installing the Visual F# tools

Visual Studio will first initialize the installer. After it is intilized, select **Custom** as shown here:

![](media/getting-started-vs/vs2015-install-1.png)
![Select Custom install](./media/getting-started-vs/vs2015-install-1.png)

Select the Visual F# Tools under Programming Languages here:

![](media/getting-started-vs/vs2015-install-2.png)
![Visual F#](./media/getting-started-vs/vs2015-install-2.png)

Feel free to customize your installation further, and then continue with the installation. After a while, Visual Studio will complete installation and you can create an F# project!

## Creating a Console Application
## Creating a console application

One of the most basic projects in Visual Studio is the Console Application. Here's how to do it. Once Visual Studio is open:

1. On the **File** menu, point to **New**, and then choose **Project**.

![](media/getting-started-vs/vs2015-install-3.png)
![File New Project](./media/getting-started-vs/vs2015-install-3.png)

2. In the New Project dialog, under **Templates**, you should see **Visual F#**. Choose this to show the F# templates.

![](media/getting-started-vs/vs2015-install-4.png)
![Visual F# templates](./media/getting-started-vs/vs2015-install-4.png)

3. Choose the **Okay** button to create the F# project! You should see something like this under **Solution Explorer**:

![](media/getting-started-vs/vs2015-install-5.png)
![F# Project in Solution Explorer](./media/getting-started-vs/vs2015-install-5.png)

## Writing your code

Expand All @@ -61,7 +62,7 @@ Another function, `main`, is defined, which is decorated with the `EntryPoint` a

It is in this function that we call the `square` function with an argument of `12`. The F# compiler then assigns the type of `square` to be `int -> int` (that is, a function which takes an `int` and produces an `int`). The call to `printfn` is a formatted printing function which uses a format string, similar to C-style programming languages, parameters which correspond to those specified in the format string, and then prints the result and a new line.

## Running Your Code
## Running your code

You can run the code and see results by pressing **ctrl-f5**. This will run the program without debugging and allows you to see the results. Alternatively, you can choose the **Debug** top-level menu item in Visual Studio and choose **Start Without Debugging**.

Expand Down Expand Up @@ -125,18 +126,18 @@ The pipe-forward operator, and more, are covered in later tutorials.

This is only a glimpse into what you can do with F# Interactive. To learn more, check out [Interactive Programming with F#](../fsharp-interactive/index.md).

## Next Steps
## Next steps

If you haven't already, check out the [Tour of F#](../../tour.md), which covers some of the core features of the F# language. It will give you an overview of some of the capabilities of F#, and provide ample code samples that you can copy into Visual Studio and run. There are also some great external resources you can use, showcased in the [F# Guide](../../index.md).

## See Also
## See also

[Visual F#](../../index.md)

[Tour of F#](../../tour.md)

[F# Language Reference](../../language-reference/index.md)
[F# language reference](../../language-reference/index.md)

[Type Inference](../../language-reference/type-inference.md)
[Type inference](../../language-reference/type-inference.md)

[Symbol and Operator Reference](../../language-reference/symbol-and-operator-reference/index.md)
[Symbol and operator reference](../../language-reference/symbol-and-operator-reference/index.md)
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: Getting Started with F# in Visual Studio Code with Ionide
description: Learn how to use F# with Visual Studio Code and the Ionide plugin suite.
keywords: visual f#, f#, functional programming, .NET, Visual Studio Code, vscode, Ionide
author: cartermp
ms.author: phcart
manager: wpickett
ms.date: 09/28/2016
ms.topic: article
Expand All @@ -24,7 +25,7 @@ F# 4.0 or higher must be installed on your machine to use Ionide.

If you're on Windows, you have two options for installing F#.

If you've already installed Visual Studio and don't have F#, you can [Install the Visual F# Tools](getting-started-visual-studio.md#installing-the-visual-f#-tools). This will install all the necessary components to write, compile, and execute F# code.
If you've already installed Visual Studio and don't have F#, you can [Install the Visual F# Tools](getting-started-visual-studio.md#installing-the-visual-f-tools). This will install all the necessary components to write, compile, and execute F# code.

If you prefer not to install Visual Studio, use the following instructions:

Expand Down
11 changes: 6 additions & 5 deletions docs/standard/base-types/alternation.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: Alternation constructs in regular expressions
description: Alternation constructs in regular expressions
keywords: .NET, .NET Core
author: stevehoag
ms.author: shoag
manager: wpickett
ms.date: 07/28/2016
ms.topic: article
Expand All @@ -22,7 +23,7 @@ Alternation constructs modify a regular expression to enable either/or or condit

* Conditional matching based on a valid captured group

## Pattern Matching with |
## Pattern matching with |

You can use the vertical bar (|) character to match any one of a series of patterns, where the | character separates each pattern.

Expand Down Expand Up @@ -149,7 +150,7 @@ Pattern | Description
`(\d{2}-\d{7}|;\d{3}-\d{2}-\d{4})` | Match either of the following: two decimal digits followed by a hyphen followed by seven decimal digits; or three decimal digits, a hyphen, two decimal digits, another hyphen, and four decimal digits.
`\d` | End the match at a word boundary.

## Conditional Matching with an Expression
## Conditional matching with an expression

This language element attempts to match one of two patterns depending on whether it can match an initial pattern. Its syntax is:

Expand All @@ -159,10 +160,10 @@ where *expression* is the initial pattern to match, *yes* is the pattern to matc

**(?(?**=_expression_**)**_yes_**|**_no_**)**

where **(?**=_expression_**)** is a zero-width assertion construct. (For more information, see [Grouping Constructs in Regular Expressions](grouping.md).) Because the regular expression engine interprets *expression* as an anchor (a zero-width assertion), *expression* must either be a zero-width assertion (for more information, see [Anchors in Regular Expressions](anchors.md)) or a subexpression that is also contained in *yes*. Otherwise, the *yes* pattern cannot be matched.
where **(?**=_expression_**)** is a zero-width assertion construct. (For more information, see [Grouping constructs in regular expressions](grouping.md).) Because the regular expression engine interprets *expression* as an anchor (a zero-width assertion), *expression* must either be a zero-width assertion (for more information, see [Anchors in regular expressions](anchors.md)) or a subexpression that is also contained in *yes*. Otherwise, the *yes* pattern cannot be matched.

> [!NOTE]
> If *expression* is a named or numbered capturing group, the alternation construct is interpreted as a capture test; for more information, see the next section, [Conditional Matching Based on a Valid Capture Group](#Conditional-Matching-Based-on-a-Valid-Capture-Group). In other words, the regular expression engine does not attempt to match the captured substring, but instead tests for the presence or absence of the group.
> If *expression* is a named or numbered capturing group, the alternation construct is interpreted as a capture test; for more information, see the next section, [Conditional matching based on a valid captured group](#conditional-matching-based-on-a-valid-captured-group). In other words, the regular expression engine does not attempt to match the captured substring, but instead tests for the presence or absence of the group.


The following example is a variation of the example that appears in the previous section. It uses conditional matching to determine whether the first three characters after a word boundary are two digits followed by a hyphen. If they are, it attempts to match a U.S. Employer Identification Number (EIN). If not, it attempts to match a U.S. Social Security Number (SSN).
Expand Down Expand Up @@ -217,7 +218,7 @@ Pattern | Description
`\d{3}-\d{2}-\d{4}` | If the previous pattern does not match, match three decimal digits, a hyphen, two decimal digits, another hyphen, and four decimal digits.
`\b` | Match a word boundary.

## Conditional Matching Based on a Valid Captured Group
## Conditional matching based on a valid captured group

This language element attempts to match one of two patterns depending on whether it has matched a specified capturing group. Its syntax is:

Expand Down
5 changes: 3 additions & 2 deletions docs/standard/base-types/anchors.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ title: Anchors in regular expressions
description: Anchors in regular expressions
keywords: .NET, .NET Core
author: stevehoag
ms.author: shoag
manager: wpickett
ms.date: 07/28/2016
ms.topic: article
Expand All @@ -29,7 +30,7 @@ Anchor | Description

## Start of String or Line: ^

The **^** anchor specifies that the following pattern must begin at the first character position of the string. If you use **^** with the [RegexOptions.Multiline](xref:System.Text.RegularExpressions.RegexOptions.Multiline) option (see [Regular Expression Options](options.md)), the match must occur at the beginning of each line.
The **^** anchor specifies that the following pattern must begin at the first character position of the string. If you use **^** with the [RegexOptions.Multiline](xref:System.Text.RegularExpressions.RegexOptions.Multiline) option (see [Regular expression options](options.md)), the match must occur at the beginning of each line.

The following example uses the **^** anchor in a regular expression that extracts information about the years during which some professional baseball teams existed. The example calls two overloads of the `Regex.Matches` method:

Expand Down Expand Up @@ -775,7 +776,7 @@ Pattern | Description

## Word Boundary: \b

The **\b** anchor specifies that the match must occur on a boundary between a word character (the **\w** language element) and a non-word character (the **\W** language element). Word characters consist of alphanumeric characters and underscores; a non-word character is any character that is not alphanumeric or an underscore. (For more information, see [Character Classes in Regular Expressions](classes.md).) The match may also occur on a word boundary at the beginning or end of the string.
The **\b** anchor specifies that the match must occur on a boundary between a word character (the **\w** language element) and a non-word character (the **\W** language element). Word characters consist of alphanumeric characters and underscores; a non-word character is any character that is not alphanumeric or an underscore. (For more information, see [Character classes in regular expressions](classes.md).) The match may also occur on a word boundary at the beginning or end of the string.

The **\b** anchor is frequently used to ensure that a subexpression matches an entire word instead of just the beginning or end of a word. The regular expression `\bare\w*\b` in the following example illustrates this usage. It matches any word that begins with the substring "are". The output from the example also illustrates that **\b** matches both the beginning and the end of the input string.

Expand Down
Loading