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;
        }