Pakete, Repositories und App-Kategorien suchen

Cover von xterm
Paketdetailsv4.0.0

xterm

xterm.dart ist ein schneller und vollständig ausgestatteter Terminal-Emulator für Flutter-Anwendungen mit Unterstützung für mobile und Desktop-Plattformen.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
242.000
Likes
239
Pub-Punkte
140

Paket installieren

flutter pub add xterm

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

xterm.dart ist ein leistungsstarker Terminal-Emulator für Flutter, der Entwicklern ermöglicht, voll funktionsfähige Terminal-Oberflächen in mobilen und Desktop-Anwendungen einzubetten. Er unterstützt ANSI-Escape-Sequenzen, die Verarbeitung von Tastatureingaben und eine reibungslose Textdarstellung über alle Plattformen hinweg. Speziell für die Integration in CLI-Tools, Entwicklungsumgebungen oder Remote-Shell-Clients konzipiert, bietet er eine nahtlose Terminalerfahrung innerhalb von Flutter-Anwendungen. Das Paket wird aktiv gepflegt und ist mit Android, iOS, Web, macOS, Windows und Linux kompatibel.

Anwendungsfälle

  • Ein Terminal in einer Code-Editor-Anwendung einbetten
  • Entwicklung von Remote-SSH-Clients
  • Interaktive Befehlszeilenwerkzeuge erstellen
  • Entwicklung von Entwickler-Konsolen-Schnittstellen
  • Unterstützung von terminalbasierten Workflows in Desktop-Anwendungen

Hauptmerkmale

  • Vollständige Unterstützung für ANSI-Escape-Sequenzen
  • Plattformübergreifende Kompatibilität
  • Effiziente Textwiedergabe
  • Tastatureingabehandhabung
  • Anpassbare Themen
  • Scrollback und Zeilenumbruch

Geeignet für

  • Flutter-Entwickler, die terminalbasierte Apps erstellen
  • Tools, die eingebetteten Shell-Zugriff erfordern
  • Bildungs-Apps, die die Verwendung der Befehlszeile vermitteln
  • Remote-Entwicklungsumgebungen
  • CLI-Tool-Integrationen

Hinweise

  • Kenntnisse über Terminalprotokolle erforderlich
  • Kann zusätzliche Stilisierung zur UI-Konsistenz erfordern
  • Die Leistung hängt von der Komplexität des Terminalinhalts ab
  • Eingeschränkte eingebaute Befehlsausführung (externer Prozess erforderlich)
  • Ohne Optimierung nicht geeignet für schwere Terminal-Emulation

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

xterm.dart

Actions Package version GitHub repo size GitHub issues GitHub pull requests

xterm.dart is a fast and fully-featured terminal emulator for Flutter applications, with support for mobile and desktop platforms.

This package requires Flutter version >=3.0.0

Screenshots

Features

  • 📦 Works out of the box No special configuration required.
  • 🚀 Fast Renders at 60fps.
  • 😀 Wide character support Supports CJK and emojis.
  • ✂️ Customizable
  • ✔ Frontend independent: The terminal core can work without flutter frontend.

What's new in 3.0.0:

  • 📱 Enhanced support for mobile platforms.
  • ⌨️ Integrates with Flutter's shortcut system.
  • 🎨 Allows changing theme at runtime.
  • 💪 Better performance. No tree rebuilds anymore.
  • 🈂️ Works with IMEs.

Getting Started

1. Add this to your package's pubspec.yaml file:

dependencies:
  ...
  xterm: ^3.2.6

2. Create the terminal:

import 'package:xterm/xterm.dart';
...
terminal = Terminal();

Listen to user interaction with the terminal by simply adding a onOutput callback:

terminal = Terminal();

terminal.onOutput = (output) {
  print('output: $output');
}

3. Create the view, attach the terminal to the view:

import 'package:xterm/flutter.dart';
...
child: TerminalView(terminal),

4. Write something to the terminal:

terminal.write('Hello, world!');

Done!

More examples

  • Write a simple terminal in ~100 lines of code: https://github.com/TerminalStudio/xterm.dart/blob/master/example/lib/main.dart

  • Write a SSH client in ~100 lines of code with dartssh2: https://github.com/TerminalStudio/xterm.dart/blob/master/example/lib/ssh.dart

For a complete project built with xterm.dart, check out TerminalStudio.

Features and bugs

Please file feature requests and bugs at the issue tracker.

Contributions are always welcome!

License

This project is licensed under an MIT license.

Kategorien

Abhängigkeiten

Abhängigkeiten 5 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden