Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek popisuje možnosti příkazového řádku podporované jazykem F# Interactive, fsi.exe. F# Interactive přijímá mnoho stejných možností příkazového řádku jako kompilátor F#, ale také přijímá některé další možnosti.
Použití jazyka F# Interactive pro skriptování
F# Interactive, dotnet fsi, lze spustit interaktivně, nebo lze spustit z příkazového řádku ke spuštění skriptu. Syntaxe příkazového řádku je
dotnet fsi [options] [ script-file [arguments] ]
Přípona souboru pro soubory skriptu F# je .fsx.
Tabulka interaktivních možností jazyka F#
Následující tabulka shrnuje možnosti podporované jazykem F# Interactive. Tyto možnosti můžete nastavit na příkazovém řádku nebo prostřednictvím integrovaného vývojového prostředí sady Visual Studio. Pokud chcete tyto možnosti nastavit v integrovaném vývojovém prostředí sady Visual Studio, otevřete nabídku Nástroje, vyberte Možnosti, rozbalte uzel F# nástroje a zvolte F# Interactive.
Kde se seznamy zobrazují v argumentech možností F# Interactive, jsou prvky seznamu oddělené středníky (;).
| Možnost | Popis |
|---|---|
| -- | Používá se k pokynu F# Interactive, aby zbývající argumenty zpracovával jako argumenty příkazového řádku pro program nebo skript jazyka F#, ke kterým můžete přistupovat v kódu pomocí seznamu fsi. CommandLineArgs. |
| --checked[+|-] | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --checknulls[+|-] | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --codepage:<int> | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --consolecolors[+|-] | Vypíše upozornění a chybové zprávy barevně. |
| **---compilertool:<extensionsfolder> | Odkázat na sestavení nebo adresář obsahující nástroj pro dobu návrhu (zkrácená forma: -t). |
| --crossoptimize[+|-] | Povolte nebo zakažte optimalizace napříč moduly. |
|
--debug[+|-] --debug:[plný|pdbonly|přenosný|zapouzdřený] -g[+|-] -g:[plné||přenosné|vložené] |
Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --define:<řetězec> | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --deterministický[+|-] | Vytvoří deterministické sestavení (včetně identifikátoru GUID verze modulu a časového razítka). |
| --exec | Instruuje F# interactive, aby se ukončil po načtení souborů nebo spuštění souboru skriptu poskytnutého na příkazovém řádku. |
| --fullpaths | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --gui[+|-] | Povolí nebo zakáže smyčku událostí Windows Forms. Výchozí hodnota je povolená. |
|
--help -? |
Používá se k zobrazení syntaxe příkazového řádku a stručného popisu jednotlivých možností. |
|
--lib:<seznamu složek> -I:<seznam složek> |
Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --load:<název souboru> | Zkompiluje daný zdrojový kód při spuštění a načte kompilované konstrukty jazyka F# do relace. |
| --mlcompatibility | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --noframework | Stejné jako možnost kompilátoru fsc.exe. Další informace najdete v tématu Možnosti kompilátoru |
| --nologo | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --nowarn:<seznamu upozornění> | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --optimize[+|-] | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --preferreduilang:<lang> | Určuje upřednostňovaný název jazykové verze výstupu (například es-ES, ja-JP). |
| --quiet | Potlačit výstup jazyka F# Interactive na datový proud stdout. |
| --quotations-debug | Určuje, že by se měly pro výrazy odvozené z uvozovek F# generovat dodatečné informace o ladění a promítat definice. Ladicí informace jsou přidány do vlastních atributů uzlu stromu výrazů jazyka F#. Viz Kódové citace a Expr.CustomAttributes. |
| --readline[+|-] | Povolte nebo zakažte automatické doplňování pomocí klávesy Tab v interaktivním režimu. |
|
--reference:<název souboru> -r:<název souboru> |
Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --tailcalls[+|-] | Povolte nebo zakažte použití koncové instrukce IL, což způsobí opětovné použití rámce zásobníku pro rekurzivní funkce tail. Tato možnost je ve výchozím nastavení povolená. |
| --targetprofile:<řetězcový> | Určuje profil cílové architektury tohoto sestavení. Platné hodnoty jsou mscorlib, netcorenebo netstandard. Výchozí hodnota je mscorlib. |
| --use:<název souboru> | Řekne interpretovi, aby jako počáteční vstup použil daný soubor při spuštění. |
| --utf8output | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --warn:<úroveň upozornění> | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --warnaserror[+|-] | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
| --warnaserror[+|-]:<seznam celých čísel> | Stejné jako možnost kompilátoru fsc.exe. Další informace naleznete v tématu Možnosti kompilátoru. |
F# interaktivní strukturovaný tisk
F# Interactive (dotnet fsi) používá rozšířenou verzi formátování strukturovaného prostého textu k hlášení hodnot.
Podporují se všechny funkce
%Aformátování prostého textu a některé jsou navíc přizpůsobitelné.Tisk je barevný, pokud výstupní konzola podporuje barvy.
Je stanoven limit na délky zobrazených řetězců, pokud ten řetězec explicitně nevyhodnotíte.
Sada uživatelsky definovatelných nastavení je k dispozici prostřednictvím
fsiobjektu.
Dostupná nastavení pro přizpůsobení tisku ve formátu prostého textu pro ohlášené hodnoty jsou:
open System.Globalization
fsi.FormatProvider <- CultureInfo("de-DE") // control the default culture for primitives
fsi.PrintWidth <- 120 // Control the width used for structured printing
fsi.PrintDepth <- 10 // Control the maximum depth of nested printing
fsi.PrintLength <- 10 // Control the length of lists and arrays
fsi.PrintSize <- 100 // Control the maximum overall object count
fsi.ShowProperties <- false // Control whether properties of .NET objects are shown by default
fsi.ShowIEnumerable <- false // Control whether sequence values are expanded by default
fsi.ShowDeclarationValues <- false // Control whether values are shown for declaration outputs
Přizpůsobení pomocí AddPrinter a AddPrintTransformer
Tisk ve výstupech F# Interactive lze přizpůsobit pomocí fsi.AddPrinter a fsi.AddPrintTransformer.
První funkce poskytuje text, který nahradí tisk objektu. Druhá funkce vrátí náhradní objekt, který se místo toho zobrazí. Představte si například následující kód jazyka F#:
open System
fsi.AddPrinter<DateTime>(fun dt -> dt.ToString("s"))
type DateAndLabel =
{ Date: DateTime
Label: string }
let newYearsDay1999 =
{ Date = DateTime(1999, 1, 1)
Label = "New Year" }
Pokud spustíte příklad v F# Interactive, zobrazí se výstup založený na sadě možností formátování. V tomto případě má vliv na formátování data a času:
type DateAndLabel =
{ Date: DateTime
Label: string }
val newYearsDay1999 : DateAndLabel = { Date = 1999-01-01T00:00:00
Label = "New Year" }
fsi.AddPrintTransformer lze použít k poskytnutí náhradního objektu pro tisk:
type MyList(values: int list) =
member _.Values = values
fsi.AddPrintTransformer(fun (x:MyList) -> box x.Values)
let x = MyList([1..10])
Tohle je výstup:
val x : MyList = [1; 2; 3; 4; 5; 6; 7; 8; 9; 10]
Pokud funkce transformátoru předaná fsi.AddPrintTransformer vrátí null, bude transformátor pro tisk ignorován.
To lze použít k filtrování libovolné vstupní hodnoty tak, že začíná typem obj. Například:
fsi.AddPrintTransformer(fun (x:obj) ->
match x with
| :? string as s when s = "beep" -> box ["quack"; "quack"; "quack"]
| _ -> null)
let y = "beep"
Tohle je výstup:
val y : string = ["quack"; "quack"; "quack"]
Související témata
| Titul | Popis |
|---|---|
| možnosti kompilátoru | Popisuje možnosti příkazového řádku dostupné pro kompilátor jazyka F# fsc.exe. |