private async void WpfTerminalControl_OnTextEntryComplete(object sender, TextEntryCompleteArgs e) { try { term.WriteLine(""); var termCursorRow = term.CursorRow; // term.CursorRow = termCursorRow + 1; if (_state == null) { var scriptOptions = ScriptOptions.Default.WithImports(new[] { "System.Windows", "System.Windows.Controls" }).WithReferences(MetadataReference.CreateFromFile(typeof(Window).Assembly.Location)); _state = await CSharpScript.RunAsync(e.Text, scriptOptions).ConfigureAwait(true); } else { _state = await _state.ContinueWithAsync(e.Text).ConfigureAwait(true); } if (_state.ReturnValue != null) { var s = _state.ReturnValue.ToString(); foreach (var line in s.Split("\r\n")) { term.WriteLine(line); } } } catch (Exception ex) { var s = ex.ToString(); foreach (var line in s.Split("\r\n")) { term.WriteLine(line); } } }
private async void OnInputOnTextEntryComplete(object sender, TextEntryCompleteArgs args) { Debug.WriteLine(args.Text); // IsExecuting = true; // Debug.WriteLine("Calling executeasync"); // await Shell.ExecuteAsync(args.Text).ConfigureAwait(true); // Debug.WriteLine("Back from execute2"); // TerminalOnExecuteCommandComplete(null, null); // IsExecuting = false; }