Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

perl Script um den Mac deutsch reden zu lassen

 
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> Scripter-Treff
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Skeeve
•---->
•---->


Anmeldedatum: 20.04.2006
Beiträge: 1068

BeitragVerfasst am: 02.02.2007 - 10:54    Titel: perl Script um den Mac deutsch reden zu lassen Antworten mit Zitat

Hat jemand Lust mitzumachen?

Bitte als "sprich" speichern und ausführbar machen.

sprich -m erklärt dann alles weitere.
Code:
#!/usr/bin/perl
# Version vom 02-Feb-2006 # 3
use strict;
use warnings;
use Getopt::Long;

my ( # Kommandozeilen Parameter
   $voice,
   $out_aiff,
   $debug,
);

use Pod::Usage;

###### POD #################################################################{{{

=head1 NAME

sprich - Ein (nicht ganz ernst gemeintes) Script um Mac OS X' say Kommando
Deutsch beizubringen.

=head1 SYNOPSIS

sprich [-v voice] [-o out.aiff] string ...

=head1 DESCRIPTION

Dies script ersetzt in deutschen Texten Zeichenfolgen durch andere Zeichenfolgen.
Mit ein wenig Glueck klingt das ganze dann recht deutsch.

=head1 OPTIONS

=over 5

=item I<string>

Dies ist der Text, der gesprochen wird.

=item B<-v> voice

Mit dieser Stimme wird gesprochen

=item B<-o> out.aiff

Der gesprochene Text wird in dieser Datei gespeichert.

=item B<-d> debug

Der gewandelte Text wird zur Kontrolle angezeigt.

=back

=head1 UMLAUTS

gibt es im Englischen ja nicht. Mein erster Ansatz ist, sie durch
die einfachen Vokale zu ersetzen. Eingegeben werden sie als
a/:, o/: und u/: (siehe EXAMPLES).

=head1 EXAMPLES

sprich So ein Scheiss

sprich -v Victoria Das klappt nie

sprich Was hast Du gegen meinen Akzent\?

sprich -v Bell Warum ist es am rein so scho/:n

=head1 CREDITS

Dank fuer andere Umschreibregeln geht an:

=over 2

*s: space von apfeltalk.de

=back

=cut

###### END: POD ############################################################}}}

###### commandline options #################################################{{{
&help unless GetOptions(
   "d"       => \$debug,
   "h"       => \&help,
   "m"       => \&man,
   "o=s"   => \$out_aiff,
   "v=s"   => \$voice,
);
sub help { exit pod2usage( verbose => 1 ); };
sub man { exit pod2usage( verbose => 2 ); };

my   @say_param=();
push @say_param, '-v', $voice    if $voice;
push @say_param, '-v', $out_aiff if $out_aiff;
###### END: commandline options ############################################}}}

my (
   $de2en,
   %de2en,
);

INIT: { my $i=0;
   $de2en= join '|', grep { $i=!$i } %de2en=  (
      'a/:' => 'a',
      'o/:' => 'o',
      'u/:' => 'u',
      '<ei' => 'iy',  # *s
      at    => 'a-t',
      au    => 'ou',
      a     => 'ah',
      ch    => 'kh',  # *s
      ein   => 'i-n',
      ei    => 'i',
      'f>'  => 'fe',
      g     => 'gg',  # *s
      ia    => 'ee-ah',
      ie    => 'eeh',
      in    => 'inn', # *s
      i     => 'ee',
      j     => 'y',
      oh    => 'o',
      oo    => 'o-',
      tsch  => 'ch',  # *s
      sch   => 'sh',
      sp    => 'shp',
      ss    => 's',   # *s
      st    => 'sht', # *s
      s     => 'z',   # *s
      u     => 'oo',
      v     => 'f',
      wer   => 'where',
      z     => 'ts',  # *s
      ze    => 'seh',
   );
}

$_= lc join(' ', @ARGV);

tr/<>//d;
s/\b(?=\w)/</g;
s/(?<=\w)\b/>/g;
s/($de2en)/$de2en{$1}/g;
tr/<>//d;

print "$_\n" if $debug;

system 'say',@say_param,$_;

_________________
"All problems are solved in slightly less than half an hour" (Chumbawamba, "Hey Hey We're The Junkies")


Zuletzt bearbeitet von Skeeve am 02.02.2007 - 23:06, insgesamt 4-mal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
iScript
•---->
•---->


Anmeldedatum: 29.03.2001
Beiträge: 1116

BeitragVerfasst am: 02.02.2007 - 16:56    Titel: Antworten mit Zitat

absolut liebenswert, der akzent. Lach lach
klingt doch schon ganz brauchbar.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
Skeeve
•---->
•---->


Anmeldedatum: 20.04.2006
Beiträge: 1068

BeitragVerfasst am: 02.02.2007 - 17:26    Titel: Antworten mit Zitat

iScript hat Folgendes geschrieben:
absolut liebenswert, der akzent. Lach lach
klingt doch schon ganz brauchbar.

Wink Wenn Du problematische Sätze oder wörter hast: Her damit. Vielleicht hast Du sogar eine Idee fürs Umschreiben, damit wir das ganze erweitern können.
_________________
"All problems are solved in slightly less than half an hour" (Chumbawamba, "Hey Hey We're The Junkies")
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skeeve
•---->
•---->


Anmeldedatum: 20.04.2006
Beiträge: 1068

BeitragVerfasst am: 02.02.2007 - 17:33    Titel: Antworten mit Zitat

iScript hat Folgendes geschrieben:
absolut liebenswert, der akzent. Lach lach

Hab es gerade erweitert. Teste mal:
Code:

sprich -v Junior ich wu/:nsch mir ne kleine miezekatze
sprich
sprich -v Whisper wer reitet so spa/:t durch nacht und wind? es ist der vater mit seinem Kind.

_________________
"All problems are solved in slightly less than half an hour" (Chumbawamba, "Hey Hey We're The Junkies")
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> Scripter-Treff Alle Zeiten sind GMT + 2 Stunden
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter