summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am5
-rw-r--r--Makefile.in5
-rwxr-xr-xconfigure22
-rw-r--r--configure.ac2
-rw-r--r--doc/COMPILE1
-rw-r--r--doc/Changelog12
-rw-r--r--doc/Makefile.in4
-rw-r--r--doc/daisy-player.html18
-rw-r--r--doc/daisy-player.txt9
-rw-r--r--m4/Makefile8
-rw-r--r--man/Makefile12
-rw-r--r--man/Makefile.in4
-rw-r--r--man/daisy-player.114
-rw-r--r--po/Makefile12
-rw-r--r--po/Makefile.in8
-rw-r--r--po/POTFILES4
-rw-r--r--po/POTFILES.in2
-rw-r--r--po/af.gmobin6465 -> 6372 bytes
-rw-r--r--po/af.po161
-rw-r--r--po/cs.gmobin6089 -> 5997 bytes
-rw-r--r--po/cs.po161
-rw-r--r--po/daisy-player.pot158
-rw-r--r--po/de.gmobin6454 -> 6349 bytes
-rw-r--r--po/de.po161
-rw-r--r--po/en@boldquot.gmobin6525 -> 6251 bytes
-rw-r--r--po/en@boldquot.po166
-rw-r--r--po/en@quot.gmobin6489 -> 6223 bytes
-rw-r--r--po/en@quot.po166
-rw-r--r--po/es_ES.gmobin6534 -> 6430 bytes
-rw-r--r--po/es_ES.po161
-rw-r--r--po/es_GT.gmobin6415 -> 6311 bytes
-rw-r--r--po/es_GT.po161
-rw-r--r--po/fi.gmobin6410 -> 6313 bytes
-rw-r--r--po/fi.po161
-rw-r--r--po/fr.gmobin6525 -> 6309 bytes
-rw-r--r--po/fr.po223
-rw-r--r--po/hu.gmobin7025 -> 6967 bytes
-rw-r--r--po/hu.po161
-rw-r--r--po/ml.gmobin8776 -> 8776 bytes
-rw-r--r--po/ml.po156
-rw-r--r--po/nb.gmobin6528 -> 6429 bytes
-rw-r--r--po/nb.po161
-rw-r--r--po/nl.gmobin6669 -> 6395 bytes
-rw-r--r--po/nl.po167
-rw-r--r--po/pl.gmobin6810 -> 6697 bytes
-rw-r--r--po/pl.po161
-rw-r--r--po/pt.gmobin6628 -> 6532 bytes
-rw-r--r--po/pt.po161
-rw-r--r--po/sl.gmobin6550 -> 6457 bytes
-rw-r--r--po/sl.po161
-rw-r--r--po/sv.gmobin6310 -> 6210 bytes
-rw-r--r--po/sv.po161
-rw-r--r--src/Makefile.am8
-rw-r--r--src/Makefile.in13
-rw-r--r--src/audiocd.c6
-rw-r--r--src/common.c202
-rw-r--r--src/daisy-player.c206
-rw-r--r--src/daisy.h44
-rw-r--r--src/daisy2.02.c143
-rw-r--r--src/daisy3.c1276
-rw-r--r--src/madplay/m4/Makefile2
-rw-r--r--src/ncx.c392
-rw-r--r--src/opf.c439
-rw-r--r--src/pactl/m4/Makefile22
-rw-r--r--src/pactl/src/core-util.c6
-rw-r--r--src/paranoia.c6
-rw-r--r--src/playfile.c12
67 files changed, 2822 insertions, 3065 deletions
diff --git a/Makefile.am b/Makefile.am
index d3ec970..60dc4cc 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -200,6 +200,11 @@ force-update-gmo-%: check-gettext
fi ; \
touch po/$$language.po ; \
cd po && $(MAKE) $(AM_MAKEFLAGS) update-gmo
+
+checkinstall:
+ @echo "checkinstall..."
+ make distdir
+ checkinstall
.PHONY:
hcheck-gettext update-po update-gmo force-update-gmo
diff --git a/Makefile.in b/Makefile.in
index 7700691..2145c01 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1023,6 +1023,11 @@ force-update-gmo-%: check-gettext
touch po/$$language.po ; \
cd po && $(MAKE) $(AM_MAKEFLAGS) update-gmo
+checkinstall:
+ @echo "checkinstall..."
+ make distdir
+ checkinstall
+
.PHONY:
hcheck-gettext update-po update-gmo force-update-gmo
diff --git a/configure b/configure
index 405d115..18c1c2c 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for daisy-player 11.6.2.1.
+# Generated by GNU Autoconf 2.69 for daisy-player 11.7.
#
# Report bugs to <jos@jlemmens.nl>.
#
@@ -580,8 +580,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='daisy-player'
PACKAGE_TARNAME='daisy-player'
-PACKAGE_VERSION='11.6.2.1'
-PACKAGE_STRING='daisy-player 11.6.2.1'
+PACKAGE_VERSION='11.7'
+PACKAGE_STRING='daisy-player 11.7'
PACKAGE_BUGREPORT='jos@jlemmens.nl'
PACKAGE_URL='www.jlemmens.nl'
@@ -1361,7 +1361,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures daisy-player 11.6.2.1 to adapt to many kinds of systems.
+\`configure' configures daisy-player 11.7 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1432,7 +1432,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of daisy-player 11.6.2.1:";;
+ short | recursive ) echo "Configuration of daisy-player 11.7:";;
esac
cat <<\_ACEOF
@@ -1553,7 +1553,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-daisy-player configure 11.6.2.1
+daisy-player configure 11.7
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2166,7 +2166,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by daisy-player $as_me 11.6.2.1, which was
+It was created by daisy-player $as_me 11.7, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -3033,7 +3033,7 @@ fi
# Define the identity of the package.
PACKAGE='daisy-player'
- VERSION='11.6.2.1'
+ VERSION='11.7'
cat >>confdefs.h <<_ACEOF
@@ -9779,7 +9779,7 @@ fi
# Define the identity of the package.
PACKAGE='daisy-player'
- VERSION='11.6.2.1'
+ VERSION='11.7'
cat >>confdefs.h <<_ACEOF
@@ -12422,7 +12422,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by daisy-player $as_me 11.6.2.1, which was
+This file was extended by daisy-player $as_me 11.7, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -12489,7 +12489,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-daisy-player config.status 11.6.2.1
+daisy-player config.status 11.7
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --git a/configure.ac b/configure.ac
index c7991cb..b496ed7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ([2.69])
-AC_INIT([daisy-player], [11.6.2.1], [jos@jlemmens.nl], [], [www.jlemmens.nl])
+AC_INIT([daisy-player], [11.7], [jos@jlemmens.nl], [], [www.jlemmens.nl])
AM_INIT_AUTOMAKE([subdir-objects])
AC_CONFIG_SRCDIR([config.h.in])
AC_CONFIG_HEADERS([config.h])
diff --git a/doc/COMPILE b/doc/COMPILE
index cf11d50..2773af8 100644
--- a/doc/COMPILE
+++ b/doc/COMPILE
@@ -11,6 +11,7 @@ To compile daisy-player, be sure the following extra packages are installed:
libid3tag0-dev
libpulse-dev
libsndfile1-dev
+ libid3tag0-dev
dietlibc-dev
Give the following commands:
diff --git a/doc/Changelog b/doc/Changelog
index 43be792..104bd7d 100644
--- a/doc/Changelog
+++ b/doc/Changelog
@@ -299,5 +299,15 @@ Samuel Thibault <sthibault@debian.org>
With 'o' a soundcard can be selected. The volume levels and
the "mute" states of all cards ar shown and can be altered
using 'm', 'v' and 'V'.
-11.6.2.1
+11.6.2.1
Reset the terminal after daisy-player exits.
+11.6.2.2
+ fr.po patched by Samuel Thibault <samuel.thibault@ens-lyon.org>.
+11.7 Thanks to Didier Spaier <didier@slint.fr> for his patch to common.c:
+ - if ((p = popen ("/usr/bin/pactl list sinks", "r")) == NULL)
+ + if ((p = popen ("LANG=C /usr/bin/pactl list sinks", "r")) == NULL)
+ Added a new -v option for verbosity while readding a book,
+ so one can see what's going on.
+ Solved compiler warnings.
+ Thanks to Colomban Wendling <cwendling@hypra.fr> for his
+ patch to gracefully quit daisy-player upon receiving a signal.
diff --git a/doc/Makefile.in b/doc/Makefile.in
index a64b0cc..59e9ccd 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -315,9 +315,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign doc/Makefile
+ $(AUTOMAKE) --gnu doc/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/doc/daisy-player.html b/doc/daisy-player.html
index e60e747..ec1178f 100644
--- a/doc/daisy-player.html
+++ b/doc/daisy-player.html
@@ -2,7 +2,7 @@
<HTML><HEAD><TITLE>Man page of daisy-player</TITLE>
</HEAD><BODY>
<H1>daisy-player</H1>
-Section: Linux Reference Manual (1)<BR>Updated: 08 December 2018<BR><A HREF="#index">Index</A>
+Section: Linux Reference Manual (1)<BR>Updated: 13 May 2019<BR><A HREF="#index">Index</A>
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
<A NAME="lbAB">&nbsp;</A>
@@ -16,7 +16,7 @@ Section: Linux Reference Manual (1)<BR>Updated: 08 December 2018<BR><A HREF="#in
<PRE>
<B>daisy-player</B> [<I>directory_with_a_Daisy-structure</I> |
Daisy_book_archive] [<B>-c</B> <I>cdrom_device</I>] [<B>-d</B> <I>pulseaudio_sound_device</I>] [<B>-h</B>]
-[<B>-i</B>] [<B>-n</B> | <B>-y</B>]
+[<B>-i</B>] [<B>-n</B> | <B>-y</B>] [<B>-v</B>]
</PRE>
@@ -52,7 +52,7 @@ Use DEVICE as the CD device. DEVICE is the device special file name of the CD-RO
<DT><B>-d</B> <I>pulseaudio_sound_device</I>
<DD>
-Daisy-player will play on this sound device. Default is &quot;0&quot;. (The first soundcard). Be sure the user is a member of the group pulse-access.
+Daisy-player will play on this sound device. Default is &quot;0&quot;. (The first soundcard). Be sure the user is a member of the group audio.
<DT><B>-h</B>
<DD>
@@ -69,9 +69,13 @@ Don't fetch cddb-information of an Audio-CD from the internet.
<DD>
Fetch cddb-information of an Audio-CD from the internet.
+<DT><B>-v</B>
+
+<DD>
+Be more verbose, so one can se what's going on while initializing.
</DL>
<A NAME="lbAF">&nbsp;</A>
-<H2>SCREEN</H2>
+<H2>SCREEN </H2>
The name and version of this program and the name of the author will be displayed left aligned at the top of the screen. The name of the current loaded book will be displayed right aligned.
<P>
@@ -260,7 +264,7 @@ Jos Lemmens &lt;<A HREF="mailto:jos@jlemmens.nl">jos@jlemmens.nl</A>&gt;
<A NAME="lbAM">&nbsp;</A>
<H2>COPYRIGHT</H2>
-Copyright (C)2003-2018 Jos Lemmens &lt;<A HREF="mailto:jos@jlemmens.nl">jos@jlemmens.nl</A>&gt;
+Copyright (C)2003-2019 Jos Lemmens &lt;<A HREF="mailto:jos@jlemmens.nl">jos@jlemmens.nl</A>&gt;
<P>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see the file COPYING); if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
@@ -273,7 +277,7 @@ This program is free software; you can redistribute it and/or modify it under th
<DT><A HREF="#lbAC">SYNOPSIS</A><DD>
<DT><A HREF="#lbAD">DESCRIPTION</A><DD>
<DT><A HREF="#lbAE">OPTIONS</A><DD>
-<DT><A HREF="#lbAF">SCREEN</A><DD>
+<DT><A HREF="#lbAF">SCREEN </A><DD>
<DT><A HREF="#lbAG">CONTROL KEYS</A><DD>
<DT><A HREF="#lbAH">NOTES</A><DD>
<DT><A HREF="#lbAI">THANKS TO</A><DD>
@@ -286,6 +290,6 @@ This program is free software; you can redistribute it and/or modify it under th
This document was created by
<A HREF="/cgi-bin/man/man2html">man2html</A>,
using the manual pages.<BR>
-Time: 19:24:25 GMT, December 08, 2018
+Time: 14:07:38 GMT, May 13, 2019
</BODY>
</HTML>
diff --git a/doc/daisy-player.txt b/doc/daisy-player.txt
index a10cb35..742d61f 100644
--- a/doc/daisy-player.txt
+++ b/doc/daisy-player.txt
@@ -4,7 +4,7 @@ daisy-player - player for DAISY Digital Talking Books or Audio-CD's
SYNOPSIS
daisy-player [directory_with_a_Daisy-structure |
Daisy_book_archive] [-c cdrom_device] [-d pulseaudio_sound_device] [-h]
-[-i] [-n | -y]
+[-i] [-n | -y] [-v]
DESCRIPTION
Daisy-player reads a Daisy-CD and plays the audio-files.
@@ -18,13 +18,14 @@ OPTIONS
directory_with_a_Daisy-structure One could also give a directory with a daisy structure as argument to daisy-player.
Daisy_book_in_ZIP_format One could also give a file in ZIP-format with a daisy structure as argument to daisy-player.
-c cdrom_device Use DEVICE as the CD device. DEVICE is the device special file name of the CD-ROM device. The default is /dev/sr0. Be sure the user is a member of the group cdrom.
--d pulseaudio_sound_device Daisy-player will play on this sound device. Default is "0". (The first soundcard). Be sure the user is a member of the group pulse-access.
+-d pulseaudio_sound_device Daisy-player will play on this sound device. Default is "0". (The first soundcard). Be sure the user is a member of the group audio.
-h Display this help and exit.
-i Ignore reading of the bookmarks.
-n Don't fetch cddb-information of an Audio-CD from the internet.
-y Fetch cddb-information of an Audio-CD from the internet.
+-v Be more verbose, so one can se what's going on while initializing.
-SCREEN
+SCREEN
The name and version of this program and the name of the author will be displayed left aligned at the top of the screen. The name of the current loaded book will be displayed right aligned.
The second row of the screen will display the number of pages of the current loaded book (if any), the current selected level and the total number of levels, the total playing time, the current displayed screen and the total number of screens.
@@ -87,6 +88,6 @@ cddbget(1), unar(1), eject(1), udisksctl(1), pulseaudio(1), usermod(8)
AUTHOR
Jos Lemmens <jos@jlemmens.nl>
COPYRIGHT
-Copyright (C)2003-2018 Jos Lemmens <jos@jlemmens.nl>
+Copyright (C)2003-2019 Jos Lemmens <jos@jlemmens.nl>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see the file COPYING); if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
diff --git a/m4/Makefile b/m4/Makefile
index 8ef2b9d..03588da 100644
--- a/m4/Makefile
+++ b/m4/Makefile
@@ -189,20 +189,20 @@ OBJEXT = o
PACKAGE = daisy-player
PACKAGE_BUGREPORT = jos@jlemmens.nl
PACKAGE_NAME = daisy-player
-PACKAGE_STRING = daisy-player 11.6.2.1
+PACKAGE_STRING = daisy-player 11.7
PACKAGE_TARNAME = daisy-player
PACKAGE_URL = www.jlemmens.nl
-PACKAGE_VERSION = 11.6.2.1
+PACKAGE_VERSION = 11.7
PATH_SEPARATOR = :
POSUB = po
POW_LIB =
RANLIB = ranlib
SED = /bin/sed
SET_MAKE =
-SHELL = /bin/bash
+SHELL = /bin/sh
STRIP =
USE_NLS = yes
-VERSION = 11.6.2.1
+VERSION = 11.7
XGETTEXT = /usr/bin/xgettext
XGETTEXT_015 = /usr/bin/xgettext
XGETTEXT_EXTRA_OPTIONS =
diff --git a/man/Makefile b/man/Makefile
index aa697da..c2be426 100644
--- a/man/Makefile
+++ b/man/Makefile
@@ -220,20 +220,20 @@ OBJEXT = o
PACKAGE = daisy-player
PACKAGE_BUGREPORT = jos@jlemmens.nl
PACKAGE_NAME = daisy-player
-PACKAGE_STRING = daisy-player 11.6.2.1
+PACKAGE_STRING = daisy-player 11.7
PACKAGE_TARNAME = daisy-player
PACKAGE_URL = www.jlemmens.nl
-PACKAGE_VERSION = 11.6.2.1
+PACKAGE_VERSION = 11.7
PATH_SEPARATOR = :
POSUB = po
POW_LIB =
RANLIB = ranlib
SED = /bin/sed
SET_MAKE =
-SHELL = /bin/bash
+SHELL = /bin/sh
STRIP =
USE_NLS = yes
-VERSION = 11.6.2.1
+VERSION = 11.7
XGETTEXT = /usr/bin/xgettext
XGETTEXT_015 = /usr/bin/xgettext
XGETTEXT_EXTRA_OPTIONS =
@@ -309,9 +309,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign man/Makefile
+ $(AUTOMAKE) --gnu man/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/man/Makefile.in b/man/Makefile.in
index 36e54e4..a7d3387 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -309,9 +309,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu man/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --foreign man/Makefile
+ $(AUTOMAKE) --gnu man/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
diff --git a/man/daisy-player.1 b/man/daisy-player.1
index 6c47fdd..0a48cf8 100644
--- a/man/daisy-player.1
+++ b/man/daisy-player.1
@@ -1,5 +1,5 @@
.\" Text automatically generated by txt2man
-.TH daisy-player 1 "08 December 2018" "11.6.2" "Linux Reference Manual"
+.TH daisy-player 1 "13 May 2019" "11.7" "Linux Reference Manual"
.SH NAME
\fBdaisy-player \fP- player for DAISY Digital Talking Books or Audio-CD's
\fB
@@ -8,7 +8,7 @@
.fam C
\fBdaisy-player\fP [\fIdirectory_with_a_Daisy-structure\fP |
Daisy_book_archive] [\fB-c\fP \fIcdrom_device\fP] [\fB-d\fP \fIpulseaudio_sound_device\fP] [\fB-h\fP]
-[\fB-i\fP] [\fB-n\fP | \fB-y\fP]
+[\fB-i\fP] [\fB-n\fP | \fB-y\fP] [\fB-v\fP]
.fam T
.fi
@@ -37,7 +37,7 @@ Use DEVICE as the CD device. DEVICE is the device special file name of the CD-RO
.TP
.B
\fB-d\fP \fIpulseaudio_sound_device\fP
-Daisy-player will play on this sound device. Default is "0". (The first soundcard). Be sure the user is a member of the group pulse-access.
+Daisy-player will play on this sound device. Default is "0". (The first soundcard). Be sure the user is a member of the group audio.
.TP
.B
\fB-h\fP
@@ -54,7 +54,11 @@ Don't fetch cddb-information of an Audio-CD from the internet.
.B
\fB-y\fP
Fetch cddb-information of an Audio-CD from the internet.
-.SH SCREEN
+.TP
+.B
+\fB-v\fP
+Be more verbose, so one can se what's going on while initializing.
+.SH SCREEN
The name and version of this program and the name of the author will be displayed left aligned at the top of the screen. The name of the current loaded book will be displayed right aligned.
.PP
The second row of the screen will display the number of pages of the current loaded book (if any), the current selected level and the total number of levels, the total playing time, the current displayed screen and the total number of screens.
@@ -216,6 +220,6 @@ This file, in XML-format, contains the name of the desired pulseaudio device and
.SH AUTHOR
Jos Lemmens <jos@jlemmens.nl>
.SH COPYRIGHT
-Copyright (C)2003-2018 Jos Lemmens <jos@jlemmens.nl>
+Copyright (C)2003-2019 Jos Lemmens <jos@jlemmens.nl>
.PP
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see the file COPYING); if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
diff --git a/po/Makefile b/po/Makefile
index d9e15cb..bcc86f3 100644
--- a/po/Makefile
+++ b/po/Makefile
@@ -10,7 +10,7 @@
GETTEXT_MACRO_VERSION = 0.19
PACKAGE = daisy-player
-VERSION = 11.6.2.1
+VERSION = 11.7
PACKAGE_BUGREPORT = jos@jlemmens.nl
SED = /bin/sed
@@ -80,7 +80,9 @@ POTFILES = \
../src/common.c \
../src/daisy2.02.c \
../src/daisy3.c \
- ../src/daisy-player.c
+ ../src/daisy-player.c \
+ ../src/ncx.c \
+ ../src/opf.c
CATALOGS = af.gmo cs.gmo de.gmo en@quot.gmo en@boldquot.gmo es_ES.gmo es_GT.gmo fi.gmo fr.gmo hu.gmo ml.gmo nb.gmo nl.gmo pl.gmo pt.gmo sl.gmo sv.gmo
@@ -240,7 +242,7 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--package-name="$${package_prefix}daisy-player" \
- --package-version='11.6.2.1' \
+ --package-version='11.7' \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
esac
@@ -515,11 +517,11 @@ update-gmo: Makefile $(GMOFILES)
# Recreate Makefile by invoking config.status. Explicitly invoke the shell,
# because execution permission bits may not work on the current file system.
-# Use /bin/bash, which is the shell determined by autoconf for the use by its
+# Use /bin/sh, which is the shell determined by autoconf for the use by its
# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient.
Makefile: Makefile.in.in Makevars $(top_builddir)/config.status POTFILES.in LINGUAS
cd $(top_builddir) \
- && /bin/bash ./config.status $(subdir)/$@.in po-directories
+ && /bin/sh ./config.status $(subdir)/$@.in po-directories
force:
diff --git a/po/Makefile.in b/po/Makefile.in
index df19c29..0338953 100644
--- a/po/Makefile.in
+++ b/po/Makefile.in
@@ -10,7 +10,7 @@
GETTEXT_MACRO_VERSION = 0.19
PACKAGE = daisy-player
-VERSION = 11.6.2.1
+VERSION = 11.7
PACKAGE_BUGREPORT = jos@jlemmens.nl
SED = /bin/sed
@@ -195,7 +195,7 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--package-name="$${package_prefix}daisy-player" \
- --package-version='11.6.2.1' \
+ --package-version='11.7' \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
esac
@@ -470,11 +470,11 @@ update-gmo: Makefile $(GMOFILES)
# Recreate Makefile by invoking config.status. Explicitly invoke the shell,
# because execution permission bits may not work on the current file system.
-# Use /bin/bash, which is the shell determined by autoconf for the use by its
+# Use /bin/sh, which is the shell determined by autoconf for the use by its
# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient.
Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@
cd $(top_builddir) \
- && /bin/bash ./config.status $(subdir)/$@.in po-directories
+ && /bin/sh ./config.status $(subdir)/$@.in po-directories
force:
diff --git a/po/POTFILES b/po/POTFILES
index 04cf5a1..889f848 100644
--- a/po/POTFILES
+++ b/po/POTFILES
@@ -1,4 +1,6 @@
../src/common.c \
../src/daisy2.02.c \
../src/daisy3.c \
- ../src/daisy-player.c
+ ../src/daisy-player.c \
+ ../src/ncx.c \
+ ../src/opf.c
diff --git a/po/POTFILES.in b/po/POTFILES.in
index e0dfeb9..63e9051 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -9,3 +9,5 @@ src/common.c
src/daisy2.02.c
src/daisy3.c
src/daisy-player.c
+src/ncx.c
+src/opf.c
diff --git a/po/af.gmo b/po/af.gmo
index 763ba99..ef03f03 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index d11c754..e891883 100644
--- a/po/af.po
+++ b/po/af.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Willem van der Walt <wvdwalt@csir.co.za>>\n"
"Language-Team: Willem van der Walt <wvdwalt@csir.co.za>\n"
@@ -31,326 +31,321 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Probeer asseblief hierdie boek met daisy-player te speel"
# 33
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Kan nie type %d lees nie"
# 15
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Gaan na bladsynommer:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Wag asseblief..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Kies die volgende klankkaart"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
# 33
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Kan nie %s lees nie"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Hierdie boek het geen klank. Speel hierdie boek met eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Geen items gevind nie. Probeer opsie \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Geen items gevind nie. Probeer opsie \"-O\"."
-
# 5
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' vir hulp -"
# 1
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d bladsye"
# 3
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "vlak: %d van %d"
# 4
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "totale lengte: %02d:%02d:%02d"
# 38
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Hierdie bevele is beskikbaar in hierdie weergawe:"
# 41
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "Af peiltjie,2 - skuif die loper na die volgende item"
# 44
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "op peiltjie,8 - skuif die loper na die vorige item"
# 43
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "regs peiltjie,6 - spring na die volgende frase toe"
# 42
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "links peiltjie,4 - spring na die vorige frase toe"
# 57
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - wys die volgende bladsy"
# 58
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - wys die vorige bladsy"
# 46
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - begin speel"
# 62
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "spasie,0 - stop tydelik/hervat terugspeel"
# 50
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - speel teen normale spoed"
# 23
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Druk enige sleutel vir die volgende bladsy..."
# 32
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - soek vir 'n ettiket"
# 45
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - stoor huidige item op skyf"
# 11
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - verlaag terugspeelspoed"
# 59
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - ophou daisy-player, plaas 'n boekmerk en verwyder"
# 47
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - Kry die item wat nou speel en skuif die loper daarheen"
# 48
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - gaan na tyd"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - gaan na tyd"
# 48
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - gaan na bladsynommer"
# 49
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - wys hierdie help-bladsy"
# 51
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - speel net die huidige item"
# 52
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - verander na die volgende vlak"
# 16
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - verander na die vorige vlak"
# 55
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
# 53
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - soek vorentoe"
# 18
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - soek agteruit"
# 55
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - kies die volgende klankkaart"
# 56
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - maak 'n boekmerk"
# 59
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - stop daisy-player en maak 'n boekmerk"
# 60
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - hou op speel"
# 29
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - verhoog terugspeelspoed"
# 11
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - afspeel volume te verminder"
# 29
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - verhoog afspeel volume (pasop vir afsny)"
# 37
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Druk enige sleutel om die help-skerm te verlaat..."
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Hierdie boek het geen klank. Speel hierdie boek met eBook-speaker"
+
# 20
-#: src/daisy-player.c:853
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Wag asseblief... -----------------------"
# 30
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Wat soek u?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Gaan na tyd: (mm:ss):"
# 13
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - weergawe %s %s"
# 39
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr ""
"Gebruiksaanwysings: %s [directory met 'n Daisy-struktuur] | "
"[Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_toestel] [-d pulseaudio_klank_toestel]"
# 34
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Kan nie /proc/mounts lees nie."
# 13
# 13
# 6
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "'n program om Daisy CD's in Linux te speel"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Besig om vir 'n DAISY CD te soek..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Geen DAISY CD of audio CD is gekry nie"
# 36
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Daar is nie 'n daisy-cd in die CD speler nie."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Audio CD gekry."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Besig om tietels vanaf freedb.freedb.org te kry..."
# 13
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - weergawe %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - weergawe %s - (C)2019 J. Lemmens"
# 22
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Druk 'h' vir hulp"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Geen items gevind nie. Probeer opsie \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Geen items gevind nie. Probeer opsie \"-N\"."
+
# 34
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Kan nie /proc/asound/cards lees nie"
diff --git a/po/cs.gmo b/po/cs.gmo
index 0a380cd..f7e4dce 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index 01f4748..02751a2 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Martin Chvojka\n"
"Language-Team: Martin Chvojka\n"
@@ -30,271 +30,266 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Vyzkouej pehrt tuto knihu s daisy-playerem prosm"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Nemohu pest typ: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Jdi na strnku:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "ekej prosm..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Vyber zvukovou kartu:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Nemu pest %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Tato kniha nem audio. Pehraj tuto knihu s eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Nenalezeny dn poloky. Vyzkouej volbu \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Nenalezeny dn poloky. Vyzkouej volbu \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' pro npovdu -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d strnek"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "rove: %d z %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "celkov dlka: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Tyto pkazy jsou dostupn v tto verzi"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "ipka dol,2 - pesune ukazatel na dal poloku"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "ipka nahoru,8 - pesune ukazatel na pedchoz poloku"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "ipka vpravo,6 - pesko na dal frzy"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "ipka vlevo,4 - pesko na pedchoz frzy"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - zobrazen nsledujc strnky"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - zobrazen pedchoz strnky"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - spustit pehrvn"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "mezera,0 - pauza/pehrvn"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - pehrvn normln rychlost"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Stiskni jakoukoli klvesu pro dal strnku..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - hledn oznaen"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - uloit aktuln poloku na disk"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - snit rychlost pehrvn"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - opustit daisy-player, umstit zloku a pry"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - najt aktuln pehrvanou poloku a umstit tam ukazatel"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - jt na as v tto psni (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - jt na as v tto poloce (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - jt na strnku"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - zobrazit tuto npovdu"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - pehrt aktuln poloku"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - pepnou na nsledujc rove"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - pepnout na pedchoz rove"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - hledat vped"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - hledat vzad"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - vybrat nsledujc vstupn zvukov zazen"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "P - umstit zloku"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - opustit daisy-player a umstit zloku"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - zastavit pehrvn"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - zvit rychlost pehrvn"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - snit hlasitost pehrvn"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - zvit hlasitost pehrvn (pozor na pebuzen)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Stiskni jakoukoliv klvesu k oputn npovdy..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Tato kniha nem audio. Pehraj tuto knihu s eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "ekej prosm... -----------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Co hled?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Jdi na as (MM:SS)"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Verze %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Pouit: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_device] [-d pulseaudio_sound_device]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Nelze pest /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Analyztor pro pehrvn Daisy CD s Linuxem"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Hledm Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Nenalezeno dn DAISY ani Audio CD"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "V mechanice nen Daisy CD."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Nalezeno Audio CD"
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Zskej nzvy z freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Verze %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Verze %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Stiskni 'h' pro npovdu"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Nenalezeny dn poloky. Vyzkouej volbu \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Nenalezeny dn poloky. Vyzkouej volbu \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Nemohu pest /proc/asound/cards"
diff --git a/po/daisy-player.pot b/po/daisy-player.pot
index 5880a30..9a835fd 100644
--- a/po/daisy-player.pot
+++ b/po/daisy-player.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: daisy-player 11.6.2.1\n"
+"Project-Id-Version: daisy-player 11.7\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,268 +17,260 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr ""
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr ""
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr ""
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr ""
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr ""
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr ""
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr ""
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr ""
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr ""
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr ""
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr ""
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr ""
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr ""
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr ""
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr ""
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr ""
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr ""
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr ""
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr ""
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr ""
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr ""
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr ""
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr ""
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr ""
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr ""
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr ""
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr ""
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr ""
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr ""
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr ""
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr ""
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr ""
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr ""
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr ""
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr ""
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr ""
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr ""
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr ""
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr ""
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr ""
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr ""
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr ""
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr ""
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr ""
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr ""
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr ""
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr ""
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr ""
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr ""
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr ""
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr ""
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr ""
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr ""
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr ""
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr ""
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr ""
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr ""
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr ""
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr ""
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
msgstr ""
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr ""
+
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr ""
diff --git a/po/de.gmo b/po/de.gmo
index 168c429..e3fe1bd 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 49c0c5e..9a5ab49 100644
--- a/po/de.po
+++ b/po/de.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Klaus Knopper <knopper@knopper.net>\n"
"Language-Team: Klaus Knopper <knopper@knopper.net>\n"
@@ -31,325 +31,320 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Bitte versuchen Sie, dieses Buch mit daisy-player zu spielen"
# 33
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Kann type: %d nicht lesen"
# 15
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Gehe zur Seitenzahl:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Warten Sie mal..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Wählen Sie eine Soundkarte aus:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
# 33
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Kann %s nicht lesen"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Dieses Buch hat kein Audio. Spiel dieses Buch mit eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Keine Elemente gefunden. Versuchen Sie die Option \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Keine Elemente gefunden. Versuchen Sie die Option \"-O\"."
-
# 5
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' hilfe ----"
# 1
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d Seiten"
# 3
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "Level: %d von %d"
# 4
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "Gesamtlänge: %02d:%02d:%02d"
# 38
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Folgende Befehle sind in dieser Version vorhanden:"
# 41
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "Pfeil runter,2 - verschiebt den Cursor auf das nächste Element"
# 44
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "Pfeil hoch,8 - verschiebt den Cursor auf das vorhergehende Element"
# 43
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "Pfeil rechts,6 - springe zur nächsten Phrase"
# 42
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "Pfeil links,4 - springe zur vorhergehenden Phrase"
# 57
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "Seite runter,3 - zur nächsten Seite"
# 58
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "Seite hoch,9 - zur vorigen Seite"
# 46
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "Eingabetaste - abspielen"
# 62
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "Leertaste,0 - Pause-/Weiter"
# 50
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - spiele mit normaler Geschwindigkeit"
# 23
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Taste drücken für nächste Seite..."
# 32
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - suche nach einem Begriff"
# 45
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - Aktuelles Element speichern"
# 11
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - verringere Abspielgeschwindigkeit"
# 59
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr ""
"e,. - Beenden Sie Daisy-Player, legen Sie ein Lesezeichen und Auswerfen"
# 47
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - aktuell spielendes Element finden und den Cursor dort platzieren"
# 48
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - geh zur Zeit in diesem Lied (MM:SS)"
# 48
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - geh zur Zeit in diesem Artikel (MM:SS)"
# 48
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - zur Seitenzahl gehen (falls vorhanden)"
# 49
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - diese Hilfe anzeigen"
# 51
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - nur das aktuelle Element abspielen"
# 52
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - zum nächsten Level wechseln"
# 16
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - zum vorigen Level wechseln"
# 55
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
# 53
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - Suche vorwärts"
# 18
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - Suche rückwärts"
# 55
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - nächstes sound device für Ausgabe wählen"
# 56
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - Lesezeichen setzen"
# 59
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - Daisy-Player verlassen und Lesezeichen setzen"
# 60
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - Abspielen stoppen"
# 29
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - erhöhe Abspielgeschwindigkeit"
# 11
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - verringern Sie die Wiedergabelautstärke"
# 29
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - erhöhe die Wiedergabe-Lautstärke (Vorsicht beim Clipping)"
# 37
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Taste drücken, um die Hilfe zu verlassen..."
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Dieses Buch hat kein Audio. Spiel dieses Buch mit eBook-speaker"
+
# 20
-#: src/daisy-player.c:853
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Bitte warten... ------------------------"
# 30
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Suchen nach...?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Gehe zur Zeit (MM:SS):"
# 13
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Version %s %s"
# 39
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr ""
"Aufruf: %s [Verzeichnis mit einer Daisy-Struktur] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_device] [-d pulseaudio Soundkarte]"
# 34
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Kann /proc/mounts nicht lesen."
# 6
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Ein Programm, um Daisy CDs unter Linux abzuspielen"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Scannen für eine Daisy-CD"
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Kein DAISY-CD oder Audio-CD gefunden"
# 36
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Keine Daisy-CD im Laufwerk."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Eine Audio-CD gefunden."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Holen Titel von freedb.freedb.org..."
# 13
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Version %s - (C)2019 J. Lemmens"
# 22
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "'h' für Hilfe drücken"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Keine Elemente gefunden. Versuchen Sie die Option \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Keine Elemente gefunden. Versuchen Sie die Option \"-N\"."
+
# 34
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Kann /proc/mounts nicht lesen"
diff --git a/po/en@boldquot.gmo b/po/en@boldquot.gmo
index b2cae08..1f542bc 100644
--- a/po/en@boldquot.gmo
+++ b/po/en@boldquot.gmo
Binary files differ
diff --git a/po/en@boldquot.po b/po/en@boldquot.po
index 133136c..0a88028 100644
--- a/po/en@boldquot.po
+++ b/po/en@boldquot.po
@@ -1,7 +1,7 @@
# English translations for daisy-player package.
-# Copyright (C) 2018 Jos Lemmens <jos@jlemmens.nl>
+# Copyright (C) 2019 Jos Lemmens <jos@jlemmens.nl>
# This file is distributed under the same license as the daisy-player package.
-# Automatically generated, 2018.
+# Automatically generated, 2019.
#
# All this catalog "translates" are quotation characters.
# The msgids must be ASCII and therefore cannot contain real quotation
@@ -30,10 +30,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: daisy-player 11.6.2.1\n"
+"Project-Id-Version: daisy-player 11.7\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
-"PO-Revision-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
+"PO-Revision-Date: 2019-05-13 14:36+0200\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: en@boldquot\n"
@@ -42,269 +42,261 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Please try to play this book with daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Cannot read type: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Go to page number:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Please wait..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Select a soundcard:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr "Be sure the package pulseaudio-utils is installed onto your system."
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Cannot read %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "This book has no audio. Play this book with eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "No items found. Try option “-N”."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "No items found. Try option “-O”."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "‘h’ for help -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d pages"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "level: %d of %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "total length: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "These commands are available in this version:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor down,2 - move cursor to the next item"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor up,8 - move cursor to the previous item"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor right,6 - skip to next phrase"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor left,4 - skip to previous phrase"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - view next page"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - view previous page"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - start playing"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "space,0 - pause/resume playing"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - play on normal speed"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Press any key for next page..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - search for a label"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - store current item to disk"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - decrease playing speed"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - quit daisy-player, place a bookmark and eject"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - find the currently playing item and place the cursor there"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - go to time in this song (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - go to time in this item (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - go to page number"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - give this help"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - just play current item"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - switch to next level"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - switch to previous level"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr "m - mute sound output on/off"
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - search forwards"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - search backwards"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - select next output sound device"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - place a bookmark"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - quit daisy-player and place a bookmark"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - stop playing"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - increase playing speed"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - decrease playback volume"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - increase playback volume (beware of Clipping)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Press any key to leave help..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "This book has no audio. Play this book with eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Please wait... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "What do you search?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Go to time (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Version %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_device] [-d pulseaudio_sound_device]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Cannot read /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "A parser to play Daisy CD's with Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Scanning for a Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "No DAISY-CD or Audio-cd found"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "No Daisy CD in drive."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Found an Audio-CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Get titles from freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Version %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Press ‘h’ for help"
+
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "No items found. Try option “-O”."
diff --git a/po/en@quot.gmo b/po/en@quot.gmo
index ebe2381..e37cb8e 100644
--- a/po/en@quot.gmo
+++ b/po/en@quot.gmo
Binary files differ
diff --git a/po/en@quot.po b/po/en@quot.po
index 442ef90..03f8131 100644
--- a/po/en@quot.po
+++ b/po/en@quot.po
@@ -1,7 +1,7 @@
# English translations for daisy-player package.
-# Copyright (C) 2018 Jos Lemmens <jos@jlemmens.nl>
+# Copyright (C) 2019 Jos Lemmens <jos@jlemmens.nl>
# This file is distributed under the same license as the daisy-player package.
-# Automatically generated, 2018.
+# Automatically generated, 2019.
#
# All this catalog "translates" are quotation characters.
# The msgids must be ASCII and therefore cannot contain real quotation
@@ -27,10 +27,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: daisy-player 11.6.2.1\n"
+"Project-Id-Version: daisy-player 11.7\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
-"PO-Revision-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
+"PO-Revision-Date: 2019-05-13 14:36+0200\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: en@quot\n"
@@ -39,269 +39,261 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Please try to play this book with daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Cannot read type: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Go to page number:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Please wait..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Select a soundcard:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr "Be sure the package pulseaudio-utils is installed onto your system."
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Cannot read %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "This book has no audio. Play this book with eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "No items found. Try option “-N”."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "No items found. Try option “-O”."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "‘h’ for help -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d pages"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "level: %d of %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "total length: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "These commands are available in this version:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor down,2 - move cursor to the next item"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor up,8 - move cursor to the previous item"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor right,6 - skip to next phrase"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor left,4 - skip to previous phrase"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - view next page"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - view previous page"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - start playing"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "space,0 - pause/resume playing"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - play on normal speed"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Press any key for next page..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - search for a label"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - store current item to disk"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - decrease playing speed"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - quit daisy-player, place a bookmark and eject"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - find the currently playing item and place the cursor there"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - go to time in this song (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - go to time in this item (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - go to page number"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - give this help"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - just play current item"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - switch to next level"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - switch to previous level"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr "m - mute sound output on/off"
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - search forwards"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - search backwards"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - select next output sound device"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - place a bookmark"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - quit daisy-player and place a bookmark"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - stop playing"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - increase playing speed"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - decrease playback volume"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - increase playback volume (beware of Clipping)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Press any key to leave help..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "This book has no audio. Play this book with eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Please wait... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "What do you search?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Go to time (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Version %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_device] [-d pulseaudio_sound_device]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Cannot read /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "A parser to play Daisy CD's with Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Scanning for a Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "No DAISY-CD or Audio-cd found"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "No Daisy CD in drive."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Found an Audio-CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Get titles from freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Version %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Press ‘h’ for help"
+
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "No items found. Try option “-O”."
diff --git a/po/es_ES.gmo b/po/es_ES.gmo
index 71b3bf0..60a029d 100644
--- a/po/es_ES.gmo
+++ b/po/es_ES.gmo
Binary files differ
diff --git a/po/es_ES.po b/po/es_ES.po
index 9faf1bc..dec0fd1 100644
--- a/po/es_ES.po
+++ b/po/es_ES.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Hanna Tulleken <hannatulleken@gmail.com>\n"
"Language-Team: Hanna Tulleken <hannatulleken@gmail.com>\n"
@@ -31,272 +31,267 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Por favor, intenta reproducir este libro con daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "No poder leer: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Ir a página número:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Por favor espera..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "seleccionar una ficha sonora:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "No poder leer %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Este libro no tiene audio. Escuchar este libro con eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "No se encontraron artículos. Pruebe la opción \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "No se encontraron artículos. Pruebe la opción \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' para ayuda -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d páginas"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "nivel: %d o %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "total longitud: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Estas orden estan disponibles en esta versión:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor abajo,2 - desplazar el cursor hasta el tema próximo"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor arriba,8 - desplazar el cursor para el tema anterior"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor derecho,6 - saltar para la frase próxima"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor izquierdo,4 - saltar para la frase anterior"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "página-abaja,3 - ver página proxima"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "página-ariba,9 - ver página anterior"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "entrar - empezar escuchar"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "espacio,0 - pausa/reanudar escuchar"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "inicio,* - escuchar a velocidad normal"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Hacer clic cada tecla por la página proxima..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - buscar por una etiqueta"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - almacenar el tema actual en disk"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - disminuir velocidad de escuchar"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - dejar daisy-player, poner una marcapágina y echar"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - encontrar el item escuchando y poner el cursor allí"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - ir a tiempo en este canción (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - ir a tiempo en este tema (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - ir a página número (cuando hay)"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - dar esta ayuda"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - solo escuchar el tema actual"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - gambiar al nivél proxima"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - gambiar al nivél antes"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - buscar adelante"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - buscar atrás"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - seleccionar la proxima salida de dispositivo sonido"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - poner una marcapágina"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - dejar daisy-player y poner una marcapágina"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - parar escuchar"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - acelerar velocidad de escuchar"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - disminuir play-back volumen"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - acelerar play-back volumen ( cuidar de Clipping )"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Hacer click alguna tecla para salir ayudar..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Este libro no tiene audio. Escuchar este libro con eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Por favor esperar... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "¿Qué buscas?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Ir a tiempo (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Versión %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Uso: %s [manual_con_una_Daisy-estructura] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_dispositivo] [-d pulseaudio_sonido_dispositivo]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "No poder leer /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Un analizador para escuchar Daisy CD con Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Explorar un Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "No encontrada DAISY-CD o Audio-cd"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "No hay Daisy-CD en el unidad."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Encontrada un Audio-CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Coger títulos de freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Versión %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Versión %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "'h' para ayudar"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "No se encontraron artículos. Pruebe la opción \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "No se encontraron artículos. Pruebe la opción \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "No poder leer /proc/sólido/fichas"
diff --git a/po/es_GT.gmo b/po/es_GT.gmo
index d6489a3..9f9d2d5 100644
--- a/po/es_GT.gmo
+++ b/po/es_GT.gmo
Binary files differ
diff --git a/po/es_GT.po b/po/es_GT.po
index da1d4c0..e09fcbe 100644
--- a/po/es_GT.po
+++ b/po/es_GT.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Oscar Gonzalez Gallegos <ventas@prediomix.com>\n"
"Language-Team: Oscar Gonzalez Gallegos <ventas@prediomix.com>\n"
@@ -31,273 +31,268 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Por favor, intenta reproducir este libro con daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "No poder leer: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Ir a página número:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Por favor espera..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "seleccionar una tarjeta de sonido:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "No se puede leer %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Este libro no contiene audio."
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "No se encontraron artículos. Pruebe la opción \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "No se encontraron artículos. Pruebe la opción \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' para ayuda -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d páginas"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "nivel: %d de %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "longitud total: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Estas órdenes o comandos estan disponibles en esta versión:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor abajo,2 - desplazar el cursor hasta el tema próximo"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor arriba,8 - desplazar el cursor al tema anterior"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor derecho,6 - saltar a la frase próxima"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor izquierdo,4 - saltar a la frase anterior"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "página-abajo,3 - ver página próxima"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "página-ariba,9 - ver página anterior"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "intro - empezar la lectura"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "espacio,0 - pausa/reanudar la lectura"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "inicio,* - escuchar a velocidad normal"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Presione cualquier tecla para ir a la proxima página ..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - buscar por una etiqueta"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - almacenar el tema actual en el disco"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - disminuir velocidad de lectura"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - cerrar daisy-player, poner un marcapágina y salir"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - encontrar el item que está siendo escuchado y poner el cursor allí"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - ir a tiempo específico en esta canción (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - ir para tiempo específico en este tema (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - ir para página número (cuando hay)"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - dar esta ayuda"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - solo escuchar el tema actual"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - cambiar al nivel proximo"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - cambiar al nivel anterior"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - buscar hacia adelante"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - buscar hacia atrás"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - seleccionar la proxima salida de dispositivo de sonido"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - poner un marcapágina"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - cerrar daisy-player y poner una marcapágina"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - parar la lectura"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - acelerar velocidad de lectura"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - reducir velocidad de lectura"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - aumentar volumen de lectura (puede haber distorsión )"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Presione cualquier tecla para salir de la ayuda..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Este libro no contiene audio."
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Por favor esperar... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "¿Qué busca?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Ir a tiempo específico (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Versión %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Uso: %s [manual_con_una_Daisy-estructura] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_dispositivo] [-d pulseaudio_sonido_dispositivo]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "No se puede leer /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Un analizador para escuchar Daisy CD con Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Explorando por un Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "No se encontró DAISY CD o Audio-cd"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "No hay Daisy CD en el unidad."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Se ha encontrado un CD de audio."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Coger títulos de freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Versión %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Versión %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "'h' para ayuda"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "No se encontraron artículos. Pruebe la opción \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "No se encontraron artículos. Pruebe la opción \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "No se puede leer /proc/asound/cards"
diff --git a/po/fi.gmo b/po/fi.gmo
index aea7958..06818ba 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 1a84737..59b07c6 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2017-06-19 17:45+0200\n"
"Last-Translator: Jani Kinnunen <janikinnunen340@gmail.com>\n"
"Language-Team: Jani Kinnunen <janikinnunen340@gmail.com>\n"
@@ -31,275 +31,270 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Yritä pelata tätä kirjaa daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Ei voida lukea tyyppiä: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Siirry sivunumeroon:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Odota..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Valitse äänikortti:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Ei voi lukea %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Tässä kirjassa ei ole ääntä. Käytä toistamiseen eBook-speakeria"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Kohteita ei löytynyt. Kokeile valitsinta \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Kohteita ei löytynyt. Kokeile valitsinta \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "Saat ohjeita painamalla 'h' -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d sivua"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "taso: %d / %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "kokonaiskesto: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Seuraavat komennot ovat käytettävissä tässä versiossa:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "nuoli alas,2 - siirrä kohdistin seuraavaan kohteeseen"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "nuoli ylös,8 - siirrä kohdistin edelliseen kohteeseen"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "nuoli oikealle,6 - siirry seuraavaan virkkeeseen"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "nuoli vasemmalle,4 - siirry edelliseen virkkeeseen"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page down,3 - näytä seuraava sivu"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page up,9 - näytä edellinen sivu"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - aloita toisto"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "välilyönti,0 - pysäytä/jatka toistoa"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - toista normaalilla nopeudella"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Siirry seuraavalle sivulle painamalla jotain näppäintä..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - etsi nimekettä"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - tallenna nykyinen kohde levylle"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - vähennä toistonopeutta"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr ""
"e,. - poistu daisy-playerista, lisää kirjanmerkki ja poista levy asemasta"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - etsi tällä hetkellä toistettava kohde ja siirrä kohdistin sen "
"kohdalle"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - siirry määrättyyn aikaan tässä kappaleessa (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - siirry määrättyyn aikaan tässä kohteessa (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - siirry sivulle"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - näytä tämä ohje"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - toista vain nykyinen kohde"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - vaihda seuraavalle tasolle"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - vaihda edelliselle tasolle"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - etsi eteenpäin"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - etsi taaksepäin"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - valitse seuraava äänilaite kappaleen toistamiseen"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - lisää kirjanmerkki"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - poistu daisy-playerista ja lisää kirjanmerkki"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - keskeytä toisto"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - lisää toistonopeutta"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - vähennä toiston äänenvoimakkuutta"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - lisää toiston äänenvoimakkuutta (varo leikkautumista)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Poistu ohjeesta painamalla jotain näppäintä..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Tässä kirjassa ei ole ääntä. Käytä toistamiseen eBook-speakeria"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Odota... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Mitä haluat etsiä?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Siirry aikaan (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - versio %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Käyttö: %s [Daisy-kirjan_hakemisto] | [Daisy-kirjojen_arkisto]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom-laite] [-d pulseaudio-äänilaite]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Liitoskohtaa /proc/mounts ei voi lukea."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Jäsennin Daisy-CD-levyjen toistamiseen Linuxissa"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Etsitään Daisy-CD:tä..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "DAISY- tai ääni-CD:tä ei löytynyt"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Asemassa ei ole Daisy-CD:tä."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Löytyi ääni-CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Hae kappaleiden nimet freedb.freedb.org:ista..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - versio %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - versio %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Saat ohjeita painamalla 'h'"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Kohteita ei löytynyt. Kokeile valitsinta \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Kohteita ei löytynyt. Kokeile valitsinta \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Ei voi lukea /proc/asound/cards"
diff --git a/po/fr.gmo b/po/fr.gmo
index 742160a..bb5a00a 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index abe7819..82676ca 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2018-03-03 15:06+0200\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -30,274 +30,269 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Veuillez essayer de lire ce livre avec daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Je ne sais pas lire le type: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
-msgstr "Aller à la page numéro:"
+msgstr "Aller à la page numéro:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
-msgstr "S'il vous plaît, attendez..."
+msgstr "S'il vous plaît, attendez..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
-msgstr "Sélectionnez une carte son:"
-
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
+msgstr "Sélectionnez une carte son:"
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Je ne sais pas lire ceci %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Ce livre ne contient pas de piste audio. Lire avec eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Aucun élément trouvé. Essayez l'option \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Aucun élément trouvé. Essayez l'option \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' pour l'aide"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d pages"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "niveau: %d de %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
-msgstr "durée totale: %02d:%02d:%02d"
+msgstr "durée totale: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Ces commandes sont disponibles dans cette version:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
-msgstr "curseur bas,2 - déplacer le curseur vers l'élément suivant"
+msgstr "curseur bas,2 - déplacer le curseur vers l'élément suivant"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
-msgstr "curseur haut,8 - déplacer le curseur vers l'élément précédent"
+msgstr "curseur haut,8 - déplacer le curseur vers l'élément précédent"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
-msgstr "curseur droit,6 - aller à la phrase suivante"
+msgstr "curseur droit,6 - aller à la phrase suivante"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
-msgstr "curseur gauche,4 - revenir à la phrase précédente"
+msgstr "curseur gauche,4 - revenir à la phrase précédente"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page bas,3 - afficher la page suivante"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
-msgstr "page haut,9 - afficher la page précédente"
+msgstr "page haut,9 - afficher la page précédente"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
-msgstr "enter - lancer l'écoute"
+msgstr "enter - lancer l'écoute"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
-msgstr "espace,0 - pause/poursuivre l'écoute"
+msgstr "espace,0 - pause/poursuivre l'écoute"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
-msgstr "home,* - écouter éla vitesse normale"
+msgstr "home,* - écouter à la vitesse normale"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
-msgstr "Appuyez sur une touche pour aller à la page suivante..."
+msgstr "Appuyez sur une touche pour aller à la page suivante..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - chercher un label"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
-msgstr "d - sauvegarder l'élément courant sur disque dur"
+msgstr "d - sauvegarder l'élément courant sur disque dur"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
-msgstr "D,- - réduire la vitesse d'écoute"
+msgstr "D,- - réduire la vitesse d'écoute"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
-msgstr "e,. - quitter daisy-player, placer un marqueur et éjecter"
+msgstr "e,. - quitter daisy-player, placer un marqueur et éjecter"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
-"f - trouver l'élément en cours de diffusion et y placer le curseur"
+"f - trouver l'élément en cours de diffusion et y placer le curseur"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - aller au temps (MM:SS) dans le morceau"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
-msgstr "g - aller au temps (MM:SS) dans cet élément"
+msgstr "g - aller au temps (MM:SS) dans cet élément"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
-msgstr "G - aller à la page numéro"
+msgstr "G - aller à la page numéro"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - afficher cette page d'aide"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
-msgstr "j,5 - écouter uniquement l'élément courant"
+msgstr "j,5 - écouter uniquement l'élément courant"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - aller au niveau suivant"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
-msgstr "L - remonter au niveau précédent"
+msgstr "L - remonter au niveau précédent"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - rechercher plus loin"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - rechercher avant"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
-msgstr "o - sélectionner la carte son suivante"
+msgstr "o - sélectionner la carte son suivante"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - placer un marqueur"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - quitter daisy-player et placer un marqueur"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
-msgstr "s - arrêter l'écoute"
+msgstr "s - arrêter l'écoute"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
-msgstr "U,+ - accélérer la vitesse d'écoute"
+msgstr "U,+ - accélérer la vitesse d'écoute"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
-msgstr "v,1 - baisser le volume d'écoute"
+msgstr "v,1 - baisser le volume d'écoute"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
-msgstr "V,7 - remonter le volume d'écoute"
+msgstr "V,7 - remonter le volume d'écoute"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Appuyez sur une touche pour quitter l'aide..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Ce livre ne contient pas de piste audio. Lire avec eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Un instant svp... -----------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Que recherchez-vous?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Aller au temps (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Version %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr ""
-"Utilisation: %s [-l langue] [répertoire avec structure Daisy] | [archive "
+"Utilisation: %s [-l langue] [répertoire avec structure Daisy] | [archive "
"livre Daisy]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
-msgstr "[-c unité de lecture cdrom] [-d unité de son pulseaudio]"
+msgstr "[-c unité de lecture cdrom] [-d unité de son pulseaudio]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Je ne sais pas lire /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Une application pour écouter des CD's Daisy sous Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
-msgstr "Détection d'un CD Daisy..."
+msgstr "Détection d'un CD Daisy..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
-msgstr "Pas de CD Daisy ou audio détecté..."
+msgstr "Pas de CD Daisy ou audio détecté..."
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Pas de CD Daisy dans le lecteur."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
-msgstr "CD audio détecté."
+msgstr "CD audio détecté."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Rapatriement des titres par freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Version %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Appuyez sur 'h' pour obtenir de l'aide"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Aucun élément trouvé. Essayez l'option \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Aucun élément trouvé. Essayez l'option \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Je ne sais pas lire /proc/asound/cards"
diff --git a/po/hu.gmo b/po/hu.gmo
index c900fea..8b7808d 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index 15c7201..8da403d 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-12-09 11:06+0200\n"
"Last-Translator: JimmiXzSq <jimos45812rt1@hotmail.com>\n"
"Language-Team: JimmiXzSq <jimos45812rt1@hotmail.com>\n"
@@ -31,279 +31,274 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr ""
"Kérjük, próbálja meg játszani ezt a könyvet a daisy-player segítségével"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Nem lehet olvasni a típus: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Ugrás az oldalszámra:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Kérlek várj..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Válasszon hangkártya:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "A(z) %s nem olvasható"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Ez a könyv nincs hang. Játszani ezt a könyvet eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "jicLbQdR"
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "iihdprvBoJep"
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "h =segítség"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "Oldalak száma: %d"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "%d szint a %d szintből"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "Összidő: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "A következő parancsok érhetők el ebben a verzióban:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "Le,2 - a kurzor mozgatása a következő elemre"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "Fel,8 - a kurzor mozgatása az előző elemre"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "Jobbra,6 - a következő kifejezés kihagyása"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "Balra,4 - az előző kifejezés kihagyása"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "PAGEDOWN,3 - a következő oldal megtekintése"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "PAGEUP,9 - az előző oldal megtekintése"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "ENTER - a lejátszás megkezdése"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "SZÓKÖZ,0 - a lejátszás szüneteltetése és folytatása"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "HOME,* - lejátszás normál sebességgel"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "A következő oldalra lépéshez nyomjon meg egy billentyűt..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - egy címke keresése"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - az aktuális elem tárolása a lemezre"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - lejátszás sebességének csökkentése"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - kilép daisy-player, beletenni egy könyvjelzőt, és kiadja"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - keresse meg az éppen lejátszott elemet és helyezze a kurzort"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - ugrás egy megadott időre a zeneszámon belül"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - ugrás egy megadott időre a zeneszámon belül"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr ""
"G - ugrás egy megadott oldalra, ha a Daisy könyv tartalmaz "
"oldalszámokat"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - a súgó megjelenítése"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - az aktuális elem újbóli lejátszása"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - váltás a következő szintre"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - váltás az előző szintre"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - a következő kifejezés keresése"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - az előző kifejezés keresése"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - a következő hangeszköz kiválasztása"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - könyvjelző elhelyezése"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - kilép daisy-player és helyezzük egy könyvjelzőt"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - a lejátszás leállítása"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - lejátszás sebességének növelése"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - csökkentheti lejátszási hangerő"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - növelése lejátszás mennyiség (vigyázat a túlvezérlés)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "A súgó elhagyásához nyomjon meg egy billentyűt..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Ez a könyv nincs hang. Játszani ezt a könyvet eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Kérem várjon..."
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Mit keres?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Ugrás egy megadott időtartamra:"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - %s verzió %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr ""
"Használat: %s [Daisy szerkezetet tartalmazó könyvtár] | "
"[Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c CD-rom eszköz] [-d pulseaudio hangeszköz]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "A /proc csatolások nem olvashatók."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr ""
"Egy feldolgozó program, melynek segítségével Daisy könyveket játszhat "
"le Linux alatt"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "DAISY CD keresése..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Nem található DAISY CD vagy audio CD a meghajtóban."
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "A meghajtóban nincs Daisy lemez."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Az audio CD megtalálva."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "A számcímek lekérése a freedb.freedb.org kiszolgálóról..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - %s verzió - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - %s verzió - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "A segítségért nyomja meg a H billentyűt."
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "iihdprvBoJep"
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "jicLbQdR"
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "A /proc/asound/cards fájl nem olvasható."
diff --git a/po/ml.gmo b/po/ml.gmo
index 1ee83d2..b8f7098 100644
--- a/po/ml.gmo
+++ b/po/ml.gmo
Binary files differ
diff --git a/po/ml.po b/po/ml.po
index c4d979d..8bb2853 100644
--- a/po/ml.po
+++ b/po/ml.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2015-02-17 17:06+0200\n"
"Last-Translator: Sreelakshmi R V <sreelakshmi.rv@gmail.com>\n"
"Language-Team: Sreelakshmi R V <sreelakshmi.rv@gmail.com>\n"
@@ -30,271 +30,263 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr ""
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr ""
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "പേജ് നമ്പറിലേക്ക് പോവുക"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr ""
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "ഒരു സൌണ്ട്കാർഡ് തിരഞ്ഞെടുക്കുക :"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "%s വായിക്കാൻ കഴിയുന്നില്ല "
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "ഈ പുസ്തകത്തിന് ഓഡിയോ ലഭ്യമല്ല. eBook-speaker ഉപയോഗിചു ഇത് കേൾക്കാവുന്നതാണ് ."
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr ""
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr ""
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "സഹായത്തിനായി 'h' അമർത്തുക "
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d പേജുകൾ"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "ലെവൽ : %d ൽ %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "ആകെ ദൈർഘ്യം : %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "ഈ കമാൻഡുകൾ ഈ പതിപ്പിൽ ലഭ്യമാണ് :"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor down,2 - അടുത്ത ഇനത്തിലേക്ക് കഴ്സർ നീക്കുക"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor up ,8 - മുൻ ഇനത്തിലേക്ക് കഴ്സർ നീക്കുക"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor right ,6 - അടുത്ത പദത്തിലേക്ക് കടക്കുക"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor left,4 - മുമ്പത്തെ പദത്തിലേക്ക് കടക്കുക"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - അടുത്ത പേജ് കാണുക "
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - മുൻ പേജ് കാണുക"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - ഫയൽ പ്ലേ ചെയ്തു തുടങ്ങുക"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "space ,0 - പ്ലേ ചെയ്തു കൊണ്ടിരിക്കുന്ന ഫയൽ നിർത്തുക / പുനരാരംഭിക്കുക"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home ,* - സാധാരണ വേഗത്തിൽ പ്ലേ ചെയ്യുക"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "അടുത്ത പേജിനു വേണ്ടി ഏതെങ്കിലും കീ അമർത്തുക ..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - ലേബൽ തിരയുക"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - നിലവിലെ ഇനം ഡിസ്കിൽ സൂക്ഷിക്കുക"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - പ്ലേ ചെയുന്ന വേഗത കുറയ്ക്കുക"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - ഫയൽ ബുക്ക്‌മാർക്ക്‌ ചെയ്തു daisy-player ക്ലോസ് ചെയ്യുക "
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - ഇപ്പോൾ പ്ലേ ചെയ്യുന്ന ഐറ്റം കണ്ടെത്തി അതിൽ കർസർ വയ്ക്കുക"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - ഈ ഗാനത്തിന്റെ (MM:SS) സമയത്തിലേക്ക് പോകുക"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - ഈ ഇനത്തിന്റെ (MM:SS) സമയത്തിലേക്ക് പോകുക"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - പേജ് നമ്പറിലേക്ക് പോകുക"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - ഈ ഹെല്പ് ഫയൽ പ്രദർശിപ്പിക്കുക"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - നിലവിലെ ഇനം പ്ലേ ചെയ്യുക"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - അടുത്ത ലെവലിലേക്ക് മാറുക"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - മുൻ നിലയിലേക്ക്‌ മാറുക"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - മുന്നിലേക്ക് തിരയുക "
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - പുറകോട്ടു്തിരയുക"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - അടുത്ത സൌണ്ട് ഔട്പുട്ട് ഉപകരണം തിരഞ്ഞെടുക്കുക "
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - ഒരു ബുക്ക്മാർക്ക് സ്ഥാപിക്കുക"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - ഫയൽ ബുക്ക്‌മാർക്ക്‌ ചെയ്തു daisy-player ക്ലോസ് ചെയ്യുക"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - ഫയൽ പ്ലേ ചെയ്യുന്നത് നിർത്തുക"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U , + - പ്ലേ ചെയുന്ന വേഗത വർധിപിക്കുക"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - പ്ലേബാക്ക് ശബ്ദം കുറയ്ക്കുക"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - പ്ലേബാക്ക് ശബ്ദം കൂട്ടുക"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "സഹായത്തിനായി ഏതെങ്കിലും കീ അമർത്തുക ..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "ഈ പുസ്തകത്തിന് ഓഡിയോ ലഭ്യമല്ല. eBook-speaker ഉപയോഗിചു ഇത് കേൾക്കാവുന്നതാണ് ."
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "കാത്തിരിക്കൂ... --------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "നിങ്ങൾ എന്താണ് തിരയുന്നത്"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "സമയം (MM:SS) പോവുക :"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - പതിപ്പ് %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "ഉപയോഗം: %s [ഡെയിസി_ഘടനയിലുള്ള_ഡയറക്ടറി | ഡെയിസി_പുസ്തക_ശേഖരം ]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c സിഡി റോം ] [-d pulseaudio_sound_device]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "/proc/mounts ഫയൽ വായിക്കുവാൻ സാധിക്കുന്നില്ല "
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "ഡെയിസി സിഡി ലിനക്സിൽ പ്രവർത്തിപ്പിക്കുവനുള്ള സംവിധാനം"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "ഡെയിസി സിഡി യ്ക്കായി തിരയുന്നു"
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "ഡ്രൈവിൽ ഓഡിയോ സി ഡി യോ ഡെയിസി സി ഡി യോ ലഭ്യമല്ല"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "ഡ്രൈവിൽ ഡെയ്സി സിഡി ഇല്ല"
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "ഒരു ഓഡിയോ - സിഡി കണ്ടെത്തി "
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr ""
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
msgstr "Daisy-player - പതിപ്പ് %s"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "സഹായത്തിനായി 'h' അമർത്തുക "
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr ""
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr " /proc/asound/cards വായിക്കാൻ കഴിയുന്നില്ല"
diff --git a/po/nb.gmo b/po/nb.gmo
index f488868..31363d1 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index 15ff5df..eca79e7 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Ellen <ellenrohaan@hotmail.com>\n"
"Language-Team: Ellen <ellenrohaan@hotmail.com>\n"
@@ -31,275 +31,270 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Vennligst prøv å spille denne boken med daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Kan ikke lese type: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Gå til side nummer:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Vennligst vent..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Velg et lydkort:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Kan ikke lese %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Denne boken har ingen lyd. Spill denne boken med eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Ingen produkter funnet. Prøv alternativet \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Ingen produkter funnet. Prøv alternativet \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' for hjelp -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d sider"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "nivå: %d of %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "total lengde: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Disse kommandoer er tilgjengelig i denne versjon:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "markør ned,2 - flytt markør til neste element"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "markør opp,8 - flytt markør til forrige element"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "markør til høyre,6 - hopp over til neste settning"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "markør til venstre,4 - hopp over til forrige settning"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - viser neste side"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - viser forrige side"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - begynner å spille"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "space,0 - pauserer/gjennopptar spilling"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - spiller på normal tempo"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Trykk en tilfeldig knapp for neste side..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - søker en etikett"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - oppbevarer gjeldende element til disk"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D ,- - reduserer spille tempo"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr ""
"e,. - slutte daisy-player, plassere et bokmerke og løse ut"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - finner den spillende elementen og plasserer "
"markørender"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - går til tidspunkt i denne sangen (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - går til tidspunkt i denne element (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - går til sidenummer (hvis det finnes)"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - viser hjelp"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - spiller gjeldende element"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - går til neste nivå"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - gå til forrige nivål"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - søker framover"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - søker omvendt"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - selekterer neste lydkart"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - lager en bokmerke"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - avslutter daisy-player og lager en bokmerke"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - stopper å spille"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - øker spille tempo"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - redusere avspillingsvolum"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - øke avspillingsvolumet (pass av rel)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Trykk en tilfeldig knapp for å forlate hjelp..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Denne boken har ingen lyd. Spill denne boken med eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Vennligst vent.. -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Hva søker du?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Gå til tidspunktet (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Versjon %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Forbruk: %s [mappe_med_Daisy-struktur] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_apparat] [-d pulseaudio_lyd_apparat]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Kan ikke lese /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Et program for å spille Daisy CD's med Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Søker etter en Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Ingen DAISY-CD eller Lyd-cd funnet"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Ingen Daisy-cd i spillern."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Funnet en Lyd-CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Henter titler fra freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Versjon %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Versjon %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Trykk 'h' for hjelp"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Ingen produkter funnet. Prøv alternativet \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Ingen produkter funnet. Prøv alternativet \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Kan ikke lese /proc/asound/cards"
diff --git a/po/nl.gmo b/po/nl.gmo
index ccd9048..cad8831 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index a97760c..0157b0a 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2013-01-29 15:06+0200\n"
"Last-Translator: Jos Lemmens <jos@jlemmens.nl>\n"
"Language-Team: Jos Lemmens <jos@jlemmens.nl>\n"
@@ -30,324 +30,323 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Probeer dit boek met daisy-player af te spelen"
# 33
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Kan het type %d niet lezen"
# 15
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Ga naar pagina nummer:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Even wachten A.U.B...."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Selecteer een geluikdskaart:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-"Controleer of het pakket \"pulseaudio-utils\" op uw systeem geinstalleerd is."
-
# 33
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Kan %s niet lezen"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Dit boek heeft geen audio. Speel dit boek af met eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Geen items gevonden. Probeer optie \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Geen items gevonden. Probeer optie \"-O\"."
-
# 5
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' voor hulp -"
# 1
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d pagina's"
# 3
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "niveau: %d - %d"
# 4
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "totale lengte %02d:%02d:%02d"
# 38
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Deze commando's zijn beschikbaar in deze versie"
# 41
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor omlaag,2 - verplaats de cursor naar het volgende item"
# 44
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor omhoog,8 - verplaats de cursor naar het vorige item"
# 43
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor rechts,6 - spring naar de volgende frase"
# 42
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor links,4 - spring naar de vorige frase"
# 57
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - toon de volgende pagina"
# 58
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - toon de vorige pagina"
# 46
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - start afspelen"
# 62
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "spatie,0 - pauze/vervolg het afspelen"
# 50
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - speel af op normale snelheid"
# 23
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Druk op een toets voor de volgende pagina..."
# 32
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - zoek label"
# 45
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - sla huidige item op op schijf"
# 11
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - verlaag afspeel snelheid"
# 59
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - stop daisy-player,plaats een boekenlegger en eject"
# 47
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - vindt het huidige spelende item en plaats de cursor daar"
# 48
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - ga naar tijd in dit lied"
# 48
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - ga naar tijd in dit item"
# 48
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - ga naar pagina nummer"
# 49
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - toon deze help-pagina"
# 51
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - speel alleen dit item af"
# 52
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - schakel naar het volgende niveau"
# 16
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - schakel naar het vorige niveau"
# 55
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr "m - demp geluidsweergave aan/uit"
# 53q
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - zoek voorwaarts"
# 18
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - zoek achteruit"
# 55
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - selecteer de volgende geluidskaart"
# 56
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - plaats een boekenlegger"
# 59
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - stop daisy-player en plaats een boekenlegger"
# 60
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - stop het afspelen"
# 29
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - verhoog afspeel snelheid"
# 11
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - verlaag het volume"
# 29
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - verhoog het volume (pas op voor oversturing)"
# 37
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Druk op een toets om dit help-scherm te verlaten..."
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Dit boek heeft geen audio. Speel dit boek af met eBook-speaker"
+
# 20
-#: src/daisy-player.c:853
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Even geduld a.u.b.... ------------------"
# 30
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Wat zoekt u?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Ga naar tijd (MM:SS):"
# 13
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Versie %s %s"
# 39
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Gebruik: %s [map met een Daisy-structuur] | [Daisy_boek_archief]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_apparaat] [-d pulseaudio_geluids_apparaat]"
# 34
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Kan /proc/mounts niet lezen."
# 6
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Een programma om Daisy CD's af te spelen"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Zoeken naar een Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Geen DAISY-CD of Audio-CD gevonden"
# 36
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Geen daisy-cd in speler."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Een Audio-CD gevonden."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Haal de titels op bij freedb.freedb.org..."
# 13
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Versie %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Versie %s - (C)2019 J. Lemmens"
# 22
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Druk op'h' voor hulp"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Geen items gevonden. Probeer optie \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Geen items gevonden. Probeer optie \"-N\"."
+
+#~ msgid "Be sure the package pulseaudio-utils is installed onto your system."
+#~ msgstr ""
+#~ "Controleer of het pakket \"pulseaudio-utils\" op uw systeem geinstalleerd "
+#~ "is."
+
# 34
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Kan /proc/asound/cards niet lezen."
diff --git a/po/pl.gmo b/po/pl.gmo
index 1d7189c..eeb1de6 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 7fd1ea2..ac23972 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -21,7 +21,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2018-02-17 11:06+0200\n"
"Last-Translator: Barneyxcq <jimosa4xf2@hotmail.com>\n"
"Language-Team: Barneyxcq <jimosa4xf2@hotmail.com>\n"
@@ -30,272 +30,267 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 16bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Staraj się zagrać w tę książkę z daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Nie można odczytać typ: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Idź do strony numer:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Proszę czekać..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Wybierz kartę dźwiękową:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Nie można odczytać %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Ta książka nie ma dźwięku. Zagraj w tę książkę z eBook-speakerem"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Nie znaleziono żadnych produktów. Spróbuj opcji \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Nie znaleziono żadnych produktów. Spróbuj opcji \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' o pomoc -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d strony"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "Poziom: %d z %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "Długość całkowita: %02d:%02d:%02d"
# msgstr "Długość całkowita: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Te polecenia są dostępne w tej wersji:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "Kursor w dół,2 - przesuń kursor do następnego elementu"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "Kursor w górę,8 - przesuń kursor do poprzedniej pozycji"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "Kursor w prawo,6 - przejście do następnej frazy"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "Kursor w lewo,4 - przejście do poprzedniej frazy"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - zobacz następną stronę"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - zobacz poprzednią stronę"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "Enter - rozpoczęcie odtwarzania"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "Space,0 - zatrzymanie odtwarzania"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "Home,* - odtwarzanie na standardowej prędkości"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Naciśnij dowolny klawisz na następnej stronie..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - sprawdź etykietę"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - zapisz aktualną pozycję na dysku"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - zmniejszenie prędkości odtwarzania"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - zamknij daisy-player, umieść zakładkę i wysunąć"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - znajdź element aktualnie odtwarzany i umieść tam kursor"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - idź do czasu odtwarzania tej pozycji (mm:ss)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - idź do czasu odtwarzania tej pozycji (mm:ss)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - przejdź do strony numer (jeśli jest)"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - pomoc"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - po prostu odtwarza aktualną pozycję"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - przejście do następnego poziomu"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "l - przejście do poprzedniego poziomu"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - wyszukiwanie w przód"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "n - wyszukiwanie do tyłu"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - wybierz wyjściowe urządzenie dźwiękowe"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - umieść zakładkę"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - wyjście z daisy-playera i umieszczenie zakładki"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - zatrzymanie odtwarzania"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - zwiększenie prędkości odtwarzania"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "V,1 - zmniejszenie głośności odtwarzania"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - zwiększaj głośność odtwarzania (uważaj na przycinanie)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Naciśnij dowolny klawisz, aby opuścić pomoc..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Ta książka nie ma dźwięku. Zagraj w tę książkę z eBook-speakerem"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Proszę czekać... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Czego szukasz?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Idź do czasu (mm:ss):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Wersja %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Użycie: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_device] [-d pulseaudio_sound_device]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Nie można odczytać /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Parser odtwarza z Daisy CD's i Linuksem"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Skanowanie Daisy CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "To nie jest Daisy-CD ani Audio-CD."
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "W napędzie nie ma Daisy-CD."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Znaleziono Audio-CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Pobierz tytuły z freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Wersja %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Wersja %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Naciśnij 'h' jeśli potrzebujesz pomocy"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Nie znaleziono żadnych produktów. Spróbuj opcji \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Nie znaleziono żadnych produktów. Spróbuj opcji \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Nie można odczytać /proc/asound/cards"
diff --git a/po/pt.gmo b/po/pt.gmo
index 4f12661..eee5fc7 100644
--- a/po/pt.gmo
+++ b/po/pt.gmo
Binary files differ
diff --git a/po/pt.po b/po/pt.po
index aa33c06..e520218 100644
--- a/po/pt.po
+++ b/po/pt.po
@@ -23,7 +23,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2014-08-26 15:45+0200\n"
"Last-Translator: Thais Rizzi <thais.rizzi@gmail.com>\n"
"Language-Team: Thais Rizzi <thais.rizzi@gmail.com>\n"
@@ -32,272 +32,267 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Por favor, tente jogar este livro com o daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Não conseguer ler tipo: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Vá para a página número:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Por favor, espere..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Selecione uma placa de som:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Não consegue ler %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Este livro não tem áudio. Reproduzir este livro com eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Nenhum item encontrado. Tente a opção \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Nenhum item encontrado. Tente a opção \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' para ajuda -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d páginas"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "nível: %d de %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "comprimento total: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Esse comandos estão disponíveis nessa versão:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "cursor para baixo,2 - move o cursor para o próximo item"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "cursor para cima,8 - move o cursor para o item anterior"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "cursor para direita,6 - pula para a proxima frase"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "cursor para esquerda,4 - pula para a frase anterior"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "page-down,3 - ver página seguinte"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "page-up,9 - ver página anterior"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - comece a reprodução"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "espaço,0 - pausa/ resumir reprodução"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - reproduzir em velocidade normal"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Pressione qualquer tecla para a próxima pagina..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - procure por uma etiqueta"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - armazena o item atual no disco"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - diminui a velocidade da reprodução"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr "e,. - sair do daisy-player, colocar um marcador e ejetar"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - procura o item atual de reprodução e colocar o cursor lá"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - vai para determinado tempo nessa musica (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - vai para determinado tempo nessa item (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - vai para o número de pagina (se tiver algum)"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - dê essa ajuda"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - só reproduza o item atual"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - mude para o proximo nível"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - mude para o nível anterior"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - procure a frente "
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - procure para trás"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - selecione o próximo dispositivo de saída de som"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - coloque o marcador"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - saia do daisy-player e coloque o marcador"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - pare de reproduzir"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - aumente a velocidade de reprodução"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - diminuir o volume de reprodução"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - aumentar o volume de reprodução (cuidado com Clipping)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Aperte qualquer tecla para sair da ajuda..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Este livro não tem áudio. Reproduzir este livro com eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Por favor espere ... -------------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "O que você procura?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Vá para o tempo (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Versão %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Uso: %s [diretório_com_estrutura_Daisy] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[ -c cdrom_dispositivo] [-d pulseaudio_dispositivo_de_som] [-n | -y]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Não consegue ler /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Um analisador para reproduzir Daisy CD's com o Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Procurando por um CD Daisy..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Nenhum CD DAISY ou CD de áudio identificado"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Nenhum CD Daisy no drive."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "CD de áudio identificado."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Pegar títulos do freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Versão %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Versão %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Pressione 'h' para ajuda"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Nenhum item encontrado. Tente a opção \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Nenhum item encontrado. Tente a opção \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Não consegue ler /proc/asound/cards"
diff --git a/po/sl.gmo b/po/sl.gmo
index 4ad92ca..8eea418 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index b9d045d..db75859 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2015-02-17 17:06+0200\n"
"Last-Translator: Tadej Čepin <tadej.cepin@gmail.com>\n"
"Language-Team: Tadej Čepin <tadej.cepin@gmail.com>\n"
@@ -31,274 +31,269 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Prosimo, poskusite igrati to knjigo z daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Ne morem prebrati zvrsti: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Pojdi na stran s številko:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Prosim počakaj..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Izberi zvočno kartico:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Ne morem prebrati %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Ta knjiga nima zvoka. Igraj to knjigo z eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Ni elementov. Poskusite z možnostjo \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Ni elementov. Poskusite z možnostjo \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' za pomoč -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d strani"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "nivo: %d od %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "skupna dolžina: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "V tej različici so na voljo naslednji ukazi:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "puščica navzdol,2 - premakni utripalko na naslednji element"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "puščica navzgor,8 - premakni utripalko na predhodni element"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "puščica desno,6 - skoči na naslednjo frazo"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "puščica levo,4 - skoči na predhodno frazo"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "stran-dol,3 - pokaži naslednjo stran"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "stran-gor,9 - pokaži predhodno stran"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - začni predvajanje"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "preslednica,0 - zaustavi/nadaljuj predvajanje"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "domov,* - predvajaj z običajno hitrostjo"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Za prehod na naslednjo stran pritisni katerokoli tipko..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - poišči etiketo"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - shrani trenutni element na disk"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - zmanjšaj hitrost predvajanja"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr ""
"e,. - izhod iz predvajalnika DAISY, nastavi zaznamek in izvrzi "
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr ""
"f - najdi trenutno predvajan predmet in nanj postavi utripalko"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - pojdi na čas v tej skladbi (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - pojdi na čas v tej skladbi (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - pojdi na stran s številko"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - podaj to pomoč"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - samo predvajaj trenutni element"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - preklopi na naslednji nivo"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - preklopi na prejšnji nivo"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - išči naprej"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - išči nazaj"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - izberi naslednjo izhodno zvočno napravo"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - postavi zaznamek"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - zapusti predvajalnik DAISY in postavi zaznamek"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - zaustavi predvajanje"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - povečaj hitrost predvajanja"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - zmanjša predvajanja glasnosti"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - povečanje predvajanja volumen (pazi Clipping)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Za izhod iz menija pomoči pritisni katerokoli tipko..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Ta knjiga nima zvoka. Igraj to knjigo z eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Prosim počakaj... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Kaj iščeš?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Pojdi na čas (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Verzija %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Uporaba: %s [imenik_s_strukturo-DAISY] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_naprava] [-d pulseaudio_zvočna_naprava]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Ne morem prebrati /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Razčlenjevalnik, ki predvaja DAISY CD-je na Linux-u"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Iščem DAISY CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Nisem našel nobenega DAISY CD-ja ali zvočnega CD-ja."
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "V pogonu ni DAISY CD-ja."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Našel sem zvočni CD."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Pridobi naslove iz freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Verzija %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Verzija %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Za pomoč pritisni tipko 'h'"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Ni elementov. Poskusite z možnostjo \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Ni elementov. Poskusite z možnostjo \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Ne morem prebrati /proc/asound/cards"
diff --git a/po/sv.gmo b/po/sv.gmo
index 71a1ff1..436cd97 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 7330ca0..ccb34a3 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -22,7 +22,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gettext 0.11.2\n"
"Report-Msgid-Bugs-To: <jos@jlemmens.nl>\n"
-"POT-Creation-Date: 2018-12-19 09:16+0100\n"
+"POT-Creation-Date: 2019-05-13 14:36+0200\n"
"PO-Revision-Date: 2014-12-03 15:06+0200\n"
"Last-Translator: Kim Nilsson <kim.nilsson@no-substitute.com>\n"
"Language-Team: Kim Nilsson <kim.nilsson@no-substitute.com>\n"
@@ -31,273 +31,268 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/common.c:244 src/common.c:426
+#: src/common.c:31 src/common.c:295 src/common.c:498
msgid "Please try to play this book with daisy-player"
msgstr "Försök att spela den här boken med daisy-player"
-#: src/common.c:758
+#: src/common.c:833
#, c-format
msgid "Cannot read type: %d"
msgstr "Kan inte läsa typ: %d"
-#: src/common.c:838
+#: src/common.c:913
msgid "Go to page number:"
msgstr "Gå till sidnummer:"
-#: src/common.c:856
+#: src/common.c:931
msgid "Please wait..."
msgstr "Vänta..."
-#: src/common.c:931
+#: src/common.c:1034
msgid "Select a soundcard:"
msgstr "Välj ett ljudkort:"
-#: src/common.c:938
-msgid "Be sure the package pulseaudio-utils is installed onto your system."
-msgstr ""
-
-#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:305 src/daisy3.c:54
-#: src/daisy3.c:252 src/daisy3.c:322 src/daisy3.c:418 src/daisy3.c:499
-#: src/daisy3.c:821 src/daisy3.c:912 src/daisy3.c:991 src/daisy3.c:1231
-#: src/daisy3.c:1364 src/daisy-player.c:767 src/daisy-player.c:1736
-#: src/daisy-player.c:1765 src/daisy-player.c:2051 src/daisy-player.c:2218
+#: src/daisy2.02.c:49 src/daisy2.02.c:144 src/daisy2.02.c:303
+#: src/daisy-player.c:782 src/daisy-player.c:1758 src/daisy-player.c:1787
+#: src/daisy-player.c:2090 src/daisy-player.c:2255
#, c-format
msgid "Cannot read %s"
msgstr "Kan ej läsa %s"
-#: src/daisy3.c:1181 src/daisy-player.c:834 src/daisy-player.c:1219
-msgid "This book has no audio. Play this book with eBook-speaker"
-msgstr "Den här boken har inget ljud. Spela denna bok med eBook-speaker"
-
-#: src/daisy3.c:1198
-msgid "No items found. Try option \"-N\"."
-msgstr "Inga föremål hittades. Prova alternativet \"-N\"."
-
-#: src/daisy3.c:1343
-msgid "No items found. Try option \"-O\"."
-msgstr "Inga föremål hittades. Prova alternativet \"-O\"."
-
-#: src/daisy-player.c:317
+#: src/daisy-player.c:320
msgid "'h' for help -"
msgstr "'h' för hjälp -"
-#: src/daisy-player.c:321
+#: src/daisy-player.c:324
#, c-format
msgid "%d pages"
msgstr "%d sidor"
-#: src/daisy-player.c:326
+#: src/daisy-player.c:329
#, c-format
msgid "level: %d of %d"
msgstr "nivå: %d av %d"
-#: src/daisy-player.c:334
+#: src/daisy-player.c:337
#, c-format
msgid "total length: %02d:%02d:%02d"
msgstr "total längd: %02d:%02d:%02d"
-#: src/daisy-player.c:632
+#: src/daisy-player.c:637
msgid "These commands are available in this version:"
msgstr "Dessa kommando är tillgängliga i denna version:"
-#: src/daisy-player.c:636
+#: src/daisy-player.c:641
msgid "cursor down,2 - move cursor to the next item"
msgstr "pil ner,2 - gå till nästa rad"
-#: src/daisy-player.c:638
+#: src/daisy-player.c:643
msgid "cursor up,8 - move cursor to the previous item"
msgstr "pil upp,8 - gå till föregående rad"
-#: src/daisy-player.c:640
+#: src/daisy-player.c:645
msgid "cursor right,6 - skip to next phrase"
msgstr "pil höger,6 - hoppa till nästa fras"
-#: src/daisy-player.c:642
+#: src/daisy-player.c:647
msgid "cursor left,4 - skip to previous phrase"
msgstr "pil vänster,4 - hoppa til föregående fras"
-#: src/daisy-player.c:644
+#: src/daisy-player.c:649
msgid "page-down,3 - view next page"
msgstr "pgdn,3 - visa nästa sida"
-#: src/daisy-player.c:646
+#: src/daisy-player.c:651
msgid "page-up,9 - view previous page"
msgstr "pgup,9 - visa föregående sida"
-#: src/daisy-player.c:648
+#: src/daisy-player.c:653
msgid "enter - start playing"
msgstr "enter - börja spela"
-#: src/daisy-player.c:650
+#: src/daisy-player.c:655
msgid "space,0 - pause/resume playing"
msgstr "mellanslag,0 - pausa/starta igen"
-#: src/daisy-player.c:652
+#: src/daisy-player.c:657
msgid "home,* - play on normal speed"
msgstr "home,* - spela i normal hastighet"
-#: src/daisy-player.c:654
+#: src/daisy-player.c:659
msgid "Press any key for next page..."
msgstr "Tryck valfri tangent för nästa sida..."
-#: src/daisy-player.c:660
+#: src/daisy-player.c:665
msgid "/ - search for a label"
msgstr "/ - sök efter etikett"
-#: src/daisy-player.c:662
+#: src/daisy-player.c:667
msgid "d - store current item to disk"
msgstr "d - spara aktuell rad till fil"
-#: src/daisy-player.c:664
+#: src/daisy-player.c:669
msgid "D,- - decrease playing speed"
msgstr "D,- - sänk läshastigheten"
-#: src/daisy-player.c:666
+#: src/daisy-player.c:671
msgid "e,. - quit daisy-player, place a bookmark and eject"
msgstr ""
"e,. - stäng av daisy-player, spara ett bokmärke och knuffa ut CD:n"
-#: src/daisy-player.c:668
+#: src/daisy-player.c:673
msgid ""
"f - find the currently playing item and place the cursor there"
msgstr "f - hitta det aktuella spåret och vänta där"
-#: src/daisy-player.c:671
+#: src/daisy-player.c:676
msgid "g - go to time in this song (MM:SS)"
msgstr "g - gå till viss tid i detta spår (MM:SS)"
-#: src/daisy-player.c:674
+#: src/daisy-player.c:679
msgid "g - go to time in this item (MM:SS)"
msgstr "g - gå till viss tid i detta spår (MM:SS)"
-#: src/daisy-player.c:677
+#: src/daisy-player.c:682
msgid "G - go to page number"
msgstr "G - gå till sidnummer"
-#: src/daisy-player.c:679
+#: src/daisy-player.c:684
msgid "h,? - give this help"
msgstr "h,? - visa denna hjälp"
-#: src/daisy-player.c:681
+#: src/daisy-player.c:686
msgid "j,5 - just play current item"
msgstr "j,5 - bara spela aktuellt spår"
-#: src/daisy-player.c:683
+#: src/daisy-player.c:688
msgid "l - switch to next level"
msgstr "l - byta till nästa nivå"
-#: src/daisy-player.c:685
+#: src/daisy-player.c:690
msgid "L - switch to previous level"
msgstr "L - byta till föregående nivå"
-#: src/daisy-player.c:687
+#: src/daisy-player.c:692
msgid "m - mute sound output on/off"
msgstr ""
-#: src/daisy-player.c:689
+#: src/daisy-player.c:694
msgid "n - search forwards"
msgstr "n - sök framåt"
-#: src/daisy-player.c:691
+#: src/daisy-player.c:696
msgid "N - search backwards"
msgstr "N - sök bakåt"
-#: src/daisy-player.c:693
+#: src/daisy-player.c:698
msgid "o - select next output sound device"
msgstr "o - välj nästa ljudenhet"
-#: src/daisy-player.c:695
+#: src/daisy-player.c:700
msgid "p - place a bookmark"
msgstr "p - spara ett bokmärke"
-#: src/daisy-player.c:697
+#: src/daisy-player.c:702
msgid "q - quit daisy-player and place a bookmark"
msgstr "q - stäng av daisy-player och spara ett bokmärke"
-#: src/daisy-player.c:699
+#: src/daisy-player.c:704
msgid "s - stop playing"
msgstr "s - sluta spela"
-#: src/daisy-player.c:701
+#: src/daisy-player.c:706
msgid "U,+ - increase playing speed"
msgstr "U,+ - öka läshastigheten"
-#: src/daisy-player.c:703
+#: src/daisy-player.c:708
msgid "v,1 - decrease playback volume"
msgstr "v,1 - minska uppspelningsvolymen"
-#: src/daisy-player.c:705
+#: src/daisy-player.c:710
msgid "V,7 - increase playback volume (beware of Clipping)"
msgstr "V,7 - öka uppspelningsvolymen (se upp för klippning)"
-#: src/daisy-player.c:707
+#: src/daisy-player.c:712
msgid "Press any key to leave help..."
msgstr "Tryck valfri tangent för att lämna hjälp..."
-#: src/daisy-player.c:853
+#: src/daisy-player.c:849 src/daisy-player.c:1238
+msgid "This book has no audio. Play this book with eBook-speaker"
+msgstr "Den här boken har inget ljud. Spela denna bok med eBook-speaker"
+
+#: src/daisy-player.c:868
msgid "Please wait... -------------------------"
msgstr "Vänligen vänta... -------------------------"
-#: src/daisy-player.c:964
+#: src/daisy-player.c:978
msgid "What do you search?"
msgstr "Vad söker du efter?"
-#: src/daisy-player.c:1066
+#: src/daisy-player.c:1080
msgid "Go to time (MM:SS):"
msgstr "Gå till tid (MM:SS):"
-#: src/daisy-player.c:1681 src/daisy-player.c:1925 src/daisy-player.c:1943
-#: src/daisy-player.c:2046 src/daisy-player.c:2064
+#: src/daisy-player.c:1703 src/daisy-player.c:1969 src/daisy-player.c:1985
+#: src/daisy-player.c:2085 src/daisy-player.c:2102
#, c-format
msgid "Daisy-player - Version %s %s"
msgstr "Daisy-player - Version %s %s"
-#: src/daisy-player.c:1684
+#: src/daisy-player.c:1706
#, c-format
msgid "Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"
msgstr "Användning: %s [mapp_med_en_Daisy-struktur] | [Daisy_book_archive]"
-#: src/daisy-player.c:1687
+#: src/daisy-player.c:1709
msgid "[-c cdrom_device] [-d pulseaudio_sound_device]"
msgstr "[-c cdrom_enhet] [-d pulseaudio_ljudenhet]"
-#: src/daisy-player.c:1700
+#: src/daisy-player.c:1722
msgid "Cannot read /proc/mounts."
msgstr "Kan inte läsa /proc/mounts."
-#: src/daisy-player.c:1927
+#: src/daisy-player.c:1971
+#, c-format
msgid "A parser to play Daisy CD's with Linux"
msgstr "Ett program som spelar Daisy-skivor med Linux"
-#: src/daisy-player.c:1929
+#: src/daisy-player.c:1973
+#, c-format
msgid "Scanning for a Daisy CD..."
msgstr "Letar efter en Daisy-CD..."
-#: src/daisy-player.c:2026 src/daisy-player.c:2167
+#: src/daisy-player.c:2066 src/daisy-player.c:2200
msgid "No DAISY-CD or Audio-cd found"
msgstr "Ingen DAISY-CD eller ljud-cd hittad"
-#: src/daisy-player.c:2085 src/daisy-player.c:2097 src/daisy-player.c:2127
+#: src/daisy-player.c:2122 src/daisy-player.c:2133 src/daisy-player.c:2161
msgid "No Daisy CD in drive."
msgstr "Ingen Daisy-CD i CD-spelaren."
-#: src/daisy-player.c:2142
+#: src/daisy-player.c:2176
msgid "Found an Audio-CD."
msgstr "Hittade en ljud-cd."
-#: src/daisy-player.c:2144
+#: src/daisy-player.c:2178
msgid "Get titles from freedb.freedb.org..."
msgstr "Hämtar titlar från freedb.freedb.org..."
-#: src/daisy-player.c:2295
+#: src/daisy-player.c:2360
#, c-format
-msgid "Daisy-player - Version %s - (C)2018 J. Lemmens"
-msgstr "Daisy-player - Version %s - (C)2018 J. Lemmens"
+msgid "Daisy-player - Version %s - (C)2019 J. Lemmens"
+msgstr "Daisy-player - Version %s - (C)2019 J. Lemmens"
-#: src/daisy-player.c:2308
+#: src/daisy-player.c:2373
msgid "Press 'h' for help"
msgstr "Tryck 'h' för hjälp"
+#: src/ncx.c:273
+msgid "No items found. Try option \"-O\"."
+msgstr "Inga föremål hittades. Prova alternativet \"-O\"."
+
+#~ msgid "No items found. Try option \"-N\"."
+#~ msgstr "Inga föremål hittades. Prova alternativet \"-N\"."
+
#~ msgid "Cannot read /proc/asound/cards"
#~ msgstr "Kan inte läsa /proc/asound/cards"
diff --git a/src/Makefile.am b/src/Makefile.am
index 6fb7b25..7d2bbee 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,9 +1,10 @@
AUTOMAKE_OPTIONS = foreign
-AM_CFLAGS = -I . -D LOCALEDIR=\"$(prefix)/share/locale\" -Wall -Wextra \
+AM_CFLAGS = -I . -I /usr/include/cdio/ -I /usr/include/cdio/paranoia/ \
+ -D LOCALEDIR=\"$(prefix)/share/locale\" -Wall -Wextra \
-Wunused -Wunused-variable -Wunused-function \
-Wmissing-declarations \
- -ggdb -I /usr/include/libxml2/ -O3 \
+ -g -I /usr/include/libxml2/ -O3 \
-Wuninitialized -Winit-self \
-DPROGRAMNAME_LOCALEDIR=\"${PROGRAMNAME_LOCALEDIR}\"
@@ -40,6 +41,7 @@ daisy_player_SOURCES = madplay/madplay.c madplay/audio.c \
pactl/src/strbuf.c \
pactl/src/pactl.c \
audiocd.c paranoia.c common.c daisy2.02.c \
- daisy3.c daisy-player.c playfile.c
+ daisy3.c daisy-player.c playfile.c \
+ ncx.c opf.c
localedir = $(datadir)/locale
diff --git a/src/Makefile.in b/src/Makefile.in
index f3fed71..b88ceac 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -116,7 +116,8 @@ am_daisy_player_OBJECTS = madplay/madplay.$(OBJEXT) \
pactl/src/core-util.$(OBJEXT) pactl/src/strbuf.$(OBJEXT) \
pactl/src/pactl.$(OBJEXT) audiocd.$(OBJEXT) paranoia.$(OBJEXT) \
common.$(OBJEXT) daisy2.02.$(OBJEXT) daisy3.$(OBJEXT) \
- daisy-player.$(OBJEXT) playfile.$(OBJEXT)
+ daisy-player.$(OBJEXT) playfile.$(OBJEXT) ncx.$(OBJEXT) \
+ opf.$(OBJEXT)
daisy_player_OBJECTS = $(am_daisy_player_OBJECTS)
daisy_player_LDADD = $(LDADD)
am__DEPENDENCIES_1 =
@@ -320,10 +321,11 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = foreign
-AM_CFLAGS = -I . -D LOCALEDIR=\"$(prefix)/share/locale\" -Wall -Wextra \
+AM_CFLAGS = -I . -I /usr/include/cdio/ -I /usr/include/cdio/paranoia/ \
+ -D LOCALEDIR=\"$(prefix)/share/locale\" -Wall -Wextra \
-Wunused -Wunused-variable -Wunused-function \
-Wmissing-declarations \
- -ggdb -I /usr/include/libxml2/ -O3 \
+ -g -I /usr/include/libxml2/ -O3 \
-Wuninitialized -Winit-self \
-DPROGRAMNAME_LOCALEDIR=\"${PROGRAMNAME_LOCALEDIR}\"
@@ -340,7 +342,8 @@ daisy_player_SOURCES = madplay/madplay.c madplay/audio.c \
pactl/src/strbuf.c \
pactl/src/pactl.c \
audiocd.c paranoia.c common.c daisy2.02.c \
- daisy3.c daisy-player.c playfile.c
+ daisy3.c daisy-player.c playfile.c \
+ ncx.c opf.c
all: all-am
@@ -475,6 +478,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/daisy-player.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/daisy2.02.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/daisy3.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ncx.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/opf.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/paranoia.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/playfile.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@madplay/$(DEPDIR)/audio.Po@am__quote@
diff --git a/src/audiocd.c b/src/audiocd.c
index 8a6abe6..ae046ef 100644
--- a/src/audiocd.c
+++ b/src/audiocd.c
@@ -107,11 +107,11 @@ void get_toc_audiocd (misc_t *misc, daisy_t *daisy)
{
int x;
- snprintf (daisy[misc->current].label, 15, "Track %2d", misc->current + 1);
- x = strlen (dir) + 15;
+ sprintf (daisy[misc->current].label, "Track %2d", misc->current + 1);
+ x = strlen (dir) + 25;
daisy[misc->current].filename = malloc (x);
snprintf (daisy[misc->current].filename, x,
- "%s/Track %d.wav", dir, misc->current + 1);
+ "%s/Track-%02d.wav", dir, misc->current + 1);
daisy[misc->current].first_lsn = cdio_get_track_lsn (cd,
first_track + misc->current);
if (misc->displaying == misc->max_y)
diff --git a/src/common.c b/src/common.c
index b35e2b1..ca4234c 100644
--- a/src/common.c
+++ b/src/common.c
@@ -19,7 +19,50 @@
#include "daisy.h"
-char sink_info[10][100];
+char sink_info[10][100];
+
+void open_xml_file (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy, char *xml_file, char *anchor)
+{
+ if (access (xml_file, R_OK))
+ {
+ endwin ();
+ printf ("%s\n",
+ gettext ("Please try to play this book with daisy-player"));
+ beep ();
+ quit_daisy_player (misc, my_attribute, daisy);
+ _exit (EXIT_SUCCESS);
+ } // if
+ if (! (misc->doc = htmlParseFile (xml_file, "UTF-8")))
+ {
+ int e;
+ char str[MAX_STR];
+
+ e = errno;
+ snprintf (str, MAX_STR, "open_xml_file (%s)", xml_file);
+ failure (misc, str, e);
+ } // if
+ if ((misc->reader = xmlReaderWalker (misc->doc)) == NULL)
+ {
+ int e;
+ char str[MAX_STR];
+
+ e = errno;
+ snprintf (str, MAX_STR, "open_xml_file (%s)", xml_file);
+ failure (misc, str, e);
+ } // if
+ if (! *anchor)
+ return;
+
+// skip to anchor
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, misc->reader))
+ break;
+ if (strcasecmp (anchor, my_attribute->id) == 0)
+ break;
+ } // while
+} // open_xml_file
char *convert_URL_name (misc_t *misc, char *file)
{
@@ -56,8 +99,8 @@ void failure (misc_t *misc, char *str, int e)
printf ("\n\n%s: %s\n", str, strerror (e));
fflush (stdout);
remove_tmp_dir (misc);
- printf ("reset");
- kill (misc->main_pid, SIGTERM);
+ switch (system ("reset"));
+ _exit (EXIT_FAILURE);
} // failure
void player_ended ()
@@ -68,7 +111,7 @@ void player_ended ()
while ((kidpid = waitpid (-1, &status, WNOHANG)) > 0);
} // player_ended
-void get_path_name (char *dir, char *search_str, char *found)
+void get_realpath_name (char *dir, char *search_str, char *found)
{
int total, n;
struct dirent **namelist;
@@ -76,26 +119,29 @@ void get_path_name (char *dir, char *search_str, char *found)
total = scandir ((const char *) dir, &namelist, NULL, alphasort);
if (total == -1)
{
- printf ("scandir: %s: %s\n", dir, strerror (errno));
+ printf ("\nscandir: %s: %s\n", dir, strerror (errno));
exit (EXIT_FAILURE);
} // if
for (n = 0; n < total; n++)
{
- char *path;
+ char *path, *basec;
path = malloc (strlen (dir) + strlen (namelist[n]->d_name) + 2);
if (dir[strlen (dir) - 1] == '/')
sprintf (path, "%s%s", dir, namelist[n]->d_name);
else
sprintf (path, "%s/%s", dir, namelist[n]->d_name);
- if (strcasecmp (namelist[n]->d_name, basename (search_str)) == 0)
+ basec = strdup (search_str);
+ if (strcasecmp (namelist[n]->d_name, basename (basec)) == 0)
{
strcpy (found, path);
free (path);
free (namelist);
+ free (basec);
return;
} // if
free (path);
+ free (basec);
if (strcmp (namelist[n]->d_name, ".") == 0 ||
strcmp (namelist[n]->d_name, "..") == 0)
continue;
@@ -108,12 +154,12 @@ void get_path_name (char *dir, char *search_str, char *found)
sprintf (new_dir, "%s/%s", dir, namelist[n]->d_name);
else
sprintf (new_dir, "%s%s", dir, namelist[n]->d_name);
- get_path_name (new_dir, search_str, found);
+ get_realpath_name (new_dir, search_str, found);
free (new_dir);
} // if
} // for
free (namelist);
-} // get_path_name
+} // get_realpath_name
char *get_dir_content (misc_t *misc, char *dir_name, char *search_str)
{
@@ -164,16 +210,18 @@ char *get_dir_content (misc_t *misc, char *dir_name, char *search_str)
void find_index_names (misc_t *misc)
{
+ char *dirc;
- get_path_name (misc->daisy_mp, "ncc.html", misc->ncc_html);
+ get_realpath_name (misc->daisy_mp, "ncc.html", misc->ncc_html);
*misc->ncx_name = 0;
- strncpy (misc->ncx_name,
- get_dir_content (misc, misc->daisy_mp, ".ncx"),
- MAX_STR - 1);
+ strcpy (misc->ncx_name,
+ get_dir_content (misc, misc->daisy_mp, ".ncx"));
*misc->opf_name = 0;
- strncpy (misc->opf_name,
- get_dir_content (misc, misc->daisy_mp, ".opf"),
- MAX_STR - 1);
+ strcpy (misc->opf_name,
+ get_dir_content (misc, misc->daisy_mp, ".opf"));
+ dirc = strdup (misc->opf_name);
+ free (misc->daisy_mp);
+ misc->daisy_mp = strdup (dirname (dirc));
} // find_index_names
void kill_player (misc_t *misc)
@@ -213,10 +261,13 @@ int handle_ncc_html (misc_t *misc, my_attribute_t *my_attribute,
// lookfor "ncc.html"
htmlDocPtr doc;
xmlTextReaderPtr ncc;
+ char *dirc;
free (misc->daisy_mp);
misc->daisy_mp = strdup (misc->ncc_html);
- misc->daisy_mp = dirname (misc->daisy_mp);
+ dirc = strdup (misc->daisy_mp);
+ misc->daisy_mp = strdup (dirname (dirc));
+ free (dirc);
strncpy (misc->daisy_version, "2.02", 4);
doc = htmlParseFile (misc->ncc_html, "UTF-8");
ncc = xmlReaderWalker (doc);
@@ -368,6 +419,11 @@ daisy_t *create_daisy_struct (misc_t *misc,
// handle "ncc.html"
if (*misc->ncc_html)
{
+ if (misc->verbose)
+ {
+ printf ("\r\n\ncount items in %s... ", misc->ncc_html);
+ fflush (stdout);
+ } // if
misc->total_items = handle_ncc_html (misc, my_attribute, daisy);
return calloc (misc->total_items + 1, sizeof (daisy_t));
} // if ncc.html
@@ -392,6 +448,11 @@ daisy_t *create_daisy_struct (misc_t *misc,
} // if
// count items in opf
+ if (misc->verbose)
+ {
+ printf ("\r\n\ncount items in OPF... ");
+ fflush (stdout);
+ } // if
misc->items_in_opf = 0;
doc = htmlParseFile (misc->opf_name, "UTF-8");
ptr = xmlReaderWalker (doc);
@@ -400,12 +461,21 @@ daisy_t *create_daisy_struct (misc_t *misc,
if (! get_tag_or_label (misc, my_attribute, ptr))
break;
if (strcasecmp (misc->tag, "itemref") == 0)
- misc->items_in_opf++;
+ {
+ misc->items_in_opf++; //
+ } // if
} // while
xmlTextReaderClose (ptr);
- xmlFreeDoc (doc);
+ xmlFreeDoc (doc);
+ if (misc->verbose)
+ printf ("%d\n", misc->items_in_opf);
// count items in ncx
+ if (misc->verbose)
+ {
+ printf ("\rcount items in NCX... ");
+ fflush (stdout);
+ } // if
misc->items_in_ncx = 0;
doc = htmlParseFile (misc->ncx_name, "UTF-8");
ptr = xmlReaderWalker (doc);
@@ -418,6 +488,8 @@ daisy_t *create_daisy_struct (misc_t *misc,
} // while
xmlTextReaderClose (ptr);
xmlFreeDoc (doc);
+ if (misc->verbose)
+ printf ("%d\n", misc->items_in_ncx);
if (misc->items_in_ncx == 0 && misc->items_in_opf == 0)
{
@@ -484,7 +556,7 @@ void remove_tmp_dir (misc_t *misc)
rmdir (misc->tmp_dir);
return;
} // if
-#endif
+#endif
snprintf (misc->cmd, MAX_CMD - 1, "rm -rf %s", misc->tmp_dir);
if (system (misc->cmd) != 0)
@@ -502,23 +574,24 @@ void remove_tmp_dir (misc_t *misc)
void get_attributes (misc_t *misc, my_attribute_t *my_attribute,
xmlTextReaderPtr ptr)
{
- char attr[MAX_STR + 1];
+ char attr[MAX_STR - 1];
snprintf (attr, MAX_STR - 1, "%s", (char *)
xmlTextReaderGetAttribute (ptr, BAD_CAST "class"));
if (strcmp (attr, "(null)"))
- snprintf (my_attribute->class, MAX_STR - 1, "%s", attr);
+ sprintf (my_attribute->class, "%s", attr);
#ifdef EBOOK_SPEAKER
if (misc->option_b == 0)
{
snprintf (attr, MAX_STR - 1, "%s", (char *)
xmlTextReaderGetAttribute
- (ptr, (xmlChar *) "break_on_eol"));
+ (ptr, (xmlChar *) "break_phrase"));
if (strcmp (attr, "(null)"))
{
- misc->break_phrase = attr[0];
- if (misc->break_phrase != 'y' && misc->break_phrase != 'n')
- misc->break_phrase = 'n';
+ if (*attr == 'y' || *attr == 'n')
+ misc->break_phrase = *attr;
+ else
+ misc->break_phrase = atoi (attr);
} // if
} // if
snprintf (attr, MAX_STR - 1, "%s", (char *)
@@ -685,10 +758,12 @@ void get_attributes (misc_t *misc, my_attribute_t *my_attribute,
my_attribute->src = strdup ((char *) xmlTextReaderGetAttribute (ptr,
(const xmlChar *) "src"));
} // if
+#ifdef EBOOK_SPEAKER
snprintf (attr, MAX_STR - 1, "%s", (char *)
xmlTextReaderGetAttribute (ptr, (const xmlChar *) "tts"));
if (strcmp (attr, "(null)"))
- misc->tts_no = atof ((char *) attr);
+ misc->attr_tts_no = atof ((char *) attr);
+#endif
snprintf (attr, MAX_STR - 1, "%s", (char *)
xmlTextReaderGetAttribute (ptr, (const xmlChar *) "toc"));
if (strcmp (attr, "(null)"))
@@ -830,7 +905,7 @@ void go_to_page_number (misc_t *misc, my_attribute_t *my_attribute,
view_screen (misc, daisy);
#ifdef EBOOK_SPEAKER
remove (misc->tmp_wav);
-#endif
+#endif
unlink ("old.wav");
mvwprintw (misc->titlewin, 1, 0,
"----------------------------------------");
@@ -860,24 +935,52 @@ void go_to_page_number (misc_t *misc, my_attribute_t *my_attribute,
#ifdef EBOOK_SPEAKER
misc->phrase_nr = 0;
#endif
+ for (misc->current = 0; misc->current < misc->total_items; misc->current++)
+ {
+ if (daisy[misc->current].page_number == atoi (pn))
+ {
+// at the start of an item
+ misc->displaying = misc->playing = misc->current;
+#ifdef DAISY_PLAYER
+ open_clips_file (misc, my_attribute, daisy[misc->playing].clips_file,
+ daisy[misc->playing].clips_anchor);
+#endif
+#ifdef EBOOK_SPEAKER
+ open_xml_file (misc, my_attribute, daisy,
+ daisy[misc->playing].xml_file,
+ daisy[misc->playing].xml_anchor);
+#endif
+ misc->elapsed_seconds = time (NULL);
+ return;
+ } // if
+ } // for
+
+ for (misc->playing = misc->total_items - 1; misc->playing >= 0;
+ misc->playing--)
+ {
+ if (daisy[misc->playing].page_number < atoi (pn))
+ break;
+ } // for
+// start searching here
#ifdef DAISY_PLAYER
open_clips_file (misc, my_attribute, daisy[misc->playing].clips_file,
daisy[misc->playing].clips_anchor);
#endif
#ifdef EBOOK_SPEAKER
- open_xml_file (misc, my_attribute, daisy[misc->playing].xml_file,
- daisy[misc->playing].anchor);
+ open_xml_file (misc, my_attribute, daisy, daisy[misc->playing].xml_file,
+ daisy[misc->playing].xml_anchor);
#endif
while (1)
{
if (misc->current_page_number == atoi (pn))
{
+// found it
misc->displaying = misc->current = misc->playing;
misc->player_pid = -2;
view_screen (misc, daisy);
return;
- } // if (misc->current_page_number == atoi (pn))
+ } // if current_page_number == pn
if (misc->current_page_number > atoi (pn))
{
misc->current = misc->playing = 0;
@@ -887,11 +990,11 @@ void go_to_page_number (misc_t *misc, my_attribute_t *my_attribute,
daisy[misc->playing].clips_anchor);
#endif
#ifdef EBOOK_SPEAKER
- open_xml_file (misc, my_attribute, daisy[misc->playing].xml_file,
- daisy[misc->playing].anchor);
+ open_xml_file (misc, my_attribute, daisy, daisy[misc->playing].xml_file,
+ daisy[misc->playing].xml_anchor);
#endif
return;
- } // if
+ } // if current_page_number > pn
#ifdef DAISY_PLAYER
get_next_clips (misc, my_attribute, daisy);
#endif
@@ -929,28 +1032,18 @@ void select_next_output_device (misc_t *misc, daisy_t *daisy)
wclear (misc->screenwin);
wprintw (misc->screenwin, "\n%s\n\n", gettext ("Select a soundcard:"));
- if (access ("/usr/bin/pacmd", X_OK) == -1)
- {
- int e;
-
- e = errno;
- printf ("\7\n\n%s: %s\n", gettext
- ("Be sure the package pulseaudio-utils is installed onto your system."),
- strerror (e));
- _exit (EXIT_FAILURE);
- } // if
if (*misc->pulseaudio_device)
c = atoi (misc->pulseaudio_device);
else
c = 0;
nodelay (misc->screenwin, FALSE);
- for (;;)
+ while (! misc->term_signaled)
{
char dev[5];
FILE *p;
- if ((p = popen ("/usr/bin/pactl list sinks", "r")) == NULL)
+ if ((p = popen ("LANG=C /usr/bin/pactl list sinks", "r")) == NULL)
{
beep ();
endwin ();
@@ -964,7 +1057,7 @@ void select_next_output_device (misc_t *misc, daisy_t *daisy)
char *str = NULL;
n = -1;
- while (1)
+ while (! misc->term_signaled)
{
if (getline (&str, &len, p) == -1)
break;
@@ -972,7 +1065,7 @@ void select_next_output_device (misc_t *misc, daisy_t *daisy)
{
memset (sink_info[++n], ' ', 70);
continue;
- } // if
+ } // if
if (strstr (str, "Description:"))
{
int x;
@@ -1079,9 +1172,17 @@ void select_next_output_device (misc_t *misc, daisy_t *daisy)
tv.tv_usec = 100000;
// pause till a key has been pressed or 0.1 seconds are elapsed
select (1, &rfds, NULL, NULL, &tv);
- } // for
+ } // while
} // select_next_output_device
+// Useful to reset handlers in fork()ed children
+void reset_term_signal_handlers_after_fork (void)
+{
+ signal (SIGINT, SIG_DFL);
+ signal (SIGTERM, SIG_DFL);
+ signal (SIGHUP, SIG_DFL);
+} // reset_term_signal_handlers
+
void free_all (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
{
#ifdef DAISY_PLAYER
@@ -1104,10 +1205,9 @@ void free_all (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
misc->current++)
{
free (daisy[misc->current].xml_file);
- free (daisy[misc->current].anchor);
+ free (daisy[misc->current].xml_anchor);
free (daisy[misc->current].clips_file);
free (daisy[misc->current].clips_anchor);
- free (daisy[misc->current].orig_smil);
} // for
delwin (misc->titlewin);
delwin (misc->screenwin);
diff --git a/src/daisy-player.c b/src/daisy-player.c
index a417df5..46ee61d 100644
--- a/src/daisy-player.c
+++ b/src/daisy-player.c
@@ -1,6 +1,6 @@
/* daisy-player
*
- * Copyright (C)2003-2018 J. Lemmens
+ * Copyright (C)2003-2019 J. Lemmens
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -18,6 +18,7 @@
*/
#include "daisy.h"
+extern void quit_daisy_player (misc_t *, my_attribute_t *, daisy_t *);
void put_bookmark (misc_t *misc)
{
@@ -166,6 +167,8 @@ void get_bookmark (misc_t *misc, my_attribute_t *my_attribute,
} // while
if (misc->level < 1)
misc->level = 1;
+ if (misc->level > misc->depth)
+ misc->level = misc->depth;
misc->current_page_number = daisy[misc->playing].page_number - 1;
misc->just_this_item = -1;
pause_resume (misc, my_attribute, daisy);
@@ -186,7 +189,7 @@ void get_next_clips (misc_t *misc, my_attribute_t *my_attribute,
misc->current_audio_file = realloc
(misc->current_audio_file,
strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
+ get_realpath_name (misc->daisy_mp, convert_URL_name (misc,
my_attribute->src), misc->current_audio_file);
get_clips (misc, my_attribute);
return;
@@ -310,7 +313,7 @@ void view_screen (misc_t *misc, daisy_t *daisy)
{
int i, x, x2, hours, minutes, seconds;
float time;
-
+
mvwprintw (misc->titlewin, 1, 0,
"----------------------------------------");
wprintw (misc->titlewin, "----------------------------------------");
@@ -378,7 +381,7 @@ void view_screen (misc_t *misc, daisy_t *daisy)
wrefresh (misc->screenwin);
view_page (misc, daisy);
view_time (misc, daisy);
-} // view_screen
+} // view_screen
void start_playing (misc_t *misc, daisy_t *daisy)
{
@@ -401,9 +404,11 @@ void start_playing (misc_t *misc, daisy_t *daisy)
{
case -1:
failure (misc, "fork ()", errno);
+ break;
case 0: // child
+ reset_term_signal_handlers_after_fork ();
snprintf (tempo_str, 10, "%lf", misc->speed);
- playfile (misc->tmp_wav, "wav", misc->pulseaudio_device,
+ playfile (misc, misc->tmp_wav, "wav", misc->pulseaudio_device,
"pulseaudio", tempo_str);
_exit (EXIT_SUCCESS);
default: // parent
@@ -539,7 +544,7 @@ void write_wav (misc_t *misc, my_attribute_t *my_attribute,
misc->current += 1;
} // while
close (w);
- playfile (complete_cdr, "cdr", out_file, "wav", "1");
+ playfile (misc, complete_cdr, "cdr", out_file, "wav", "1");
free (out_file);
free (out_cdr);
free (complete_cdr);
@@ -747,14 +752,24 @@ void next_item (misc_t *misc, daisy_t *daisy)
void calculate_times_3 (misc_t *misc, my_attribute_t *my_attribute,
daisy_t *daisy)
-{
+{
int x;
xmlTextReaderPtr parse;
htmlDocPtr doc;
misc->total_time = 0;
+ if (misc->verbose)
+ {
+ printw ("\n\r\nCalculate times ");
+ fflush (stdout);
+ } // if
for (x = 0; x < misc->total_items; x++)
{
+ if (misc->verbose)
+ {
+ printf (". ");
+ fflush (stdout);
+ } // if
daisy[x].duration = 0;
if (! *daisy[x].clips_file)
continue;
@@ -767,7 +782,7 @@ void calculate_times_3 (misc_t *misc, my_attribute_t *my_attribute,
printf (gettext ("Cannot read %s"), daisy[x].clips_file);
printf ("\n");
fflush (stdout);
- _exit (1);
+ _exit (EXIT_FAILURE);
} // if
// parse this smil
@@ -816,7 +831,7 @@ void calculate_times_3 (misc_t *misc, my_attribute_t *my_attribute,
daisy[x].duration += misc->clip_end - misc->clip_begin;
} // IF
} // while
- if (x < misc->total_items - 1 && *daisy[x + 1].clips_anchor)
+ if (x < misc->total_items - 1 && *daisy[x + 1].clips_anchor)
if (strcasecmp
(my_attribute->id, daisy[x + 1].clips_anchor) == 0)
break;
@@ -921,9 +936,8 @@ void save_xml (misc_t *misc)
void quit_daisy_player (misc_t *misc, my_attribute_t *my_attribute,
daisy_t *daisy)
{
- view_screen (misc, daisy);
endwin ();
- system ("reset");
+ switch (system ("reset"));
if (misc->cd_type != CDIO_DISC_MODE_CD_DA)
xmlTextReaderClose (misc->reader);
kill_player (misc);
@@ -939,7 +953,7 @@ void quit_daisy_player (misc_t *misc, my_attribute_t *my_attribute,
return;
snprintf (misc->cmd, MAX_CMD,
"udisksctl unmount -b %s --force > /dev/null", misc->cd_dev);
- system (misc->cmd);
+ switch (system (misc->cmd));
} // quit_daisy_player
void search (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy,
@@ -1047,10 +1061,10 @@ void search (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy,
} // search
void go_to_time (misc_t *misc, daisy_t *daisy, my_attribute_t *my_attribute)
-{
+{
char time_str[10];
int secs;
-
+
kill_player (misc);
if (misc->cd_type != CDIO_DISC_MODE_CD_DA)
misc->player_pid = -2;
@@ -1067,6 +1081,11 @@ void go_to_time (misc_t *misc, daisy_t *daisy, my_attribute_t *my_attribute)
echo ();
wgetnstr (misc->titlewin, time_str, 5);
noecho ();
+ if (misc->term_signaled)
+ {
+ time_str[0] = 0;
+ break;
+ }
if (strlen (time_str) == 0 || strlen (time_str) == 5)
{
if (strlen (time_str) == 0)
@@ -1220,7 +1239,7 @@ void browse (misc_t *misc, my_attribute_t *my_attribute,
_exit (-1);
} // if
- for (;;) // forever
+ while (! misc->term_signaled) // forever if not signaled
{
switch (wgetch (misc->screenwin))
{
@@ -1588,6 +1607,7 @@ void browse (misc_t *misc, my_attribute_t *my_attribute,
case '1':
if (fork () == 0)
{
+ reset_term_signal_handlers_after_fork ();
pactl ("set-sink-volume", misc->pulseaudio_device, "-5%");
_exit (EXIT_SUCCESS);
} // if
@@ -1596,9 +1616,10 @@ void browse (misc_t *misc, my_attribute_t *my_attribute,
case '7':
if (fork () == 0)
{
+ reset_term_signal_handlers_after_fork ();
pactl ("set-sink-volume", misc->pulseaudio_device, "+5%");
_exit (EXIT_SUCCESS);
- } // if
+ } // if
break;
default:
beep ();
@@ -1673,19 +1694,20 @@ void browse (misc_t *misc, my_attribute_t *my_attribute,
} // if
view_time (misc, daisy);
} // if
- } // for
+ } // while
+ quit_daisy_player (misc, my_attribute, daisy);
} // browse
void usage (int e)
{
printf (gettext ("Daisy-player - Version %s %s"), PACKAGE_VERSION, "\n");
- puts ("(C)2003-2018 J. Lemmens\n");
+ puts ("(C)2003-2019 J. Lemmens\n");
printf (gettext
("Usage: %s [directory_with_a_Daisy-structure] | [Daisy_book_archive]"),
PACKAGE);
printf ("\n%s ",
gettext ("[-c cdrom_device] [-d pulseaudio_sound_device]"));
- printf ("[-h] [-i] [-n | -y]\n");
+ printf ("[-h] [-i] [-n | -y] [-v]\n");
fflush (stdout);
_exit (e);
} // usage
@@ -1751,7 +1773,7 @@ void handle_discinfo (misc_t *misc, my_attribute_t *my_attribute,
} // if (strcasecmp (misc->tag, "title") == 0)
if (strcasecmp (misc->tag, "a") == 0)
{
- get_path_name (misc->daisy_mp, my_attribute->href,
+ get_realpath_name (misc->daisy_mp, my_attribute->href,
daisy[misc->current].filename);
htmlDocPtr doc =
htmlParseFile (daisy[misc->current].filename, "UTF-8");
@@ -1761,7 +1783,7 @@ void handle_discinfo (misc_t *misc, my_attribute_t *my_attribute,
char str[MAX_STR];
e = errno;
- snprintf (str, MAX_STR,
+ snprintf (str, MAX_STR,
gettext ("Cannot read %s"), daisy[misc->current].filename);
failure (misc, str, e);
} // if
@@ -1805,6 +1827,15 @@ void handle_discinfo (misc_t *misc, my_attribute_t *my_attribute,
view_screen (misc, daisy);
} // handle_discinfo
+// pointer to misc->term_signaled, whether we received a termination signal
+static int *daisy_player_term_signaled;
+
+static void term_daisy_player (int sig)
+{
+sig = sig;
+ *daisy_player_term_signaled = 1;
+} // term_daisy_player
+
int main (int argc, char *argv[])
{
int opt;
@@ -1836,14 +1867,24 @@ int main (int argc, char *argv[])
misc.total_time = 0;
*misc.daisy_title = 0;
*misc.ncc_html = 0;
+ misc.term_signaled = 0;
+ daisy_player_term_signaled = &misc.term_signaled;
strncpy (misc.cd_dev, "/dev/sr0", MAX_STR - 1);
my_attribute.id = strdup ("");
my_attribute.idref = strdup ("");
my_attribute.src = strdup ("");
sigfillset (&usr_action.sa_mask);
- usr_action.sa_handler = player_ended;
+ usr_action.sa_handler = player_ended;
usr_action.sa_flags = SA_RESTART;
sigaction (SIGCHLD, &usr_action, NULL);
+ usr_action.sa_handler = term_daisy_player;
+ usr_action.sa_flags = SA_RESETHAND;
+ sigaction (SIGINT, &usr_action, NULL);
+ sigaction (SIGTERM, &usr_action, NULL);
+// we get two hangups (one from the terminal app, and one from the kernel
+// closing the tty), so don't reset that one
+ usr_action.sa_flags = 0;
+ sigaction (SIGHUP, &usr_action, NULL);
*misc.xmlversion = 0;
make_tmp_dir (&misc);
misc.cddb_flag = 'y';
@@ -1855,10 +1896,12 @@ int main (int argc, char *argv[])
snprintf (str, MAX_STR, "%s/", LOCALEDIR);
bindtextdomain (PACKAGE, str);
opterr = 0;
- misc.use_OPF = misc.use_NCX = 0;
+ misc.verbose = 0;
+ misc.use_OPF = 0;
+ misc.use_NCX = 0;
c_opt = d_opt = NULL;
cddb_opt = 0;
- while ((opt = getopt (argc, argv, "c:d:hijnyON")) != -1)
+ while ((opt = getopt (argc, argv, "c:d:hijnvyON")) != -1)
{
switch (opt)
{
@@ -1895,11 +1938,16 @@ int main (int argc, char *argv[])
cddb_opt = misc.cddb_flag;
} // switch
break;
+ case 'v':
+ misc.verbose = 1;
+ break;
case 'N':
misc.use_NCX = 1;
+ misc.use_OPF = 0;
break;
case 'O':
misc.use_OPF = 1;
+ misc.use_NCX = 0;
break;
default:
beep ();
@@ -1915,21 +1963,16 @@ int main (int argc, char *argv[])
strcpy (misc.pulseaudio_device, d_opt);
if (cddb_opt)
misc.cddb_flag = cddb_opt;
- initscr ();
- if (! (misc.titlewin = newwin (2, 80, 0, 0)) ||
- ! (misc.screenwin = newwin (23, 80, 2, 0)))
- failure (&misc, "No curses", errno);
fclose (stderr);
- getmaxyx (misc.screenwin, misc.max_y, misc.max_x);
- printw ("(C)2003-2018 J. Lemmens\n");
- printw (gettext ("Daisy-player - Version %s %s"), PACKAGE_VERSION, "");
- printw ("\n");
- printw (gettext ("A parser to play Daisy CD's with Linux"));
- printw ("\n");
- printw (gettext ("Scanning for a Daisy CD..."));
- refresh ();
+ switch (system ("clear"));
+ printf ("(C)2003-2019 J. Lemmens\n");
+ printf (gettext ("Daisy-player - Version %s %s"), PACKAGE_VERSION, "");
+ printf ("\n");
+ printf (gettext ("A parser to play Daisy CD's with Linux"));
+ printf ("\n");
+ printf (gettext ("Scanning for a Daisy CD..."));
+ fflush (stdout);
misc.total_pages = misc.mounted_by_daisy_player = 0;
-
if (argv[optind])
// if there is an argument
{
@@ -1939,10 +1982,9 @@ int main (int argc, char *argv[])
int e;
e = errno;
- endwin ();
printf (gettext ("Daisy-player - Version %s %s"),
PACKAGE_VERSION, "\n");
- puts ("(C)2003-2018 J. Lemmens");
+ puts ("(C)2003-2019 J. Lemmens");
beep ();
remove_tmp_dir (&misc);
printf ("%s: %s\n", argv[optind], strerror (e));
@@ -1959,7 +2001,6 @@ int main (int argc, char *argv[])
int e;
e = errno;
- endwin ();
printf ("%s: %s\n", argv[optind], strerror (e));
beep ();
fflush (stdout);
@@ -2022,7 +2063,6 @@ int main (int argc, char *argv[])
} // if unar
else
{
- endwin ();
printf ("\n%s\n", gettext ("No DAISY-CD or Audio-cd found"));
beep ();
remove_tmp_dir (&misc);
@@ -2042,10 +2082,9 @@ int main (int argc, char *argv[])
int e;
e = errno;
- endwin ();
printf (gettext ("Daisy-player - Version %s %s"),
PACKAGE_VERSION, "\n");
- puts ("(C)2003-2018 J. Lemmens");
+ puts ("(C)2003-2019 J. Lemmens");
beep ();
remove_tmp_dir (&misc);
snprintf (misc.str, MAX_STR, gettext ("Cannot read %s"),
@@ -2060,10 +2099,9 @@ int main (int argc, char *argv[])
} // if
if (((buf.st_mode & S_IFMT) == S_IFBLK) != 1)
{
- endwin ();
printf (gettext ("Daisy-player - Version %s %s"),
PACKAGE_VERSION, "\n");
- puts ("(C)2003-2018 J. Lemmens");
+ puts ("(C)2003-2019 J. Lemmens");
beep ();
remove_tmp_dir (&misc);
printf ("\n%s is not a cd device\n", misc.cd_dev);
@@ -2081,7 +2119,6 @@ int main (int argc, char *argv[])
{
if (time (NULL) - start >= 60)
{
- endwin ();
printf ("%s\n", gettext ("No Daisy CD in drive."));
remove_tmp_dir (&misc);
_exit (EXIT_FAILURE);
@@ -2093,7 +2130,6 @@ int main (int argc, char *argv[])
{
if (time (NULL) - start >= 20)
{
- endwin ();
printf ("%s\n", gettext ("No Daisy CD in drive."));
remove_tmp_dir (&misc);
_exit (EXIT_FAILURE);
@@ -2115,7 +2151,6 @@ int main (int argc, char *argv[])
case CDIO_DISC_MODE_DVD_PR_DL: /**< DVD+R DL */
case CDIO_DISC_MODE_CD_MIXED:
{
- endwin ();
if (get_mount_point (&misc) == NULL)
{
// if not found a mounted cd, try to mount one
@@ -2123,7 +2158,6 @@ int main (int argc, char *argv[])
{
if (time (NULL) - start >= 10)
{
- endwin ();
printf ("%s\n", gettext ("No Daisy CD in drive."));
remove_tmp_dir (&misc);
_exit (EXIT_FAILURE);
@@ -2151,8 +2185,8 @@ int main (int argc, char *argv[])
misc.daisy_mp = strdup ("/tmp");
for (misc.current = 0; misc.current < misc.total_items; misc.current++)
{
- daisy[misc.current].xml_file = strdup ("");
- daisy[misc.current].anchor = strdup ("");
+ daisy[misc.current].smil_file = strdup ("");
+ daisy[misc.current].smil_anchor = strdup ("");
daisy[misc.current].clips_file = strdup ("");
daisy[misc.current].clips_anchor = strdup ("");
daisy[misc.current].orig_smil = strdup ("");
@@ -2163,17 +2197,12 @@ int main (int argc, char *argv[])
case CDIO_DISC_MODE_DVD_OTHER:
case CDIO_DISC_MODE_NO_INFO:
case CDIO_DISC_MODE_ERROR:
- endwin ();
printf ("%s\n", gettext ("No DAISY-CD or Audio-cd found"));
remove_tmp_dir (&misc);
return 0;
} // switch
} while (misc.cd_type == -1);
} // if use misc.cd_dev
- keypad (misc.screenwin, TRUE);
- meta (misc.screenwin, TRUE);
- nonl ();
- noecho ();
misc.player_pid = -2;
if (chdir (misc.daisy_mp) == -1)
{
@@ -2187,13 +2216,21 @@ int main (int argc, char *argv[])
} // if
misc.current = 0;
misc.reader = FALSE;
+ misc.max_x = misc.max_y = 0;
+
+ initscr ();
+ if (! (misc.titlewin = newwin (2, 80, 0, 0)) ||
+ ! (misc.screenwin = newwin (23, 80, 2, 0)))
+ failure (&misc, "No curses", errno);
+ getmaxyx (misc.screenwin, misc.max_y, misc.max_x);
+
if (misc.cd_type != CDIO_DISC_MODE_CD_DA)
{
daisy = create_daisy_struct (&misc, &my_attribute, daisy);
for (misc.current = 0; misc.current < misc.total_items; misc.current++)
{
- daisy[misc.current].xml_file = strdup ("");
- daisy[misc.current].anchor = strdup ("");
+ daisy[misc.current].smil_file = strdup ("");
+ daisy[misc.current].smil_anchor = strdup ("");
daisy[misc.current].clips_file = strdup ("");
daisy[misc.current].clips_anchor = strdup ("");
daisy[misc.current].orig_smil = strdup ("");
@@ -2238,42 +2275,61 @@ int main (int argc, char *argv[])
} // if
} // while
fill_daisy_struct_2 (&misc, &my_attribute, daisy);
- }
+ } // ncc_html
else
{
// this is daisy3
int i;
strncpy (misc.daisy_version, "3", 2);
+ misc.ncx_failed = misc.opf_failed = 0;
read_daisy_3 (&misc, &my_attribute, daisy);
- for (i = 0; i < misc.total_items - 1; i++)
+ if (misc.verbose)
+ {
+ printf ("\rRead ID's ");
+ fflush (stdout);
+ } // if
+ for (i = 0; i < misc.total_items; i++)
{
htmlDocPtr doc;
xmlTextReaderPtr last;
- if (! (doc = htmlParseFile (daisy[i].xml_file, "UTF-8")))
+ if (i < misc.total_items - 1)
{
- failure (&misc, daisy[i].xml_file, errno);
+ if (! *daisy[i + 1].smil_anchor)
+ continue;
+ } // if
+ if (! (doc = htmlParseFile (daisy[i].smil_file, "UTF-8")))
+ {
+ failure (&misc, daisy[i].smil_file, errno);
} // if
if (! (last = xmlReaderWalker (doc)))
{
- failure (&misc, daisy[i].xml_file, errno);
+ failure (&misc, daisy[i].smil_file, errno);
} // if
while (1)
{
if (! get_tag_or_label (&misc, &my_attribute, last))
break;
- if (strcasecmp (my_attribute.id, daisy[i + 1].anchor) == 0)
- break;
+ if (i < misc.total_items - 1)
+ if (strcasecmp
+ (my_attribute.id, daisy[i + 1].smil_anchor) == 0)
+ break;
if (*my_attribute.id)
strcpy (daisy[i].last_id, my_attribute.id);
} // while
xmlTextReaderClose (last);
xmlFreeDoc (doc);
+ if (misc.verbose)
+ {
+ printf (". ");
+ fflush (stdout);
+ } // if
} // for
fill_page_numbers (&misc, daisy, &my_attribute);
calculate_times_3 (&misc, &my_attribute, daisy);
- } // if
+ } // if daisy3
+ misc.verbose = 0;
if (misc.total_items == 0)
misc.total_items = 1;
} // if (! misc.discinfo);
@@ -2290,9 +2346,18 @@ int main (int argc, char *argv[])
} // if
} // if
+ misc.level = 1;
+ snprintf (misc.tmp_wav, MAX_STR, "%s/daisy-player.wav", misc.tmp_dir);
+ if ((misc.tmp_wav_fd = mkstemp (misc.tmp_wav)) == 01)
+ failure (&misc, "mkstemp ()", errno);
+ misc.pause_resume_playing = -1;
+ keypad (misc.screenwin, TRUE);
+ meta (misc.screenwin, TRUE);
+ nonl ();
+ noecho ();
wattron (misc.titlewin, A_BOLD);
snprintf (str, MAX_STR - 1, gettext (
- "Daisy-player - Version %s - (C)2018 J. Lemmens"), PACKAGE_VERSION);
+ "Daisy-player - Version %s - (C)2019 J. Lemmens"), PACKAGE_VERSION);
mvwprintw (misc.titlewin, 0, 0, str);
wrefresh (misc.titlewin);
@@ -2306,13 +2371,6 @@ int main (int argc, char *argv[])
"----------------------------------------");
wprintw (misc.titlewin, "----------------------------------------");
mvwprintw (misc.titlewin, 1, 0, "%s ", gettext ("Press 'h' for help"));
- misc.level = 1;
- snprintf (misc.tmp_wav, MAX_STR, "%s/daisy-player.wav", misc.tmp_dir);
- if ((misc.tmp_wav_fd = mkstemp (misc.tmp_wav)) == 01)
- {
- failure (&misc, "mkstemp ()", errno);
- } // if
- misc.pause_resume_playing = -1;
if (misc.ignore_bookmark)
select_next_output_device (&misc, daisy);
browse (&misc, &my_attribute, daisy, get_current_dir_name ());
diff --git a/src/daisy.h b/src/daisy.h
index e2d17a0..e992397 100644
--- a/src/daisy.h
+++ b/src/daisy.h
@@ -1,5 +1,5 @@
/* header file for daisy-player
- * Copyright (C)2018 J. Lemmens
+ * Copyright (C)2019 J. Lemmens
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -42,12 +42,8 @@
#include <libxml/xmlwriter.h>
#include <libxml/HTMLparser.h>
#include <cdio/cdio.h>
-#ifdef HAVE_CDIO_PARANOIA_CDDA_H
- #include <cdio/paranoia/paranoia.h>
-#else
- #include <cdio/cdda.h>
- #include <cdio/paranoia.h>
-#endif
+#include <cdda.h>
+#include <paranoia.h>
#include <cdio/disc.h>
#include <magic.h>
#include <fnmatch.h>
@@ -74,8 +70,9 @@ typedef struct Daisy
{
int playorder, x, y, screen;
float begin, duration;
- char *xml_file, *anchor, *clips_file;
- char *clips_anchor, *orig_smil;
+ char *smil_file, *smil_anchor;
+ char *xml_file, *xml_anchor;
+ char *clips_file, *clips_anchor, *orig_smil;
char class[MAX_STR], label[100];
char first_id[MAX_STR], last_id[MAX_STR];
int level, page_number;
@@ -116,9 +113,10 @@ typedef struct Misc
int discinfo, playing, just_this_item, current_page_number;
int current, max_y, max_x, total_items, level, displaying, ignore_bookmark;
int items_in_opf, items_in_ncx;
- int tts_no, depth, total_pages;
+ int depth, total_pages, verbose;
int pipefd[2], tmp_wav_fd, has_audio_tag;
int pause_resume_playing, mounted_by_daisy_player;
+ int ncx_failed, opf_failed;
char *pause_resume_id, *prev_id, *current_id;
char *audio_id;
float speed, total_time, clip_begin, clip_end;
@@ -135,7 +133,6 @@ typedef struct Misc
char bookmark_title[MAX_STR], search_str[30];
char cd_dev[MAX_STR], pulseaudio_device[5];
char cddb_flag, opf_name[MAX_STR], ncx_name[MAX_STR];
- char use_ncx, use_opf;
char *current_audio_file, tmp_wav[MAX_STR + 1], mcn[MAX_STR];
char xmlversion[MAX_STR + 1];
char cmd[MAX_CMD + 1], str[MAX_STR + 1];
@@ -146,18 +143,21 @@ typedef struct Misc
CdIo_t *p_cdio;
int cd_type;
lsn_t lsn_cursor, pause_resume_lsn_cursor;
+ int term_signaled;
int use_OPF, use_NCX; // for testing
} misc_t;
extern void get_toc_audiocd (misc_t *, daisy_t *);
extern daisy_t *get_number_of_tracks (misc_t *);
extern pid_t play_track (misc_t *, char *, char *, lsn_t);
-extern void playfile (char *, char *, char *, char *, char *);
+extern void playfile (misc_t *, char *, char *, char *, char *, char *);
extern char *get_mcn (misc_t *);
extern void quit_daisy_player (misc_t *, my_attribute_t *, daisy_t *);
extern void view_screen (misc_t *, daisy_t *);
extern void pause_resume (misc_t *, my_attribute_t *, daisy_t *);
extern void open_clips_file (misc_t *, my_attribute_t *, char *, char *);
+extern void open_xml_file (misc_t *, my_attribute_t *,
+ daisy_t *, char *, char *);
extern void get_next_clips (misc_t *, my_attribute_t *, daisy_t *);
extern void free_all (misc_t *, my_attribute_t *, daisy_t *);
extern void select_next_output_device (misc_t *, daisy_t *);
@@ -167,7 +167,7 @@ extern daisy_t *create_daisy_struct (misc_t *, my_attribute_t *, daisy_t *);
extern void skip_right (misc_t *, daisy_t *);
extern void player_ended ();
extern char *convert_URL_name (misc_t *, char *);
-extern void get_path_name (char *, char *, char *);
+extern void get_realpath_name (char *, char *, char *);
extern void failure (misc_t *, char *, int);
extern int get_tag_or_label (misc_t *, my_attribute_t *, xmlTextReaderPtr);
extern void get_clips (misc_t *, my_attribute_t *);
@@ -193,15 +193,17 @@ extern void create_ncc_html (misc_t *);
extern void get_attributes (misc_t *, my_attribute_t *, xmlTextReaderPtr);
extern char *pactl (char *, char *, char *);
extern void parse_smil_2 (misc_t *, my_attribute_t *, daisy_t *);
-extern void get_label_2 (misc_t *, daisy_t *, int);
-extern void fill_xml_anchor_ncx (misc_t *, my_attribute_t *, daisy_t *);
-extern void parse_content (misc_t *, my_attribute_t *, daisy_t *);
-extern void parse_text (misc_t *, my_attribute_t *, daisy_t *);
+extern void get_label_opf (misc_t *, my_attribute_t *, daisy_t *, int);
+extern void parse_manifest (misc_t *, my_attribute_t *, daisy_t *,
+ int, char *);
+extern void get_label_2 (misc_t *, daisy_t *, int, int);
+extern void fill_smil_anchor_ncx (misc_t *, my_attribute_t *, daisy_t *);
+extern void parse_content_ncx (misc_t *, my_attribute_t *, daisy_t *);
extern void put_bookmark (misc_t *);
extern float read_time (char *);
-extern void parse_clips (misc_t *, my_attribute_t *, daisy_t *);
-extern void parse_smil_3 (misc_t *, my_attribute_t *, daisy_t *);
-extern void fill_xml_anchor_opf (misc_t *, my_attribute_t *, daisy_t *);
+extern void parse_clips_opf (misc_t *, my_attribute_t *, daisy_t *, int);
+extern void parse_smil_opf (misc_t *, my_attribute_t *, daisy_t *, int);
+extern void fill_smil_anchor_opf (misc_t *, my_attribute_t *, daisy_t *);
extern void parse_opf (misc_t *, my_attribute_t *, daisy_t *);
extern void parse_ncx (misc_t *, my_attribute_t *, daisy_t *);
extern void get_bookmark (misc_t *, my_attribute_t *, daisy_t *);
@@ -224,3 +226,5 @@ extern void browse (misc_t *, my_attribute_t *, daisy_t *, char *);
extern void usage (int);
extern char *get_mount_point (misc_t *);
extern void handle_discinfo (misc_t *, my_attribute_t *, daisy_t *, char *);
+extern void reset_term_signal_handlers_after_fork (void);
+extern void parse_spine (misc_t *, my_attribute_t *, daisy_t *);
diff --git a/src/daisy2.02.c b/src/daisy2.02.c
index ccac559..8393d89 100644
--- a/src/daisy2.02.c
+++ b/src/daisy2.02.c
@@ -1,6 +1,6 @@
/* daisy2.02.c - functions to insert daisy2.02 info into a struct.
*
- * Copyright (C)2003-2018 J. Lemmens
+ * Copyright (C)2003-2019 J. Lemmens
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -38,7 +38,7 @@ int get_page_number_2 (misc_t *misc, my_attribute_t *my_attribute,
anchor = strdup (strchr (attr, '#') + 1);
*strchr (attr, '#') = 0;
} // if
- get_path_name (misc->daisy_mp, attr, src);
+ get_realpath_name (misc->daisy_mp, attr, src);
doc = htmlParseFile (src, "UTF-8");
if (! (page = xmlReaderWalker (doc)))
{
@@ -75,7 +75,7 @@ int get_page_number_2 (misc_t *misc, my_attribute_t *my_attribute,
free (src);
return 0;
} // if
- if (*misc->label)
+ if (*misc->label && atoi (misc->label) != 0)
{
xmlTextReaderClose (page);
xmlFreeDoc (doc);
@@ -155,24 +155,21 @@ void parse_smil_2 (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
if (strcasecmp (my_attribute->id,
daisy[misc->current].clips_anchor) == 0)
{
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
+ free (daisy[misc->current].smil_anchor);
+ daisy[misc->current].smil_anchor = strdup ("");
if (strchr (my_attribute->src, '#'))
{
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
+ free (daisy[misc->current].smil_anchor);
+ daisy[misc->current].smil_anchor = strdup
(strchr (my_attribute->src, '#') + 1);
*strchr (my_attribute->src, '#') = 0;
} // if
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
+ daisy[misc->current].smil_file = realloc
+ (daisy[misc->current].smil_file,
strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp,
- convert_URL_name (misc, my_attribute->src),
- daisy[misc->current].xml_file);
- free (daisy[misc->current].orig_smil);
- daisy[misc->current].orig_smil =
- strdup (daisy[misc->current].xml_file);
+ get_realpath_name (misc->daisy_mp,
+ convert_URL_name (misc, my_attribute->src),
+ daisy[misc->current].smil_file);
break;
} // if
} // while
@@ -195,10 +192,10 @@ void parse_smil_2 (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
MAX_STR);
} // if
misc->has_audio_tag = 1;
- misc->current_audio_file = realloc
+ misc->current_audio_file = realloc
(misc->current_audio_file,
strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp,
+ get_realpath_name (misc->daisy_mp,
convert_URL_name (misc, my_attribute->src),
misc->current_audio_file);
get_clips (misc, my_attribute);
@@ -237,20 +234,20 @@ void parse_smil_2 (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
#endif
if (strcasecmp (misc->tag, "text") == 0)
{
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
+ free (daisy[misc->current].smil_anchor);
+ daisy[misc->current].smil_anchor = strdup ("");
if (strchr (my_attribute->src, '#'))
{
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor =
+ free (daisy[misc->current].smil_anchor);
+ daisy[misc->current].smil_anchor =
strdup (strchr (my_attribute->src, '#') + 1);
*strchr (my_attribute->src, '#') = 0;
} // if
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
+ daisy[misc->current].smil_file = realloc
+ (daisy[misc->current].smil_file,
strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
- my_attribute->src), daisy[misc->current].xml_file);
+ get_realpath_name (misc->daisy_mp, convert_URL_name (misc,
+ my_attribute->src), daisy[misc->current].smil_file);
if (misc->current + 1 < misc->total_items &&
*daisy[misc->current + 1].clips_anchor &&
strcasecmp (my_attribute->id,
@@ -264,34 +261,35 @@ void parse_smil_2 (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
xmlFreeDoc (doc);
#ifdef DAISY_PLAYER
misc->total_time += daisy[misc->current].duration;
-#endif
+#endif
misc->current++;
if (misc->current >= misc->total_items)
return;
} // while
} // parse_smil_2
-void get_label_2 (misc_t *misc, daisy_t *daisy, int indent)
+void get_label_2 (misc_t *misc, daisy_t *daisy, int indent, int i)
{
- strncpy (daisy[misc->current].label, misc->label, 80);
- daisy[misc->current].label[80] = 0;
+ strncpy (daisy[i].label, misc->label, 80);
+ daisy[i].label[80] = 0;
+ if (misc->verbose)
+ printf ("\r\n%d %s", i + 1, daisy[i].label);
if (misc->displaying == misc->max_y)
misc->displaying = 1;
- if (*daisy[misc->current].class)
+ if (*daisy[i].class)
{
- if (strcasecmp (daisy[misc->current].class, "pagenum") == 0)
- daisy[misc->current].x = 0;
+ if (strcasecmp (daisy[i].class, "pagenum") == 0)
+ daisy[i].x = 0;
else
- if (daisy[misc->current].x == 0)
- daisy[misc->current].x = indent + 3;
- } // if
+ if (daisy[i].x == 0)
+ daisy[i].x = indent + 3;
+ } // if
} // get_label_2
void fill_daisy_struct_2 (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
+ daisy_t *daisy)
{
-// function for daisy 2.02
- int indent = 0;
+ int indent, i;
xmlTextReaderPtr ncc;
htmlDocPtr doc;
@@ -302,22 +300,13 @@ void fill_daisy_struct_2 (misc_t *misc, my_attribute_t *my_attribute,
int e;
e = errno;
- snprintf (misc->str, MAX_STR, gettext ("Cannot read %s"), misc->ncc_html);
- failure (misc, misc->str, e);
+ snprintf (misc->str, MAX_STR, gettext ("Cannot read %s"), misc->ncc_html); failure (misc, misc->str, e);
} // if
- for (misc->current = 0; misc->current < misc->total_items;
- misc->current++)
- {
- *daisy[misc->current].label = 0;
- free (daisy[misc->current].clips_file);
- daisy[misc->current].clips_file = strdup ("");
- daisy[misc->current].page_number = 0;
-#ifdef DAISY_PLAYER
- *daisy[misc->current].class = 0;
-#endif
- } // for
- misc->current = misc->displaying = misc->depth = 0;
+ i = misc->displaying = misc->depth = 0;
+ indent = 0;
+ if (misc->verbose)
+ printf ("\n");
while (1)
{
if (! get_tag_or_label (misc, my_attribute, ncc))
@@ -329,8 +318,9 @@ void fill_daisy_struct_2 (misc_t *misc, my_attribute_t *my_attribute,
if (! get_tag_or_label (misc, my_attribute, ncc))
break;
} while (*misc->label == 0);
- daisy[misc->current].page_number = atoi (misc->label);
+ daisy[i].page_number = atoi (misc->label);
} // if (strcasecmp (my_attribute->class, "page-normal")
+
if (strcasecmp (misc->tag, "h1") == 0 ||
strcasecmp (misc->tag, "h2") == 0 ||
strcasecmp (misc->tag, "h3") == 0 ||
@@ -338,45 +328,50 @@ void fill_daisy_struct_2 (misc_t *misc, my_attribute_t *my_attribute,
strcasecmp (misc->tag, "h5") == 0 ||
strcasecmp (misc->tag, "h6") == 0)
{
- daisy[misc->current].level = misc->tag[1] - '0';
- if (daisy[misc->current].level < 1)
- daisy[misc->current].level = 1;
- if (daisy[misc->current].level > misc->depth)
- misc->depth = daisy[misc->current].level;
- daisy[misc->current].x = daisy[misc->current].level + 3 - 1;
- indent = daisy[misc->current].x =
- (daisy[misc->current].level - 1) * 3 + 1;
+ daisy[i].level = misc->tag[1] - '0';
+ if (daisy[i].level < 1)
+ daisy[i].level = 1;
+ if (daisy[i].level > misc->depth)
+ misc->depth = daisy[i].level;
+ daisy[i].x = daisy[i].level + 3 - 1;
+ indent = daisy[i].x =
+ (daisy[i].level - 1) * 3 + 1;
do
{
if (! get_tag_or_label (misc, my_attribute, ncc))
break;
} while (strcasecmp (misc->tag, "a") != 0);
- free (daisy[misc->current].clips_anchor);
- daisy[misc->current].clips_anchor = strdup ("");
+ free (daisy[i].clips_anchor);
+ daisy[i].clips_anchor = strdup ("");
if (strchr (my_attribute->href, '#'))
{
- free (daisy[misc->current].clips_anchor);
- daisy[misc->current].clips_anchor = strdup
+ free (daisy[i].clips_anchor);
+ daisy[i].clips_anchor = strdup
(strchr (my_attribute->href, '#') + 1);
*strchr (my_attribute->href, '#') = 0;
} // if
- daisy[misc->current].clips_file = realloc
- (daisy[misc->current].clips_file,
+ daisy[i].clips_file = realloc
+ (daisy[i].clips_file,
strlen (misc->daisy_mp) + strlen (my_attribute->href) + 5);
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
- my_attribute->href), daisy[misc->current].clips_file);
+ get_realpath_name (misc->daisy_mp, convert_URL_name (misc,
+ my_attribute->href), daisy[i].clips_file);
do
{
if (! get_tag_or_label (misc, my_attribute, ncc))
break;
} while (*misc->label == 0);
- get_label_2 (misc, daisy, indent);
- misc->current++;
- daisy[misc->current].page_number =
- daisy[misc->current - 1].page_number;
+ get_label_2 (misc, daisy, indent, i);
+ if (misc->verbose)
+ {
+ if (daisy[i].page_number != 0)
+ printf (" (%d) ", daisy[i].page_number);
+ } // if
+ i++;
+ daisy[i].page_number =
+ daisy[i - 1].page_number;
} // if (strcasecmp (misc->tag, "h1") == 0 || ...
} // while
- misc->displaying = misc->current;
+ misc->displaying = i;
parse_smil_2 (misc, my_attribute, daisy);
xmlTextReaderClose (ncc);
xmlFreeDoc (doc);
diff --git a/src/daisy3.c b/src/daisy3.c
index b45e606..3515ad1 100644
--- a/src/daisy3.c
+++ b/src/daisy3.c
@@ -1,6 +1,6 @@
/* daisy3.c - functions to insert daisy3 info into a struct.
*
- * Copyright (C) 2017 J. Lemmens
+ * Copyright (C) 2019 J. Lemmens
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -22,7 +22,7 @@
int get_page_number_3 (misc_t *misc, my_attribute_t *my_attribute)
{
// function for daisy 3
- while (1)
+ while (1)
{
if (! get_tag_or_label (misc, my_attribute, misc->reader))
return 0;
@@ -36,25 +36,18 @@ int get_page_number_3 (misc_t *misc, my_attribute_t *my_attribute)
anchor = strdup ("");
if (strchr (my_attribute->src, '#'))
{
- free (anchor);
anchor = strdup (strchr (my_attribute->src, '#') + 1);
*strchr (my_attribute->src, '#') = 0;
} // if
file = malloc (strlen (misc->daisy_mp) +
strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp,
+ get_realpath_name (misc->daisy_mp,
convert_URL_name (misc, my_attribute->src), file);
doc = htmlParseFile (file, "UTF-8");
if (! (page = xmlReaderWalker (doc)))
{
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"), file);
- free (file);
- free (anchor);
- failure (misc, str, e);
+ misc->ncx_failed = 1;
+ return EXIT_FAILURE;
} // if
if (*anchor)
{
@@ -91,6 +84,19 @@ int get_page_number_3 (misc_t *misc, my_attribute_t *my_attribute)
} // if
} // while
} // if text
+ if (strcasecmp (misc->tag, "pagenum") == 0)
+ {
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, misc->reader))
+ return 0;
+ if (*misc->label)
+ {
+ misc->current_page_number = atoi (misc->label);
+ return 1;
+ } // if
+ } // while
+ } // if pagenum
#endif
#ifdef EBOOK_SPEAKER
@@ -110,47 +116,52 @@ int get_page_number_3 (misc_t *misc, my_attribute_t *my_attribute)
void fill_page_numbers (misc_t *misc, daisy_t *daisy,
my_attribute_t *my_attribute)
{
- int i;
htmlDocPtr doc;
xmlTextReaderPtr page;
- for (i = 0; i < misc->total_items; i++)
+ if (misc->verbose)
{
- daisy[i].page_number = 0;
- if (! (doc = htmlParseFile (daisy[i].xml_file, "UTF-8")))
- failure (misc, daisy[i].xml_file, errno);
+ printf ("\n\n\rGet page numbers ");
+ fflush (stdout);
+ } // if
+ for (misc->current = 0; misc->current < misc->total_items;
+ misc->current++)
+ {
+ daisy[misc->current].page_number = 0;
+ if (! (doc = htmlParseFile (daisy[misc->current].xml_file, "UTF-8")))
+ return;
if (! (page = xmlReaderWalker (doc)))
- failure (misc, daisy[i].xml_file, errno);
+ failure (misc, daisy[misc->current].xml_file, errno);
while (1)
{
if (! get_tag_or_label (misc, my_attribute, page))
break;
-#ifdef DAISY_PLAYER
- if (*my_attribute->id)
- {
- if (! *daisy[i].first_id)
- strncpy (daisy[i].first_id, my_attribute->id, MAX_STR);
- } // if
-#endif
if (strcasecmp (misc->tag, "pagenum") == 0 ||
strcasecmp (my_attribute->class, "pagenum") == 0)
{
parse_page_number (misc, my_attribute, page);
- daisy[i].page_number = misc->current_page_number;
+ daisy[misc->current].page_number = misc->current_page_number;
+ if (misc->verbose)
+ {
+ printf (". ");
+ fflush (stdout);
+ } // if
} // if
if (*my_attribute->id)
{
- if (strcasecmp (my_attribute->id, daisy[i].anchor) == 0)
+ if (strcasecmp
+ (my_attribute->id, daisy[misc->current].xml_anchor) == 0)
{
break;
} // if
} // if
- if (i + 1 < misc->total_items)
+ if (misc->current + 1 < misc->total_items)
{
- if (*daisy[i + 1].anchor)
+ if (*daisy[misc->current + 1].xml_anchor)
{
- if (strcasecmp (my_attribute->id, daisy[i + 1].anchor) == 0)
+ if (strcasecmp (my_attribute->id,
+ daisy[misc->current + 1].xml_anchor) == 0)
{
break;
} // if
@@ -159,6 +170,11 @@ void fill_page_numbers (misc_t *misc, daisy_t *daisy,
} // while
xmlTextReaderClose (page);
xmlFreeDoc (doc);
+ if (misc->verbose)
+ {
+ printf (". ");
+ fflush (stdout);
+ } // if
} // for
} // fill_page_numbers
@@ -190,7 +206,7 @@ void parse_page_number (misc_t *misc, my_attribute_t *my_attribute,
anchor = strdup (strchr (my_attribute->src, '#') + 1);
*strchr (my_attribute->src, '#') = 0;
} // if
- get_path_name (misc->daisy_mp, my_attribute->src, src);
+ get_realpath_name (misc->daisy_mp, my_attribute->src, src);
doc = htmlParseFile (src, "UTF-8");
if (! (text = xmlReaderWalker (doc)))
{
@@ -235,1083 +251,10 @@ void parse_page_number (misc_t *misc, my_attribute_t *my_attribute,
} // while
} // parse_page_number
-void fill_xml_anchor_ncx (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
-// first of all fill daisy struct xml_file and anchor
- htmlDocPtr doc;
- xmlTextReaderPtr ncx;
-
- misc->total_items = misc->items_in_ncx;
- if (! (doc = htmlParseFile (misc->ncx_name, "UTF-8")))
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"), misc->ncx_name);
- failure (misc, str, e);
- } // if
- if (! (ncx = xmlReaderWalker (doc)))
- failure (misc, misc->ncx_name, errno);
- misc->depth = 0;
- misc->current = misc->displaying = 0;
- while (1)
- {
- free (daisy[misc->current].xml_file);
- daisy[misc->current].xml_file = strdup ("");
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- daisy[misc->current].x = 0;
- *daisy[misc->current].label = 0;
- daisy[misc->current].page_number = 0;
- if (misc->current >= misc->total_items)
- break;
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
- if (strcasecmp (misc->tag, "doctitle") == 0)
- {
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
- if (strcasecmp (misc->tag, "/doctitle") == 0)
- break;
- if (*misc->label)
- {
- strncpy (misc->daisy_title, misc->label, MAX_STR - 1);
- break;
- } // if
- } // while
- } // if doctitle
- if (strcasecmp (misc->tag, "navpoint") == 0)
- {
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
- if (strcasecmp (misc->tag, "content") == 0)
- {
- htmlDocPtr doc;
- xmlTextReaderPtr content;
- char *src;
-
- src = strdup (my_attribute->src);
- daisy[misc->current].xml_file = realloc (
- daisy[misc->current].xml_file, strlen (misc->daisy_mp) +
- strlen (src) + 5);
- sprintf (daisy[misc->current].xml_file, "%s/%s",
- misc->daisy_mp, src);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (daisy[misc->current].xml_file, '#'))
- {
- daisy[misc->current].anchor = strdup
- (strchr (daisy[misc->current].xml_file, '#') + 1);
- *strchr (daisy[misc->current].xml_file, '#') = 0;
- } // if
- daisy[misc->current].xml_file = strdup
- (convert_URL_name (misc, daisy[misc->current].xml_file));
- doc = htmlParseFile (daisy[misc->current].xml_file, "UTF-8");
- if (! (content = xmlReaderWalker (doc)))
- {
- int e;
- char *str;
-
- e = errno;
- str = strdup ((gettext
- ("Cannot read %s"), daisy[misc->current].xml_file));
- free (src);
- failure (misc, str, e);
- } // if
-
- if (*daisy[misc->current].anchor)
- {
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, content))
- break;
- if (*my_attribute->id)
- {
- if (strcasecmp (my_attribute->id,
- daisy[misc->current].anchor) == 0)
- {
- break;
- } // if
- } // if
- } // while
- } // if
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, content))
- break;
-#ifdef DAISY_PLAYER
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id,
- my_attribute->id, MAX_STR);
- } // if
-#endif
- if (strcasecmp (misc->tag, "text") == 0)
- {
- daisy[misc->current].anchor = strdup ("");
- if (strchr (my_attribute->src, '#'))
- {
- daisy[misc->current].anchor = strdup
- (strchr (my_attribute->src, '#') + 1);
- *strchr (my_attribute->src, '#') = 0;
- } // if
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file, strlen
- (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp,
- convert_URL_name (misc, my_attribute->src),
- daisy[misc->current].xml_file);
- break;
- } // if
- } // while
- xmlTextReaderClose (content);
- xmlFreeDoc (doc);
- misc->current++;
- break;
- } // if (strcasecmp (misc->tag, "content") == 0)
- } // while
- } // if (strcasecmp (misc->tag, "navpoint") == 0)
- } // while
- misc->total_items = misc->current;
-} // fill_xml_anchor_ncx
-
-void parse_content (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
- htmlDocPtr doc;
- xmlTextReaderPtr content;
-
-#ifdef DAISY_PLAYER
- daisy[misc->current].clips_file = realloc (daisy[misc->current].clips_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- sprintf (daisy[misc->current].clips_file, "%s/%s",
- misc->daisy_mp, my_attribute->src);
- if (strchr (daisy[misc->current].clips_file, '#'))
- {
- free (daisy[misc->current].clips_anchor);
- daisy[misc->current].clips_anchor =
- strdup (strchr (daisy[misc->current].clips_file, '#') + 1);
- *strchr (daisy[misc->current].clips_file, '#') = 0;
- } // if
- daisy[misc->current].clips_file =
- strdup (convert_URL_name (misc, daisy[misc->current].clips_file));
- if (! (doc = htmlParseFile (daisy[misc->current].clips_file, "UTF-8")))
- failure (misc, daisy[misc->current].clips_file, errno);
-#endif
-#ifdef EBOOK_SPEAKER
- if (! (doc = htmlParseFile (daisy[misc->current].xml_file, "UTF-8")))
- failure (misc, daisy[misc->current].xml_file, errno);
-#endif
- if (! (content = xmlReaderWalker (doc)))
- {
- int e;
- char *str;
-
- e = errno;
- str = strdup
- ((gettext ("Cannot read %s"), daisy[misc->current].xml_file));
- failure (misc, str, e);
- } // if
-
- if (*daisy[misc->current].anchor)
- {
-// look for it
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, content))
- break;
- if (*my_attribute->id)
- {
- if (strcasecmp (my_attribute->id,
- daisy[misc->current].anchor) == 0)
- {
- break;
- } // if
- } // if
- } // while
- } // if
-
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, content))
- break;
-#ifdef DAISY_PLAYER
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
- if (strcasecmp (misc->tag, "audio") == 0)
- break;
-#endif
-#ifdef EBOOK_SPEAKER
- if (strcasecmp (misc->tag, "text") == 0)
- {
- parse_text (misc, my_attribute, daisy);
- break;
- } // if
-#endif
- if (misc->current + 1 < misc->total_items)
- {
- if (*daisy[misc->current + 1].anchor)
- {
- if (strcasecmp (my_attribute->id,
- daisy[misc->current + 1].anchor) == 0)
- {
- break;
- } // if
- } // if
- } // if
- } // while
- xmlTextReaderClose (content);
- xmlFreeDoc (doc);
-} // parse_content
-
-void fill_item (misc_t *misc, daisy_t *daisy)
-{
- daisy[misc->current].x = daisy[misc->current].level * 3 - 1;
- daisy[misc->current].screen = misc->current / misc->max_y;
- daisy[misc->current].y =
- misc->current - (daisy[misc->current].screen * misc->max_y);
-} // fill_item
-
-void parse_text (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
- htmlDocPtr doc;
- xmlTextReaderPtr text;
- int remainder;
-
- doc = htmlParseFile (daisy[misc->current].xml_file, "UTF-8");
- if (! (text = xmlReaderWalker (doc)))
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"),
- daisy[misc->current].xml_file);
- failure (misc, str, e);
- } // if
-
- daisy[misc->current].level = 1;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, text))
- break;
-#ifdef DAISY_PLAYER
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
-#endif
- if (strcasecmp (misc->tag, "h1") == 0 ||
- strcasecmp (misc->tag, "h2") == 0 ||
- strcasecmp (misc->tag, "h3") == 0 ||
- strcasecmp (misc->tag, "h4") == 0 ||
- strcasecmp (misc->tag, "h5") == 0 ||
- strcasecmp (misc->tag, "h6") == 0 ||
- strcasecmp (misc->tag, "title") == 0 ||
- strcasecmp (misc->tag, "doctitle") == 0)
- {
- if (strcasecmp (misc->tag, "title") == 0 ||
- strcasecmp (misc->tag, "doctitle") == 0)
- {
- daisy[misc->current].level = 1;
- }
- else
- daisy[misc->current].level = misc->tag[1] - 48;
- if (daisy[misc->current].level > misc->depth)
- misc->depth = daisy[misc->current].level;
- if (! *daisy[misc->current].anchor)
- break;
- } // if
- if (*daisy[misc->current].anchor &&
- strcasecmp (my_attribute->id, daisy[misc->current].anchor) == 0)
- break;
- } // while
-
- *daisy[misc->current].label = 0;
- if (! xmlTextReaderIsEmptyElement (text))
- {
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, text))
- break;
- if (strcasecmp (misc->tag, "/h1") == 0 ||
- strcasecmp (misc->tag, "/h2") == 0 ||
- strcasecmp (misc->tag, "/h3") == 0 ||
- strcasecmp (misc->tag, "/h4") == 0 ||
- strcasecmp (misc->tag, "/h5") == 0 ||
- strcasecmp (misc->tag, "/h6") == 0 ||
- strcasecmp (misc->tag, "/title") == 0 ||
- strcasecmp (misc->tag, "/doctitle") == 0)
- {
- break;
- } // if
- if (*misc->label)
- {
- remainder = 75 - strlen (daisy[misc->current].label);
- if (remainder > 0)
- {
- strncat (daisy[misc->current].label, misc->label, remainder);
- strcat (daisy[misc->current].label, " ");
- }
- else
- break;
- } // if
- } // while
- } // ifh
- daisy[misc->current].x = daisy[misc->current].level * 3 - 1;
- daisy[misc->current].screen = misc->current / misc->max_y;
- daisy[misc->current].y =
- misc->current - (daisy[misc->current].screen * misc->max_y);
-#ifdef EBOOK_SPEAKER
- daisy[misc->current].n_phrases = 0;
-#endif
- xmlTextReaderClose (text);
- xmlFreeDoc (doc);
-} // parse_text
-
-/* do not use
-void parse_href (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
-{
- htmlDocPtr doc;
- xmlTextReaderPtr href;
- int remainder;
-
- if (! (doc = htmlParseFile (daisy[misc->current].xml_file, "UTF-8")))
- failure (misc, daisy[misc->current].xml_file, errno);
- if (! (href = xmlReaderWalker (doc)))
- {
- int e;
-
- e = errno;
- snprintf (misc->str, MAX_STR,
- gettext ("Cannot read %s"), my_attribute->href);
- failure (misc, misc->str, e);
- } // if
-\
- daisy[misc->current].level = 1;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, href))
- break;
-#ifdef DAISY_PLAYER
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
-#endif
- if (strcasecmp (misc->tag, "text") == 0)
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (my_attribute->src, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (my_attribute->src, '#') + 1);
- *strchr (my_attribute->src, '#') = 0;
- } // if
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
- my_attribute->src), daisy[misc->current].xml_file);
- parse_text (misc, my_attribute, daisy);
- xmlTextReaderClose (href);
- xmlFreeDoc (doc);
- return;
- } // if
-
-// some EPUB use this
- if (strcasecmp (misc->tag, "i") == 0)
- {
- xmlTextReaderClose (href);
- xmlFreeDoc (doc);
- return;
- } // if
-
-// or
- if (strcasecmp (misc->tag, "title") == 0 ||
- strcasecmp (misc->tag, "h1") == 0 ||
- strcasecmp (misc->tag, "h2") == 0 ||
- strcasecmp (misc->tag, "h3") == 0 ||
- strcasecmp (misc->tag, "h4") == 0 ||
- strcasecmp (misc->tag, "h5") == 0 ||
- strcasecmp (misc->tag, "h6") == 0)
- {
- if (strcasecmp (misc->tag, "title") == 0)
- daisy[misc->current].level = 1;
- else
- daisy[misc->current].level = misc->tag[1] - 48;
- *daisy[misc->current].label = 0;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, href))
- break;
- if (strcasecmp (misc->tag, "/h1") == 0 ||
- strcasecmp (misc->tag, "/h2") == 0 ||
- strcasecmp (misc->tag, "/h3") == 0 ||
- strcasecmp (misc->tag, "/h4") == 0 ||
- strcasecmp (misc->tag, "/h5") == 0 ||
- strcasecmp (misc->tag, "/h6") == 0 ||
- strcasecmp (misc->tag, "/title") == 0 ||
- strcasecmp (misc->tag, "/doctitle") == 0)
- {
- break;
- } // if
- *daisy[misc->current].label = 0;
- if (*misc->label)
- {
- remainder = 75 - strlen (daisy[misc->current].label);
- if (remainder > 0)
- {
- strncat (daisy[misc->current].label, misc->label,remainder);
- strcat (daisy[misc->current].label, " ");
- }
- else
- break;
- } // if
- } // while
- fill_item (misc, daisy);
- xmlTextReaderClose (href);
- xmlFreeDoc (doc);
- return;
- } // if (strcasecmp (misc->tag, "h1") == 0 ||
-
-// others use this
- if (strcasecmp (my_attribute->class, "h1") == 0 ||
- strcasecmp (my_attribute->class, "h2") == 0 ||
- strcasecmp (my_attribute->class, "h3") == 0 ||
- strcasecmp (my_attribute->class, "h4") == 0 ||
- strcasecmp (my_attribute->class, "h5") == 0 ||
- strcasecmp (my_attribute->class, "h6") == 0)
- {
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, href))
- break;
- if (strcasecmp (misc->tag, "text") == 0)
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (my_attribute->src, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (my_attribute->src, '#') + 1);
- *strchr (my_attribute->src, '#') = 0;
- } // if
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
- my_attribute->src), daisy[misc->current].xml_file);
- xmlTextReaderClose (href);
- xmlFreeDoc (doc);
- return;
- } // if
- } // while
- xmlTextReaderClose (href);
- xmlFreeDoc (doc);
- return;
- } // if (strcasecmp (my_attribute->class, "h1") == 0 ||
- } // while
- xmlTextReaderClose (href);
- xmlFreeDoc (doc);
-} // parse_href
-
-void parse_manifest (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
- xmlTextReaderPtr manifest;
- htmlDocPtr doc;
- char *idref;
-
- idref = strdup (my_attribute->idref);
- if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
- {
- free (idref);
- failure (misc, misc->opf_name, errno);
- } // if
- if (! (manifest = xmlReaderWalker (doc)))
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"), misc->opf_name);
- free (idref);
- failure (misc, str, e);
- } // if
- daisy[misc->current].x = 0;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, manifest))
- break;
- if (strcasecmp (my_attribute->id, idref) == 0)
- {
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->href) + 5);
- sprintf (daisy[misc->current].xml_file, "%s/%s",
- misc->daisy_mp, my_attribute->href);
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (daisy[misc->current].xml_file, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (daisy[misc->current].xml_file, '#') + 1);
- *strchr (daisy[misc->current].xml_file, '#') = 0;
- } // if
- free (daisy[misc->current].xml_file);
- daisy[misc->current].xml_file =
- strdup (convert_URL_name (misc, daisy[misc->current].xml_file));
- parse_href (misc, my_attribute, daisy);
-#ifdef DAISY_PLAYER
- free (daisy[misc->current].clips_file);
- daisy[misc->current].clips_file =
- strdup (daisy[misc->current].xml_file);
- free (daisy[misc->current].clips_anchor);
- daisy[misc->current].clips_anchor =
- strdup (daisy[misc->current].anchor);
- parse_smil_3 (misc, my_attribute, daisy);
-#endif
- if (daisy[misc->current].level > misc->depth)
- misc->depth = daisy[misc->current].level;
- misc->current++;
- daisy[misc->current].level = 1;
- daisy[misc->current].x = 0;
- break;
- } // if
- } // while
- xmlTextReaderClose (manifest);
- xmlFreeDoc (doc);
- free (idref);
-} // parse_manifest
-*/
-
-#ifdef DAISY_PLAYER
-void parse_clips (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
- xmlTextReaderPtr parse;
- htmlDocPtr doc;
-
- doc = htmlParseFile (daisy[misc->current].xml_file, "UTF-8");
- if (! (parse = xmlReaderWalker (doc)))
- {
- endwin ();
- beep ();
- printf ("\n");
- printf (gettext ("Cannot read %s"), daisy[misc->current].xml_file);
- printf ("\n");
- fflush (stdout);
- _exit (1);
- } // if
-
-// parse this smil
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, parse))
- break;
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
- if (strcasecmp (daisy[misc->current].anchor, my_attribute->id) == 0)
- {
- break;
- } // if
- } // while
- daisy[misc->current].duration = 0;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, parse))
- break;
-// get misc->clip_begin
- if (strcasecmp (misc->tag, "audio") == 0)
- {
- get_clips (misc, my_attribute);
- daisy[misc->current].begin = misc->clip_begin;
- daisy[misc->current].duration += misc->clip_end - misc->clip_begin;
- } // if
- } // while
-
-// get clip_end
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, parse))
- break;
- if (misc->current + 1 < misc->total_items &&
- *daisy[misc->current + 1].anchor)
- {
- if (strcasecmp (my_attribute->id,
- daisy[misc->current + 1].anchor) == 0)
- break;
- } // if
- if (strcasecmp (misc->tag, "audio") == 0)
- {
- get_clips (misc, my_attribute);
- daisy[misc->current].duration += misc->clip_end - misc->clip_begin;
- } // IF
- if (misc->current + 1 < misc->total_items &&
- *daisy[misc->current + 1].anchor)
- {
- if (strcasecmp (my_attribute->id, daisy[misc->current + 1].anchor) == 0)
- {
- break;
- } // if
- } // if
- } // while
- misc->total_time += daisy[misc->current].duration;
- xmlTextReaderClose (parse);
- xmlFreeDoc (doc);
-} // parse_clips
-#endif
-
-#ifdef DAISY_PLAYER
-void parse_smil_3 (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
- xmlTextReaderPtr smil;
- htmlDocPtr doc;
-
- daisy[misc->current].clips_file = realloc
- (daisy[misc->current].clips_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->href) + 5);
- sprintf (daisy[misc->current].clips_file, "%s/%s",
- misc->daisy_mp, my_attribute->href);
- daisy[misc->current].clips_file =
- strdup (convert_URL_name (misc, daisy[misc->current].clips_file));
- if (! (doc = htmlParseFile (daisy[misc->current].clips_file, "UTF-8")))
- failure (misc, daisy[misc->current].clips_file, errno);
- if (! (smil = xmlReaderWalker (doc)))
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR,
- gettext ("Cannot read %s"), daisy[misc->current].clips_file);
- failure (misc, str, e);
- } // if
- daisy[misc->current].level = misc->depth = 1;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, smil))
- break;
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
- if (strcasecmp (misc->tag, "text") == 0)
- {
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->src) + 1);
- sprintf (daisy[misc->current].xml_file, "%s/%s",
- misc->daisy_mp, my_attribute->src);
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (daisy[misc->current].xml_file, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (daisy[misc->current].xml_file, '#') + 1);
- *strchr (daisy[misc->current].xml_file, '#') = 0;
- } // if
- free (daisy[misc->current].xml_file);
- daisy[misc->current].xml_file =
- strdup (convert_URL_name (misc, daisy[misc->current].xml_file));
- } // if
- if (! *daisy[misc->current].first_id)
- {
- if (*my_attribute->id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
- if (strcasecmp (misc->tag, "audio") == 0)
- {
- parse_clips (misc, my_attribute, daisy);
- } // if
- misc->current++;
- if (misc->current >= misc->total_items)
- {
- break;
- } // if
- } // while
- xmlTextReaderClose (smil);
- xmlFreeDoc (doc);
-} // parse_smil_3
-#endif
-
-void fill_xml_anchor_opf (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
-// first of all fill daisy struct xml_file and anchor
- htmlDocPtr doc;
- xmlTextReaderPtr opf;
-
- if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
- {
- int e;
- char *str;
-
- e = errno;
- beep ();
- str = malloc (50 + strlen (misc->opf_name));
- sprintf (str, "fill_xml_anchor_opf %s", misc->opf_name);
- failure (misc, str, e);
- } // if
- if ((opf = xmlReaderWalker (doc)) == NULL)
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"), misc->opf_name);
- failure (misc, str, e);
- } // if
-
- misc->depth = 0;
- misc->current = 0;
- while (1)
- {
- free (daisy[misc->current].xml_file);
- daisy[misc->current].xml_file = strdup ("");
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- daisy[misc->current].x = 0;
- *daisy[misc->current].label = 0;
- daisy[misc->current].page_number = 0;
- if (! get_tag_or_label (misc, my_attribute, opf))
- break;
-#ifdef EBOOK_SPEAKER
- if (strcasecmp (misc->tag, "itemref") == 0)
- {
- htmlDocPtr doc;
- xmlTextReaderPtr ptr;
- char *idref;
-
- idref = strdup (my_attribute->idref);
- if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
- {
- free (idref);
- failure (misc, misc->opf_name, errno);
- } // if
- if (! (ptr = xmlReaderWalker (doc)))
- {
- free (idref);
- failure (misc, misc->opf_name, errno);
- } // if
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, ptr))
- break;
- if (strcasecmp (my_attribute->id, idref) == 0)
- {
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->href) + 5);
- sprintf (daisy[misc->current].xml_file, "%s/%s",
- misc->daisy_mp, my_attribute->href);
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (daisy[misc->current].xml_file, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (daisy[misc->current].xml_file, '#') + 1);
- *strchr (daisy[misc->current].xml_file, '#') = 0;
- } // if
- daisy[misc->current].xml_file =
- strdup (convert_URL_name (misc, daisy[misc->current].xml_file));
-// if it is a smil
- {
- htmlDocPtr doc;
- xmlTextReaderPtr smil;
-
- if (! (doc =
- htmlParseFile (daisy[misc->current].xml_file, "UTF-8")))
- {
- free (idref);
- failure (misc, daisy[misc->current].xml_file, errno);
- } // if
- if ((smil = xmlReaderWalker (doc)) == NULL)
- {
- free (idref);
- failure (misc, daisy[misc->current].xml_file, errno);
- } // if
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, smil))
- break;
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id,
- my_attribute->id, MAX_STR);
- } // if
- if (strcasecmp (misc->tag, "text") == 0)
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (my_attribute->src, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (my_attribute->src, '#') + 1);
- *strchr (my_attribute->src, '#') = 0;
- } // if
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
- my_attribute->src), daisy[misc->current].xml_file);
- break;
- } // if
- } // while
- xmlTextReaderClose (smil);
- xmlFreeDoc (doc);
- } // if it is a smil
- parse_text (misc, my_attribute, daisy);
- break;
- } // if
- } // while
- xmlTextReaderClose (ptr);
- xmlFreeDoc (doc);
- misc->current++;
- if (misc->current >= misc->total_items)
- break;
- } // if itemref
-#endif // EBOOK_SPEAKER
-#ifdef DAISY_PLAYER
- if (strcasestr (my_attribute->media_type, "application/smil"))
- {
- htmlDocPtr doc;
- xmlTextReaderPtr smil;
-
- daisy[misc->current].clips_file = realloc
- (daisy[misc->current].clips_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->href) + 5);
- sprintf (daisy[misc->current].clips_file, "%s/%s",
- misc->daisy_mp, my_attribute->href);
- free (daisy[misc->current].clips_anchor);
- daisy[misc->current].clips_anchor = strdup ("");
- if (strchr (daisy[misc->current].clips_file, '#'))
- {
- free (daisy[misc->current].clips_anchor);
- daisy[misc->current].clips_anchor = strdup
- (strchr (daisy[misc->current].clips_file, '#') + 1);
- *strchr (daisy[misc->current].clips_file, '#') = 0;
- } // if
- free (daisy[misc->current].clips_file);
- daisy[misc->current].clips_file =
- strdup(convert_URL_name (misc, daisy[misc->current].clips_file));
- if (! (doc = htmlParseFile (daisy[misc->current].clips_file, "UTF-8")))
- {
- failure (misc, daisy[misc->current].clips_file, errno);
- } // if
- if ((smil = xmlReaderWalker (doc)) == NULL)
- {
- failure (misc, daisy[misc->current].clips_file, errno);
- } // if
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, smil))
- break;
- if (*my_attribute->id)
- {
- if (! *daisy[misc->current].first_id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
- if (strcasecmp (misc->tag, "text") == 0)
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup ("");
- if (strchr (my_attribute->src, '#'))
- {
- free (daisy[misc->current].anchor);
- daisy[misc->current].anchor = strdup
- (strchr (my_attribute->src, '#') + 1);
- *strchr (my_attribute->src, '#') = 0;
- } // if
- daisy[misc->current].xml_file = realloc
- (daisy[misc->current].xml_file,
- strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
- get_path_name (misc->daisy_mp, convert_URL_name (misc,
- my_attribute->src), daisy[misc->current].xml_file);
- parse_text (misc, my_attribute, daisy);
- break;
- } // if
- } // while
- xmlTextReaderClose (smil);
- xmlFreeDoc (doc);
- misc->current++;
- if (misc->current >= misc->total_items)
- break;
- } // if application/smil
-#endif // DAISY_PLAYER
- } // while
- xmlTextReaderClose (opf);
- misc->total_items = misc->current;
-#ifdef DAISY_PLAYER
- if (misc->total_items == 0)
- {
- beep ();
- quit_daisy_player (misc, my_attribute, daisy);
- printf ("%s\n", gettext (
- "This book has no audio. Play this book with eBook-speaker"));
- _exit (EXIT_FAILURE);
- } // if
-#endif // DAISY_PLAYER
-} // fill_xml_anchor_opf
-
-void parse_opf (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
-{
- int i;
- char *name;
- htmlDocPtr doc;
- xmlTextReaderPtr opf;
-
- if (misc->items_in_opf == 0)
- {
- endwin ();
- beep ();
- printf ("%s\n", gettext ("No items found. Try option \"-N\"."));
- exit (0);
- } // if
-
- misc->total_items = misc->items_in_opf;
- if (misc->total_items == 0)
- misc->total_items = 1;
-#ifdef DAISY_PLAYER
- for (i = 0; i < misc->total_items; i++)
- *daisy[i].first_id = 0;
-#endif
- free (misc->daisy_mp);
- name = strdup (misc->opf_name);
- misc->daisy_mp = strdup (dirname (name));
- free (name);
- fill_xml_anchor_opf (misc, my_attribute, daisy);
- if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
- {
- int e;
- char *str;
-
- e = errno;
- beep ();
- str = malloc (20 + strlen (misc->opf_name));
- sprintf (str, "parse_opf: %s", misc->opf_name);
- failure (misc, str, e);
- } // if
- if ((opf = xmlReaderWalker (doc)) == NULL)
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"), misc->opf_name);
- failure (misc, str, e);
- } // if
-#ifdef DAISY_PLAYER
- misc->total_time = 0;
-#endif
- misc->current = misc->displaying = 0;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, opf))
- break;
- if (strcasecmp (misc->tag, "language") == 0)
- {
- if (xmlTextReaderIsEmptyElement (opf))
- continue;
- do
- {
- if (! get_tag_or_label (misc, my_attribute, opf))
- break;
- } while (! *misc->label);
- strncpy (misc->daisy_language, misc->label, MAX_STR - 1);
- } // if language
- if (strcasecmp (misc->tag, "totalTime") == 0)
- {
- if (xmlTextReaderIsEmptyElement (opf))
- continue;
- do
- {
- if (! get_tag_or_label (misc, my_attribute, opf))
- break;
- } while (! *misc->label);
- strncpy (misc->ncc_totalTime, misc->label, MAX_STR - 1);
- } // if (strcasestr (misc->tag, "totalTime") == 0)
- if (strcasecmp (misc->tag, "Title") == 0)
- {
- if (xmlTextReaderIsEmptyElement (opf))
- continue;
- do
- {
- if (! get_tag_or_label (misc, my_attribute, opf))
- break;
- if (*misc->label)
- {
- snprintf (misc->daisy_title, 75, "%s", misc->label);
- snprintf (misc->bookmark_title, MAX_STR - 1,
- "%s", misc->label);
- if (strchr (misc->bookmark_title, '/'))
- *strchr (misc->bookmark_title, '/') = '-';
- break;
- } // if
- } while (strcasestr (misc->tag, "/title") != 0);
- } // if title
-
-/* do not use
- if (strcasecmp (misc->tag, "spine") == 0)
- {
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, opf))
- break;
- if (strcasecmp (misc->tag, "itemref") == 0)
- parse_manifest (misc, my_attribute, daisy);
- } // while
- } // if spine
-*/
-
- } // while
- xmlTextReaderClose (opf);
- xmlFreeDoc (doc);
- misc->items_in_opf = misc->total_items;
-
- for (i = 0; i < misc->items_in_opf; i++)
- {
-#ifdef EBOOK_SPEAKER
- free (daisy[i].orig_smil);
- daisy[i].orig_smil = strdup (daisy[i].xml_file);
- *daisy[i].class = 0;
-#endif
- } //for
-} // parse_opf
-
void read_daisy_3 (misc_t *misc, my_attribute_t *my_attribute,
daisy_t *daisy)
{
+
// when OPF or NCX is forced
if (misc->use_OPF)
parse_opf (misc, my_attribute, daisy);
@@ -1328,126 +271,3 @@ void read_daisy_3 (misc_t *misc, my_attribute_t *my_attribute,
parse_ncx (misc, my_attribute, daisy);
} // if
} // read_daisy_3
-
-void parse_ncx (misc_t *misc, my_attribute_t *my_attribute,
- daisy_t *daisy)
-{
- htmlDocPtr doc;
- xmlTextReaderPtr ncx;
- int i;
-
- if (misc->items_in_ncx == 0)
- {
- endwin ();
- beep ();
- printf ("%s\n", gettext ("No items found. Try option \"-O\"."));
- exit (0);
- } // if
-
- misc->total_items = misc->items_in_ncx;
- if (misc->total_items == 0)
- misc->total_items = 1;
- free (misc->daisy_mp);
- misc->daisy_mp = strdup (misc->ncx_name);
- misc->daisy_mp = strdup (dirname (misc->daisy_mp));
-#ifdef DAISY_PLAYER
- for (i = 0; i < misc->items_in_ncx; i++)
- *daisy[i].first_id = 0;
-#endif
- fill_xml_anchor_ncx (misc, my_attribute, daisy);
- if (! (doc = htmlParseFile (misc->ncx_name, "UTF-8")))
- {
- int e;
- char str[MAX_STR];
-
- e = errno;
- snprintf (str, MAX_STR, gettext ("Cannot read %s"), misc->ncx_name);
- failure (misc, str, e);
- } // if
- ncx = xmlReaderWalker (doc);
- misc->current = misc->displaying = 0;
- misc->level = misc->depth = 0;
- daisy[misc->current].x = 0;
- while (1)
- {
- if (misc->current >= misc->total_items)
- break;
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
-#ifdef DAISY_PLAYER
- if (! *daisy[misc->current].first_id)
- {
- if (*my_attribute->id)
- strncpy (daisy[misc->current].first_id, my_attribute->id,
- MAX_STR);
- } // if
-#endif
- if (strcasecmp (misc->tag, "docAuthor") == 0)
- {
- if (xmlTextReaderIsEmptyElement (ncx))
- continue;
- do
- {
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
- } while (strcasecmp (misc->tag, "/docAuthor") != 0);
- } // if (strcasecmp (misc->tag, "docAuthor") == 0)
- if (strcasecmp (misc->tag, "navpoint") == 0)
- {
- misc->level++;
- if (misc->level > misc->depth)
- misc->depth = misc->level;
-#ifdef EBOOK_SPEAKER
- strncpy (daisy[misc->current].my_class, my_attribute->my_class,
- MAX_STR - 1);
-#endif
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
- if (strcasecmp (misc->tag, "text") == 0)
- {
- *daisy[misc->current].label = 0;
- if (xmlTextReaderIsEmptyElement (ncx))
- continue;
- while (1)
- {
- if (! get_tag_or_label (misc, my_attribute, ncx))
- break;
- if (strcasecmp (misc->tag, "/text") == 0)
- break;
- if (*misc->label)
- {
- strncpy (daisy[misc->current].label, misc->label,
- 75 - strlen (daisy[misc->current].label));
- break;
- } // if
- } // while
- } // if (strcasecmp (misc->tag, "text") == 0)
- if (strcasecmp (misc->tag, "content") == 0)
- {
- parse_content (misc, my_attribute, daisy);
- daisy[misc->current].level = misc->level;
- fill_item (misc, daisy);
- misc->current++;
- daisy[misc->current].x = 0;
- break;
- } // if (strcasecmp (misc->tag, "content") == 0)
- } // while
- } // if (strcasecmp (misc->tag, "navpoint") == 0)
- if (strcasecmp (misc->tag, "/navpoint") == 0)
- misc->level--;
- } // while
- xmlTextReaderClose (ncx);
- xmlFreeDoc (doc);
- misc->total_items = misc->current;
-
- for (i = 0; i < misc->items_in_ncx; i++)
- {
-#ifdef EBOOK_SPEAKER
- free (daisy[i].orig_smil);
- daisy[i].orig_smil = strdup (daisy[i].xml_file);
- *daisy[i].class = 0;
-#endif
- } //for
-} // parse_ncx
diff --git a/src/madplay/m4/Makefile b/src/madplay/m4/Makefile
index 0c2d287..1806da8 100644
--- a/src/madplay/m4/Makefile
+++ b/src/madplay/m4/Makefile
@@ -168,7 +168,7 @@ PACKAGE_VERSION = 0.15.2b
PATH_SEPARATOR = :
POW_LIB =
SET_MAKE =
-SHELL = /bin/bash
+SHELL = /bin/sh
STRIP =
VERSION = 0.15.2b
YACC = bison -y
diff --git a/src/ncx.c b/src/ncx.c
new file mode 100644
index 0000000..d63d906
--- /dev/null
+++ b/src/ncx.c
@@ -0,0 +1,392 @@
+/* daisy3.c - functions to insert daisy3 info into a struct. (ncx)
+ *
+ * Copyright (C) 2019 J. Lemmens
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+ * Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include "daisy.h"
+
+void fill_smil_anchor_ncx (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy)
+{
+// first of all fill daisy struct smil/xml_file and anchor
+ htmlDocPtr doc;
+ xmlTextReaderPtr ncx;
+
+ misc->total_items = misc->items_in_ncx;
+ if (! (doc = htmlParseFile (misc->ncx_name, "UTF-8")))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+ if (! (ncx = xmlReaderWalker (doc)))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+ misc->depth = 0;
+ misc->current = misc->displaying = 0;
+ if (misc->verbose)
+ {
+ printf ("\n\rParsing SMIL files\n");
+ fflush (stdout);
+ } // if
+ while (1)
+ {
+ free (daisy[misc->current].smil_file);
+ daisy[misc->current].smil_file = strdup ("");
+ free (daisy[misc->current].smil_anchor);
+ daisy[misc->current].smil_anchor = strdup ("");
+ daisy[misc->current].x = 0;
+ *daisy[misc->current].label = 0;
+ daisy[misc->current].page_number = 0;
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+ if (strcasecmp (misc->tag, "doctitle") == 0)
+ {
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+ if (strcasecmp (misc->tag, "/doctitle") == 0)
+ break;
+ if (*misc->label)
+ {
+ strncpy (misc->daisy_title, misc->label, MAX_STR - 1);
+ break;
+ } // if
+ } // while
+ if (misc->verbose)
+ {
+ printf ("\n\rTitle: %s ", misc->daisy_title);
+ fflush (stdout);
+ } // if
+ } // if doctitle
+ if (strcasecmp (misc->tag, "navpoint") == 0)
+ {
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+ if (strcasecmp (misc->tag, "content") == 0)
+ {
+ htmlDocPtr doc;
+ xmlTextReaderPtr content;
+ char *src;
+
+ src = strdup (my_attribute->src);
+ daisy[misc->current].smil_file = realloc (
+ daisy[misc->current].smil_file, strlen (misc->daisy_mp) +
+ strlen (src) + 5);
+ sprintf (daisy[misc->current].smil_file, "%s/%s",
+ misc->daisy_mp, src);
+ daisy[misc->current].smil_anchor = strdup ("");
+ if (strchr (daisy[misc->current].smil_file, '#'))
+ {
+ daisy[misc->current].smil_anchor = strdup
+ (strchr (daisy[misc->current].smil_file, '#') + 1);
+ *strchr (daisy[misc->current].smil_file, '#') = 0;
+ } // if
+ daisy[misc->current].smil_file = strdup
+ (convert_URL_name (misc, daisy[misc->current].smil_file));
+ doc = htmlParseFile (daisy[misc->current].smil_file, "UTF-8");
+ if (! (content = xmlReaderWalker (doc)))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+
+ if (*daisy[misc->current].smil_anchor)
+ {
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, content))
+ break;
+ if (*my_attribute->id)
+ {
+ if (strcasecmp (my_attribute->id,
+ daisy[misc->current].smil_anchor) == 0)
+ {
+ break;
+ } // if
+ } // if
+ } // while
+ } // if
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, content))
+ break;
+ if (*my_attribute->id)
+ {
+ if (! *daisy[misc->current].first_id)
+ strncpy (daisy[misc->current].first_id,
+ my_attribute->id, MAX_STR);
+ } // if
+ if (strcasecmp (misc->tag, "text") == 0)
+ {
+ daisy[misc->current].xml_anchor = strdup ("");
+ if (strchr (my_attribute->src, '#'))
+ {
+ daisy[misc->current].xml_anchor = strdup
+ (strchr (my_attribute->src, '#') + 1);
+ *strchr (my_attribute->src, '#') = 0;
+ } // if
+ daisy[misc->current].xml_file = realloc
+ (daisy[misc->current].xml_file, strlen
+ (misc->daisy_mp) + strlen (my_attribute->src) + 5);
+ get_realpath_name (misc->daisy_mp,
+ convert_URL_name (misc, my_attribute->src),
+ daisy[misc->current].xml_file);
+ break;
+ } // if
+ } // while
+ xmlTextReaderClose (content);
+ xmlFreeDoc (doc);
+ if (misc->verbose)
+ {
+ printf (". ");
+ fflush (stdout);
+ } // if
+ misc->current++;
+ if (misc->current >= misc->total_items)
+ break;
+ break;
+ } // if (strcasecmp (misc->tag, "content") == 0)
+ } // while
+ } // if (strcasecmp (misc->tag, "navpoint") == 0)
+ } // while
+ misc->total_items = misc->current;
+} // fill_smil_anchor_ncx
+
+void parse_content_ncx (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy)
+{
+ htmlDocPtr doc;
+ xmlTextReaderPtr content;
+
+#ifdef DAISY_PLAYER
+ daisy[misc->current].clips_file = realloc (daisy[misc->current].clips_file,
+ strlen (misc->daisy_mp) + strlen (my_attribute->src) + 5);
+ sprintf (daisy[misc->current].clips_file, "%s/%s",
+ misc->daisy_mp, my_attribute->src);
+ if (strchr (daisy[misc->current].clips_file, '#'))
+ {
+ free (daisy[misc->current].clips_anchor);
+ daisy[misc->current].clips_anchor =
+ strdup (strchr (daisy[misc->current].clips_file, '#') + 1);
+ *strchr (daisy[misc->current].clips_file, '#') = 0;
+ } // if
+ daisy[misc->current].clips_file =
+ strdup (convert_URL_name (misc, daisy[misc->current].clips_file));
+ if (! (doc = htmlParseFile (daisy[misc->current].clips_file, "UTF-8")))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+#endif
+#ifdef EBOOK_SPEAKER
+ if (! (doc = htmlParseFile (daisy[misc->current].smil_file, "UTF-8")))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+#endif
+ if (! (content = xmlReaderWalker (doc)))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+
+ if (*daisy[misc->current].smil_anchor)
+ {
+// look for it
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, content))
+ break;
+ if (*my_attribute->id)
+ {
+ if (strcasecmp (my_attribute->id,
+ daisy[misc->current].smil_anchor) == 0)
+ {
+ break;
+ } // if
+ } // if
+ } // while
+ } // if
+
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, content))
+ break;
+#ifdef DAISY_PLAYER
+ if (*my_attribute->id)
+ {
+ if (! *daisy[misc->current].first_id)
+ strncpy (daisy[misc->current].first_id, my_attribute->id,
+ MAX_STR);
+ } // if
+ if (strcasecmp (misc->tag, "audio") == 0)
+ break;
+#endif
+#ifdef EBOOK_SPEAKER
+ if (strcasecmp (misc->tag, "text") == 0)
+ break;
+#endif
+ if (misc->current + 1 < misc->total_items)
+ {
+ if (*daisy[misc->current + 1].smil_anchor)
+ {
+ if (strcasecmp (my_attribute->id,
+ daisy[misc->current + 1].smil_anchor) == 0)
+ {
+ break;
+ } // if
+ } // if
+ } // if
+ } // while
+ xmlTextReaderClose (content);
+ xmlFreeDoc (doc);
+} // parse_content_ncx
+
+void parse_ncx (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy)
+{
+ htmlDocPtr doc;
+ xmlTextReaderPtr ncx;
+ int i;
+
+ if (misc->items_in_ncx == 0)
+ failure (misc, gettext ("No items found. Try option \"-O\"."), errno);
+
+ misc->total_items = misc->items_in_ncx;
+ if (misc->total_items == 0)
+ misc->total_items = 1;
+#ifdef DAISY_PLAYER
+ for (i = 0; i < misc->items_in_ncx; i++)
+ *daisy[i].first_id = 0;
+#endif
+ fill_smil_anchor_ncx (misc, my_attribute, daisy);
+ if (! (doc = htmlParseFile (misc->ncx_name, "UTF-8")))
+ {
+ misc->ncx_failed = 1;
+ return;
+ } // if
+ ncx = xmlReaderWalker (doc);
+ misc->current = misc->displaying = 0;
+ misc->level = misc->depth = 0;
+ daisy[misc->current].x = 0;
+ if (misc->verbose)
+ {
+ printf ("\n");
+ fflush (stdout);
+ } // if
+ while (1)
+ {
+ if (misc->current >= misc->total_items)
+ break;
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+#ifdef DAISY_PLAYER
+ if (! *daisy[misc->current].first_id)
+ {
+ if (*my_attribute->id)
+ strncpy (daisy[misc->current].first_id, my_attribute->id,
+ MAX_STR);
+ } // if
+#endif
+ if (strcasecmp (misc->tag, "docAuthor") == 0)
+ {
+ if (xmlTextReaderIsEmptyElement (ncx))
+ continue;
+ do
+ {
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+ } while (strcasecmp (misc->tag, "/docAuthor") != 0);
+ } // if (strcasecmp (misc->tag, "docAuthor") == 0)
+ if (strcasecmp (misc->tag, "navpoint") == 0)
+ {
+ misc->level++;
+ if (misc->level > misc->depth)
+ misc->depth = misc->level;
+#ifdef EBOOK_SPEAKER
+ strncpy (daisy[misc->current].my_class, my_attribute->my_class,
+ MAX_STR - 1);
+#endif
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+ if (strcasecmp (misc->tag, "text") == 0)
+ {
+ *daisy[misc->current].label = 0;
+ if (xmlTextReaderIsEmptyElement (ncx))
+ continue;
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, ncx))
+ break;
+ if (strcasecmp (misc->tag, "/text") == 0)
+ break;
+ if (*misc->label)
+ {
+ strncpy (daisy[misc->current].label, misc->label,
+ 75 - strlen (daisy[misc->current].label));
+ if (misc->verbose)
+ {
+ printf ("\n\r%d %s ", misc->current + 1,
+ daisy[misc->current].label);
+ fflush (stdout);
+ } // if
+ break;
+ } // if
+ } // while
+ } // if (strcasecmp (misc->tag, "text") == 0)
+ if (strcasecmp (misc->tag, "content") == 0)
+ {
+ parse_content_ncx (misc, my_attribute, daisy);
+ daisy[misc->current].level = misc->level;
+ daisy[misc->current].x = daisy[misc->current].level * 3 - 1;
+ daisy[misc->current].screen = misc->current / misc->max_y;
+ daisy[misc->current].y =
+ misc->current - (daisy[misc->current].screen * misc->max_y);
+ misc->current++;
+ break;
+ } // if (strcasecmp (misc->tag, "content") == 0)
+ } // while
+ } // if (strcasecmp (misc->tag, "navpoint") == 0)
+ if (strcasecmp (misc->tag, "/navpoint") == 0)
+ misc->level--;
+ } // while
+ if (misc->verbose)
+ printf ("\n\n");
+ xmlTextReaderClose (ncx);
+ xmlFreeDoc (doc);
+ misc->total_items = misc->current;
+
+ for (i = 0; i < misc->items_in_ncx; i++)
+ {
+#ifdef EBOOK_SPEAKER
+ *daisy[i].class = 0;
+ if (misc->verbose)
+ {
+ printf ("\r\norig %d %s ", i, daisy[i].smil_file);
+ fflush (stdout);
+ } // if
+#endif
+ } //for
+} // parse_ncx
diff --git a/src/opf.c b/src/opf.c
new file mode 100644
index 0000000..207f421
--- /dev/null
+++ b/src/opf.c
@@ -0,0 +1,439 @@
+/* daisy3.c - functions to insert daisy3 info into a struct. (opf)
+ *
+ * Copyright (C) 2019 J. Lemmens
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+ * Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include "daisy.h"
+
+void get_label_opf (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy, int i)
+{
+ htmlDocPtr doc;
+ xmlTextReaderPtr xml;
+ int remainder;
+
+ if (! (doc = htmlParseFile (daisy[i].xml_file, "UTF-8")))
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+ if (! (xml = xmlReaderWalker (doc)))
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+
+ daisy[i].level = 1;
+ if (*daisy[i].xml_anchor)
+ {
+// skip to it
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, xml))
+ break;
+ if (strcasecmp (my_attribute->id, daisy[i].xml_anchor) == 0)
+ {
+ break;
+ } // if
+ } // while
+ } // if anchor
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, xml))
+ break;
+ if (strcasecmp (misc->tag, "head") == 0)
+ {
+ do
+ {
+ if (! get_tag_or_label (misc, my_attribute, xml))
+ break;
+ } while (strcasecmp (misc->tag, "/head") != 0);
+ } // if
+ if (*my_attribute->id)
+ {
+ if (*daisy[i].first_id == 0)
+ {
+ strncpy (daisy[i].first_id, my_attribute->id, MAX_STR);
+ } // if
+ } // if
+ if (strcasecmp (misc->tag, "text") == 0)
+ {
+ xmlTextReaderClose (xml);
+ xmlFreeDoc (doc);
+ return;
+ } // if text
+
+// some EPUB use this
+ if (strcasecmp (misc->tag, "i") == 0)
+ {
+ if (misc->verbose)
+ {
+ printf ("\n\r%d ", misc->current + 1);
+ fflush (stdout);
+ } // if
+ misc->current--;
+ xmlTextReaderClose (xml);
+ xmlFreeDoc (doc);
+ return;
+ } // if
+
+// or
+ if (strcasecmp (misc->tag, "title") == 0 ||
+ strcasecmp (misc->tag, "h1") == 0 ||
+ strcasecmp (misc->tag, "h2") == 0 ||
+ strcasecmp (misc->tag, "h3") == 0 ||
+ strcasecmp (misc->tag, "h4") == 0 ||
+ strcasecmp (misc->tag, "h5") == 0 ||
+ strcasecmp (misc->tag, "h6") == 0)
+ {
+ if (strcasecmp (misc->tag, "title") == 0)
+ daisy[i].level = 1;
+ else
+ daisy[i].level = misc->tag[1] - 48;
+ if (daisy[i].level > misc->depth)
+ misc->depth = daisy[i].level;
+ daisy[i].x = daisy[i].level * 3 - 1;
+ if (xmlTextReaderIsEmptyElement (xml))
+ {
+ sprintf (daisy[misc->current].label, "%d", misc->current + 1);
+ if (misc->verbose)
+ {
+ printf ("\n\r%d %s ", misc->current + 1,
+ daisy[misc->current].label);
+ fflush (stdout);
+ } // if
+ return;
+ } // if IsEmpty
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, xml))
+ break;
+ if (*misc->label)
+ {
+ remainder = 75 - strlen (daisy[i].label);
+ if (remainder > 0)
+ {
+ strncat (daisy[i].label, misc->label, remainder);
+ strcat (daisy[i].label, " ");
+ if (misc->verbose)
+ {
+ printf ("\n\r%d %s ", misc->current + 1,
+ daisy[misc->current].label);
+ fflush (stdout);
+ } // if
+ } // if
+ break;
+ } // if
+ if (strcasecmp (misc->tag, "/h1") == 0 ||
+ strcasecmp (misc->tag, "/h2") == 0 ||
+ strcasecmp (misc->tag, "/h3") == 0 ||
+ strcasecmp (misc->tag, "/h4") == 0 ||
+ strcasecmp (misc->tag, "/h5") == 0 ||
+ strcasecmp (misc->tag, "/h6") == 0 ||
+ strcasecmp (misc->tag, "/title") == 0)
+ {
+ break;
+ } // if
+ } // while
+ daisy[i].x = daisy[i].level * 3 - 1;
+ daisy[i].screen = i / misc->max_y;
+ daisy[i].y = i - (daisy[i].screen * misc->max_y);
+ xmlTextReaderClose (xml);
+ xmlFreeDoc (doc);
+ return;
+ } // if (strcasecmp (misc->tag, "h1") == 0 ||
+
+// others use this
+ if (strcasecmp (my_attribute->class, "h1") == 0 ||
+ strcasecmp (my_attribute->class, "h2") == 0 ||
+ strcasecmp (my_attribute->class, "h3") == 0 ||
+ strcasecmp (my_attribute->class, "h4") == 0 ||
+ strcasecmp (my_attribute->class, "h5") == 0 ||
+ strcasecmp (my_attribute->class, "h6") == 0)
+ {
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, xml))
+ break;
+ if (strcasecmp (misc->tag, "text") == 0)
+ {
+ xmlTextReaderClose (xml);
+ xmlFreeDoc (doc);
+ return;
+ } // if
+ } // while
+ xmlTextReaderClose (xml);
+ xmlFreeDoc (doc);
+ return;
+ } // if (strcasecmp (my_attribute->class, "h1") == 0 ||
+ } // while
+ xmlTextReaderClose (xml);
+ xmlFreeDoc (doc);
+} // get_label_opf
+
+void parse_smil_opf (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy, int i)
+{
+ xmlTextReaderPtr smil;
+
+ if (! (smil = xmlNewTextReaderFilename (daisy[i].smil_file)))
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, smil))
+ break;
+ if (*my_attribute->id)
+ {
+ strncpy (daisy[i].first_id, my_attribute->id, MAX_STR);
+ } // if
+ if (strcasecmp (misc->tag, "audio") == 0)
+ {
+ if (! *daisy[i].clips_file)
+ daisy[i].clips_file = strdup (daisy[i].smil_file);
+ } // if
+ } // while
+ xmlTextReaderClose (smil);
+} // parse_smil_opf
+
+void parse_spine (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
+{
+// find the spine element
+ htmlDocPtr doc;
+ xmlTextReaderPtr opf;
+
+ if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+ if ((opf = xmlReaderWalker (doc)) == NULL)
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+
+ misc->depth = misc->current = 0;
+ do
+ {
+ if (! get_tag_or_label (misc, my_attribute, opf))
+ {
+ xmlTextReaderClose (opf);
+ xmlFreeDoc (doc);
+ return;
+ } // if
+ } while (strcasecmp (misc->tag, "spine"));
+ do
+ {
+ if (! get_tag_or_label (misc, my_attribute, opf))
+ break;
+ if (strcasecmp (misc->tag, "itemref") == 0)
+ {
+ xmlTextReaderPtr ptr;
+ char *idref;
+
+ idref = strdup (my_attribute->idref);
+ ptr = xmlNewTextReaderFilename (misc->opf_name);
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, ptr))
+ break;
+ if (strcasecmp (misc->tag, "item") == 0 &&
+ strcasecmp (my_attribute->id, idref) == 0)
+ {
+ if (misc->verbose)
+ {
+ printf (" .");
+ fflush (stdout);
+ } // if
+ free (daisy[misc->current].xml_file);
+ daisy[misc->current].xml_file = strdup ("");
+ free (daisy[misc->current].xml_anchor);
+ daisy[misc->current].xml_anchor = strdup ("");
+ free (daisy[misc->current].smil_file);
+ daisy[misc->current].smil_file = strdup ("");
+ free (daisy[misc->current].smil_anchor);
+ daisy[misc->current].smil_anchor = strdup ("");
+ daisy[misc->current].x = 0;
+ *daisy[misc->current].label = 0;
+ daisy[misc->current].page_number = 0;
+ if (strcasestr (my_attribute->media_type, "xml"))
+ {
+ daisy[misc->current].xml_file = malloc (strlen
+ (misc->daisy_mp) + strlen (my_attribute->href) + 5);
+ get_realpath_name (misc->daisy_mp,
+ convert_URL_name (misc, my_attribute->href),
+ daisy[misc->current].xml_file);
+ } // if media_type, "xml"
+
+ if (strcasestr (my_attribute->media_type, "smil"))
+ {
+ xmlTextReaderPtr smil;
+
+ daisy[misc->current].smil_file = malloc (strlen
+ (misc->daisy_mp) + strlen (my_attribute->href) + 5);
+ get_realpath_name (misc->daisy_mp,
+ convert_URL_name (misc, my_attribute->href),
+ daisy[misc->current].smil_file);
+ smil = xmlNewTextReaderFilename
+ (daisy[misc->current].smil_file);
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, smil))
+ break;
+ if (strcasecmp (misc->tag, "text") == 0)
+ {
+ if (strchr (my_attribute->src, '#'))
+ {
+ if (! *daisy[misc->current].first_id)
+ {
+ daisy[misc->current].xml_anchor =
+ strdup (strchr (my_attribute->src, '#') + 1);
+ strcpy (daisy[misc->current].first_id,
+ daisy[misc->current].xml_anchor);
+ } // if
+ strcpy (daisy[misc->current].last_id,
+ strchr (my_attribute->src, '#') + 1);
+ *strchr (my_attribute->src, '#') = 0;
+ } // if
+ daisy[misc->current].xml_file = malloc
+ (strlen (misc->daisy_mp) +
+ strlen (my_attribute->src) + 5);
+ get_realpath_name (misc->daisy_mp, convert_URL_name
+ (misc, my_attribute->src),
+ daisy[misc->current].xml_file);
+ } // if
+ } // while
+ xmlTextReaderClose (smil);
+ } // if media_type, "smil"
+ get_label_opf (misc, my_attribute, daisy, misc->current);
+ daisy[misc->current].x = daisy[misc->current].level * 3 - 1;
+ if (daisy[misc->current].level > misc->depth)
+ misc->depth = daisy[misc->current].level;
+ misc->current++;
+ } // if
+ } // while
+ xmlTextReaderClose (ptr);
+ } // if itemref
+ } while (strcasecmp (misc->tag, "/spine"));
+ misc->items_in_opf = misc->total_items = misc->current;
+ xmlTextReaderClose (opf);
+ xmlFreeDoc (doc);
+} // parse_spine
+
+void fill_smil_anchor_opf (misc_t *misc, my_attribute_t *my_attribute,
+ daisy_t *daisy)
+{
+// first of all fill daisy struct smil_file and anchor
+ misc->depth = misc->current = 0;
+ if (misc->verbose)
+ printf ("\n\rParsing spine");
+ parse_spine (misc, my_attribute, daisy);
+ if (misc->verbose)
+ printf ("\r\n");
+ misc->total_items = misc->current;
+
+ if (*daisy[0].smil_file == 0)
+ {
+// if there is still no smil_file
+ htmlDocPtr doc;
+ xmlTextReaderPtr opf;
+
+ if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+ if ((opf = xmlReaderWalker (doc)) == NULL)
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+
+ if (misc->verbose)
+ {
+ printf ("\n\rFilling SMIL");
+ fflush (stdout);
+ } // if
+
+ misc->current = 0;
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, opf))
+ break;
+ if (strcasestr (my_attribute->media_type, "application/smil"))
+ {
+ daisy[misc->current].smil_file = malloc (strlen
+ (misc->daisy_mp) + strlen (my_attribute->href) + 5);
+ get_realpath_name (misc->daisy_mp,
+ convert_URL_name (misc, my_attribute->href),
+ daisy[misc->current].smil_file);
+ parse_smil_opf (misc, my_attribute, daisy, misc->current);
+ misc->current++;
+ } // if
+ } // while
+ xmlTextReaderClose (opf);
+ xmlFreeDoc (doc);
+ } // if still no smil
+} // fill_smil_anchor_opf
+
+void parse_opf (misc_t *misc, my_attribute_t *my_attribute, daisy_t *daisy)
+{
+ htmlDocPtr doc;
+ xmlTextReaderPtr opf;
+
+ if (misc->use_OPF == 0 && misc->items_in_opf == 0)
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+
+ misc->total_items = misc->items_in_opf;
+ if (misc->total_items == 0)
+ misc->total_items = 1;
+ if (! (doc = htmlParseFile (misc->opf_name, "UTF-8")))
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+ if ((opf = xmlReaderWalker (doc)) == NULL)
+ {
+ misc->opf_failed = 1;
+ return;
+ } // if
+
+ while (1)
+ {
+ if (! get_tag_or_label (misc, my_attribute, opf))
+ break;
+ if (misc->use_OPF == 0 &&
+ strcasestr (my_attribute->media_type, "application/x-dtbncx") &&
+ misc->items_in_ncx > 1)
+ {
+// first look if there is a reference to "application/x-dtbncx+xml"
+ xmlTextReaderClose (opf);
+ xmlFreeDoc (doc);
+ parse_ncx (misc, my_attribute, daisy);
+ return;
+ } // if
+ } // while
+ xmlTextReaderClose (opf);
+
+ fill_smil_anchor_opf (misc, my_attribute, daisy);
+} // parse_opf
diff --git a/src/pactl/m4/Makefile b/src/pactl/m4/Makefile
index 30b316a..fbf4be4 100644
--- a/src/pactl/m4/Makefile
+++ b/src/pactl/m4/Makefile
@@ -119,12 +119,12 @@ am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/mkinstalldirs \
ChangeLog
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-ACLOCAL = ${SHELL} /home/jos/src/own_stuff/eBook-speaker/src/pactl/missing aclocal-1.15
+ACLOCAL = ${SHELL} /home/jos/src/own_stuff/daisy-player/src/pactl/missing aclocal-1.15
AMTAR = $${TAR-tar}
AM_DEFAULT_VERBOSITY = 0
-AUTOCONF = ${SHELL} /home/jos/src/own_stuff/eBook-speaker/src/pactl/missing autoconf
-AUTOHEADER = ${SHELL} /home/jos/src/own_stuff/eBook-speaker/src/pactl/missing autoheader
-AUTOMAKE = ${SHELL} /home/jos/src/own_stuff/eBook-speaker/src/pactl/missing automake-1.15
+AUTOCONF = ${SHELL} /home/jos/src/own_stuff/daisy-player/src/pactl/missing autoconf
+AUTOHEADER = ${SHELL} /home/jos/src/own_stuff/daisy-player/src/pactl/missing autoheader
+AUTOMAKE = ${SHELL} /home/jos/src/own_stuff/daisy-player/src/pactl/missing automake-1.15
AWK = gawk
CC = gcc
CCDEPMODE = depmode=gcc3
@@ -149,7 +149,7 @@ LDFLAGS =
LIBOBJS =
LIBS = -lsndfile -lpulse -lg -lc
LTLIBOBJS =
-MAKEINFO = ${SHELL} /home/jos/src/own_stuff/eBook-speaker/src/pactl/missing makeinfo
+MAKEINFO = ${SHELL} /home/jos/src/own_stuff/daisy-player/src/pactl/missing makeinfo
MKDIR_P = /bin/mkdir -p
OBJEXT = o
PACKAGE = pactl-set-volume
@@ -162,13 +162,13 @@ PACKAGE_VERSION = 1.0
PATH_SEPARATOR = :
POW_LIB =
SET_MAKE =
-SHELL = /bin/bash
+SHELL = /bin/sh
STRIP =
VERSION = 1.0
-abs_builddir = /home/jos/src/own_stuff/eBook-speaker/src/pactl/m4
-abs_srcdir = /home/jos/src/own_stuff/eBook-speaker/src/pactl/m4
-abs_top_builddir = /home/jos/src/own_stuff/eBook-speaker/src/pactl
-abs_top_srcdir = /home/jos/src/own_stuff/eBook-speaker/src/pactl
+abs_builddir = /home/jos/src/own_stuff/daisy-player/src/pactl/m4
+abs_srcdir = /home/jos/src/own_stuff/daisy-player/src/pactl/m4
+abs_top_builddir = /home/jos/src/own_stuff/daisy-player/src/pactl
+abs_top_srcdir = /home/jos/src/own_stuff/daisy-player/src/pactl
ac_ct_CC = gcc
am__include = include
am__leading_dot = .
@@ -195,7 +195,7 @@ host_vendor = pc
htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
-install_sh = ${SHELL} /home/jos/src/own_stuff/eBook-speaker/src/pactl/install-sh
+install_sh = ${SHELL} /home/jos/src/own_stuff/daisy-player/src/pactl/install-sh
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
diff --git a/src/pactl/src/core-util.c b/src/pactl/src/core-util.c
index 17648fa..a23de21 100644
--- a/src/pactl/src/core-util.c
+++ b/src/pactl/src/core-util.c
@@ -104,12 +104,12 @@ int pa_parse_volume (const char *v, pa_volume_t *volume)
pa_assert(v);
pa_assert(volume);
- len = strlen(v);
+ len = (int) strlen(v);
if (len >= 64)
return -1;
- memcpy(str, v, len + 1);
+ memcpy(str, v, (size_t) len + 1);
if (str[len - 1] == '%') {
str[len - 1] = '\0';
@@ -121,7 +121,7 @@ int pa_parse_volume (const char *v, pa_volume_t *volume)
if (d < 0 || d > PA_VOLUME_MAX)
return -1;
- *volume = d;
+ *volume = (pa_volume_t) d;
return 0;
}
diff --git a/src/paranoia.c b/src/paranoia.c
index 141f7c2..deaa4bc 100644
--- a/src/paranoia.c
+++ b/src/paranoia.c
@@ -62,21 +62,23 @@ void init_paranoia (misc_t *misc)
pid_t play_track (misc_t *misc, char *out_file, char *type,
lsn_t from)
-{
+{
init_paranoia (misc);
+
switch (misc->cdda_pid = fork ())
{
case 0: /* Child reads from pipe */
{
char path[MAX_STR + 1];
+ reset_term_signal_handlers_after_fork ();
close (misc->pipefd[1]); /* don't need this in child */
#ifdef F_SETPIPE_SZ
fcntl (misc->pipefd[0], F_SETPIPE_SZ, 1024000);
#endif
snprintf (path, MAX_STR, "/dev/fd/%d", misc->pipefd[0]);
snprintf (misc->str, MAX_STR, "%f", misc->speed);
- playfile (path, "cdda", out_file, type, misc->str);
+ playfile (misc, path, "cdda", out_file, type, misc->str);
close (misc->pipefd[0]);
_exit (0);
}
diff --git a/src/playfile.c b/src/playfile.c
index 54350ad..0941430 100644
--- a/src/playfile.c
+++ b/src/playfile.c
@@ -1,6 +1,6 @@
/* playfile.c - plays the audio using the sox library.
*
- * Copyright (C)2003-2018 J. Lemmens
+ * Copyright (C)2003-2019 J. Lemmens
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
@@ -62,7 +62,7 @@ static sox_effect_handler_t const *output_effect_fn (void)
return &handler;
} // output_effect_fn
-void playfile (char *in_file, char *in_type,
+void playfile (misc_t *misc, char *in_file, char *in_type,
char *out_file, char *out_type, char *tempo)
{
sox_format_t *in, *out; /* input and output files */
@@ -77,9 +77,11 @@ void playfile (char *in_file, char *in_type,
in = sox_open_read (in_file, NULL, NULL, in_type);
if (strcasecmp (in_type, "cdda") == 0)
in->encoding.reverse_bytes = 0;
- out = sox_open_write (out_file, &in->signal, NULL, out_type,
- NULL, NULL);
-
+ if (! (out = sox_open_write (out_file, &in->signal, NULL, out_type,
+ NULL, NULL)))
+ {
+ failure (misc, out_file, errno);
+ } // if
chain = sox_create_effects_chain(&in->encoding, &out->encoding);
interm_signal = in->signal; /* NB: deep copy */