commandlineparser / commandlineparser/commandline
Announcing CommandLineParser v2.9.0-preview1
- Ngôn ngữ chính
- C#
- Star
- 4.8k
- Fork
- 478
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
CommandLineParser `v2.9.0-preview1` is releases Today (july 24, 2020) with new features.
The package can be downloaded from:
C#: https://www.nuget.org/packages/CommandLineParser/2.9.0-preview1
F#: https://www.nuget.org/packages/CommandLineParser.Fsharp/2.9.0-preview1
What is new in that version, read [Changelog](https://github.com/commandlineparser/commandline/blob/develop/CHANGELOG.md#290-preview1---2020-7-24)
The new features:
- Multi-instance option support.
option can be repeated as:
```$ myprog -t value1 -t value2 -t value3```
Configure Parser as:
```cs
var parser= new Parser(with =>{
with.AllowMultiInstance =true;
});
```
- Move Errors and Value up to the abstract class definition.
you can extract Options object or Parser Errors from ResultSet:
```cs
var result = parser.ParseArguments(args);
//extract Options object and errors
Options options= result.Value;
var Errors = result.Errors;
```
- Add support for flags enums.
see [wiki](https://github.com/commandlineparser/commandline/wiki/Enum-Flags)
- Implement verb aliases.
```cs
[Verb("copy", aliases: new string[] { "cp", "cpy" }, HelpText = "Copy some stuff")]
public class CopyVerb
{
//....
}
```
You can use verb alias:
```
$ myprg copy -f file.txt
$ myprg cp -f file.txt # use alias
$ myprg cpy -f file.txt # use alias
```
- New Unparsing Extension method is added: `FormatCommandLineArgs` to return array of strings.
see [wiki](https://github.com/commandlineparser/commandline/wiki/Unparsing#unparsing-to-array-of-strings)
- New string extension method `SplitArgs` to split commandline string with handling double quote with/o keeping the double quote and ignoring the extra spaces in the string.
```cs
var myargs="-a xyz --name \"path to file\" -b 123";
string[] args =myargs.SplitArgs(); //return {"-a","xyz","--name","path to file", "-b", "123"}
string[] args =myargs.SplitArgs(true); //keep quote and return {"-a","xyz","--name","\"path to file\"", "-b", "123"}
```
- Allow single dash as a value, now it's allowed: `-a - --filename -` .
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu với CHANGELOG.md tại mục 2.9.0-preview1 và các trang wiki được liên kết về Enum Flags và unparsing. Issue liệt kê các tính năng của bản phát hành, nhưng không xác định thay đổi nào còn lại hoặc định nghĩa hoàn thành có thể kiểm thử.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- csharp, fsharp
- Lĩnh vực
- documentation, release
- Loại issue
- Tài liệu
- Độ khó
- 1/5
- Thời gian dự kiến
- Dưới một giờ
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 20/100