Sziasztok.
Egy igen haszontalan dolgot találtam ki.
Jámboran írom a latex-doksimat, melyet ugyebár tanulok is, félig angol félig magyar, de inkább angol szakzsargon. Amolyan kommunikáció-halmaz, egy bekezdésben soronként egy mondat.
Arra gondoltam, hogy a kritikus bekezdések előtt meg után
%%%---%%%
jellel beírok egy elő- és egy utósriptet, és ezen két scriptecske közötti sorok végére is teszek ilyen % jeles stringet
Ezeket a % jeleket a tex ugye sosem fordítja, de ha az egész .tex forrás fájlt ezen jelsorozat alapján greppelem, akkor előállhat egy borzalmasan nagy script, melyben minden bekezdés más-más sorszámot kap a beleírt scriptecske alapján.
Nos, ha a grep végeredményét chmod 777 után futtatom, akkor a végkimenet a text2wave és a sox prg-knek köszönhetően .ogg fájlokká alakulnak, ami mehet ki a hangfalakra és szólhat a fülembe bele egész nap, míg meg nem tanulom.
A doksi is megmarad, és szép hangfájlok is keletkeznek.
Ennél egyszerűbb megoldást ismer valaki?
:-)
-------------
konkrétabban írok, íme egy bekezdés:
Preambulumba:
\newcommand{\noun}[1]{\textsc{#1}}
dokumentumba (cucc.tex):
\begin{center}
\ovalbox{\begin{minipage}[t]{12cm} % ez csodálatosan bekeretezi ami .ogg kimenetben is szerepel majd
\begin{center}
---SORSZAM mondatköteg:\\
%%%---%%%echo "
\noun{Angol mondatok jönnek ide.}\\ %%%---%%%
\noun{Angol mondatok jönnek ide.}\\ %%%---%%%
\noun{Angol mondatok jönnek ide.}\\ %%%---%%%
\noun{Angol mondatok jönnek ide.}\\ %%%---%%%
%%%---%%%" | text2wave -o fajlnev-SORSZAM.wav
%%%---%%%sox fajlnev-SORSZAM.wav fajlnev-SORSZAM.ogg
%%%---%%%rm -f fajlnev-SORSZAM.wav
---
\par\end{center}%
\end{minipage}}
\par\end{center}
% ertelemszeruen a SORSZAM egy numerikus alak..
végén az oggosítás:
cat cucc.tex |\
grep %%%---%%% |\
sed 's/%%%---%%%//g' |\
sed 's/\\\\/\\/g' |\
sed 's/{//g' |\
sed 's/}//g' |\
sed 's/\\noun//g'> olvasd
chmod 755 ./olvasd #### igen, itt volt a 777..
sh ./olvasd
espeak "all OK"
exit 0
---
zsibbasztó: a fent elírtak működnek is, most végeztem...
- 5421 megtekintés
Hozzászólások
offtopic
az ötlet érdekes, de ha kérhetném, még viccből se legyen chmod 777. Ha már mindenképp, akkor is max 755. És ezt ilyenkor kell megtanulni az otthoni gépünkön, hogy később se rosszul használjuk.
/offtopic
- A hozzászóláshoz be kell jelentkezni
Tulajdonképpen igazad van. (Lustaságból a 777-et egyszerűbb benyomni, mint arrébb tenni az ujjunkat..)
Át is javítom.
Bár ki is hagyhatom, ha már eleve az sh után írtam.
---
--- A gond akkor van, ha látszólag minden működik. ---
---
- A hozzászóláshoz be kell jelentkezni
[Feliratkozás]
- A hozzászóláshoz be kell jelentkezni
Az espeak nevű progival műveltem egyszer hasonlókat, sima txt fájlokkal dolgozott, és tudott magyarul is olvasni (meg sok más nyelven is). Mondjuk, ha úgy tud angolul is, mint magyarul, akkor azért tanuláshoz nem ajánlanám... de hátha.
-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.
/usr/lib/libasound.so --gágágágá --lilaliba
- A hozzászóláshoz be kell jelentkezni
Az espeak nem olyan jól olvas angolul, mint a festival.
A fentiekben a text2wave-t használtam, az meg a festival prg része.
---
--- A gond akkor van, ha látszólag minden működik. ---
---
- A hozzászóláshoz be kell jelentkezni
És melyik olvas jobban magyarul?
- A hozzászóláshoz be kell jelentkezni
Az espeak.
Ez érdekes.
Emléxem, annak idején készítettem egy angol tanuló scriptet, mely szintén előállította a txt fájlba beírt dolgaimat soronként, a magyart az espeak mondta ki, az angolt a festival. végül a kimenet .ogg volt, a fájlnév meg az éppen aktuális szó angol meg magyar megfelelője ekezetek.nelkul
:)
---
--- A gond akkor van, ha látszólag minden működik. ---
---
- A hozzászóláshoz be kell jelentkezni
Jópofa dolog, viszont nagyon csúnya (és hosszútávon is nehezen karbantartható) hogy a szkript egyes részeit a tex fájlba írod bele. A .tex fájlba csak markupot tegyél, %%% meg egyéb jeleket amiknek megvan a jelentésük (blokk kezdete, vége, stb.), és a külső szkript amelyik most grepezik meg sedezik az kéne hogy tartalmazza a text2wave és hasonló parancsokat is.
- A hozzászóláshoz be kell jelentkezni
Tényleg csúnya, és igen nehézkes karbantartani.
Ha forráskódon kívül, pl. egy Lyx-et használok, akkor egyenesen őrület ilyet tenni, bár már rájöttem, hogyan lehet mégis.
Hosszabb távon ha ilyesmire szükségem lenne, valahogy úgy oldanám meg a dolgot, hogy azon sorokat, melyeket ki is akarok mondatni, valamivel jelölöm pl. a fenti kódban a \noun helyett mondjuk \nounnn -nal, amely ugyanazt teszi, mint a \noun, csak benne van a kód is... Viszont a preambulumon kívül így valóban nem lesz habraty BASH kód.
A topicot csak egy ötlet erejéig írtam le, ahány programozó, annyiféle megoldás lehetséges erre. Szóval kíváncsi vagyok mindenre :)
----------
Végiggondoltam még egyszer amit írtál.
Tényleg megoldható. Ha a sorok végén mondjuk 7 db % jel van, meg vannak jelölve azon mondatok, melyeket a külső bash script oggá alakít. A "mezőelválasztó" (amely darabol) pedig minden olyan sor, melynek végén %%%%%%% van, az elején meg %%%---%%%
így a tex forráskód nem tartalmaz a preambulumban sem bash kódot, és minden szép.
---
--- A gond akkor van, ha látszólag minden működik. ---
---
- A hozzászóláshoz be kell jelentkezni