it-swarm.com.de

Text to Speech für ausgewählten Text ubuntu 16.04

Es gibt zwar viele Optionen zum Vorlesen von in die Befehlszeile eingefügtem Text. Mit welcher Software/welchem ​​Tool lässt sich jedoch die gleiche Funktion für hervorgehobenen Text erzielen? Ich suche nach etwas ähnlichem wie Mac OS, konnte aber nichts finden.

Ich habe diesen Befehl bereits ausprobiert:

bash -c "gespeaker --play-text=\"$(xsel | sed -e :a -e '$!N;s/\n/ /;ta')\""

Funktioniert aber nicht. Irgendwelche Vorschläge?

2
sudshekhar

user597291 hier nochmal (hab keinen account). Fand heraus, wie man es mit einer einzigen Tastenkombination macht.

Sie können xclip verwenden, um den primären ausgewählten Text (d. H. Hervorgehobenen Text) zu übernehmen und diesen dann in die Zwischenablage zu leiten.

Verwenden Sie von dort aus xsel, um den Text der Zwischenablage zu übernehmen, und leiten Sie diesen an espeak weiter. Ich empfehle auch, Zeilenumbrüche zu bereinigen, da espeak sonst nur den letzten Absatz liest.

Methode 1 (separate Datei):

So wie ich es mache, ruft die Tastenkombination ein Skript auf, das all dies ausführt und wie sh ~/.custom-scripts/play-selected-text im Tastaturbindungsbefehl aussieht.

Das Skript sieht so aus.

#! /bin/bash

xclip -out -selection primary | xclip -in -selection clipboard
xsel --clipboard | tr "\n" " " | espeak

Methode 2 (direkt in der Tastenkombination):

Wenn Sie keinen separaten Ordner für benutzerdefinierte Skripts benötigen, können Sie diesen einfach in den Tastaturbindungsbefehlsabschnitt einfügen.

xclip -out -selection primary | xclip -in -selection clipboard; xsel --clipboard | tr "\n" " " | espeak
4
user613411